From: | Robert Hiltibidal <morgan(at)springpatch(dot)com> |
---|---|
To: | Ralf Berger <Ralf(dot)Berger(at)ipk(dot)fhg(dot)de>, Michael Richards <miker(at)scifair(dot)acadiau(dot)ca> |
Cc: | questions(at)postgreSQL(dot)org, hackers(at)postgreSQL(dot)org |
Subject: | Re: [QUESTIONS] Postgres still dying on insert |
Date: | 1998-04-28 12:15:53 |
Message-ID: | 3.0.3.32.19980428071553.00ac9100@springpatch.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Howdy,
I just moved our existing customer database from 6.2.1 to 6.3.2. I couldn't
get the pg_dump command to work right so I made the following script.
The end result was I made over 8000 insertions in under an hour without a
failure. A random sampling of different areas shows the records made it
over intact.
I had problems with 6.3.1 but 6.3.2 seems to be ok.. My big wish list is
for access97 to seamlessly work with it....
-Rob
NOTE: This mess was a quick hack job with no commenting... took me about 5
minutes to make. IF only I could code C++ that fast... Anyway just type
datawarez.pl <filename>
where <filename> is the name of the table.
The file is generated from an earlier version of Postgres using \o
<filename> and then a select * from <filename>; at the command prompt.
This perl script does single line queries only. No Transactions.
-r
#! /usr/bin/perl
#
# PROGRAM: DATAWAREZ.PL DATE: 28-APR-98
# CREATOR: ROBERT HILTIBIDAL
#
# PURPOSE: DATAWAREZ,PL takes the data file from the command line and
# then outouts each line as a queruy to the database
# Get the filename
$file = $ARGV[0];
# Set the count variable
$count = 0;
# Start the mess
open(sql,"$file");
while (<sql>) {
if ($count == 0) {
@fields = split(/\|/,$_);
$fields[$#fields] =~ s/\n//g;
}
else {
@data = split(/\|/,$_);
$data[$#data] =~ s/\n//g;
$data[$#data] =~ s/\r//g;
$data[$#data] =~ s/\f//g;
}
$count++;
if ($count > 1) {
$query = "Insert into $file (";
$fieldcount =0;
foreach $element (@fields) {
if ($fieldcount == $#fields) {
$query .= "$element)";
}
else {
$query .= "$element,";
}
$fieldcount++;
}
$query .= " VALUES (";
$datcount = 0;
foreach $element (@data) {
if ($datcount == $#data) {
$query .= "\'$element\');";
}
else {
$query .= "\'$element\',";
}
$datcount++;
}
print "$query \n\n";
@results = `/usr/local/pgsql/bin/psql -t -A -q -d YOURDB -c "$query"`;
print @results,"\n\n";
}
}
close sql;
At 11:30 AM 4/28/98 +0200, Ralf Berger wrote:
>Hello,
>
>I've a very similiar problem with postgres 6.3.1.
>The postmaster dies with no comment on insertion on my Linux 2.0.33
>96MB box, when I whant to create a new user. (I've postet the problem
>with no response.)
>I've track it down to an insert to pg_user.
>
>Because of my lack of time I downgrate to 6.2.1, and all whent well.
>
>I assume the cause is in my limited disk-place (about 30MB on the
>disk where the database reside).
>
>I have not testet 6.3.2.
>
> Ralf
>
>--
>Fraunhofer IPK
>Dipl.-Inform. Ralf Berger
>Pascalstr. 8-9
>10587 Berlin
>
>Tel.: ++49-(0)30 390 06 129
>Fax.: ++49-(0)30 391 10 37
>
>---
>
>In anything at all, perfection is finally attained not when
>there is no longer anything to add, but when there is
>no longer anything to take away.
>
>Antoine de Saint Exupery
>--
>Official WWW Site: http://www.postgresql.org
>Online Docs & FAQ: http://www.postgresql.org/docs
>Searchable Lists: http://www.postgresql.org/mhonarc
>
>
##########################################################
Robert Hiltibidal Office 217-544-2775
Systems Programmer Fax 217-527-3550
FGInet, Inc
rob(at)fgi(dot)net
morgan(at)springpatch(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | The Hermit Hacker | 1998-04-28 12:35:29 | Re: [HACKERS] Re: User names cannot contain `-' |
Previous Message | Oliver Elphick | 1998-04-28 10:10:00 | Patch for NOTICE messages to PQfn() from backend |