How to use postgres 7.0.3 with -F?
Hi,
someone gave me the tip to use the -F-flag to improve performance. Since
I can't run the postmaster with -F but just postgres how do I do it, if I
want to import a big amount of data?
Konstantin
--
Dipl-Inf. Konstantin Agouros aka Elwood Blues. Internet: elwood@agouros.de
Otkerstr. 28, 81547 Muenchen, Germany. Tel +49 89 69370185
----------------------------------------------------------------------------
"Captain, this ship will not sustain the forming of the cosmos." B'Elana Torres
elwood@agouros.de (Konstantinos Agouros) writes:
someone gave me the tip to use the -F-flag to improve performance. Since
I can't run the postmaster with -F but just postgres how do I do it, if I
want to import a big amount of data?
In 7.0.* (but not prior versions) it is safe to run individual backends
with -F; other backends will still fsync their changes. So, you can
start a backend that's going to do an import with
export PGOPTIONS="-F"
psql mydb
....
(adjust 'export' command syntax depending on your preferred shell.)
libpq passes the value of the environment variable PGOPTIONS over to the
backend, and away you go. -dN (debug level) is another backend command-
line switch commonly set this way.
regards, tom lane
In <12492.982346115@sss.pgh.pa.us> tgl@sss.pgh.pa.us (Tom Lane) writes:
elwood@agouros.de (Konstantinos Agouros) writes:
someone gave me the tip to use the -F-flag to improve performance. Since
I can't run the postmaster with -F but just postgres how do I do it, if I
want to import a big amount of data?
In 7.0.* (but not prior versions) it is safe to run individual backends
with -F; other backends will still fsync their changes. So, you can
start a backend that's going to do an import with
export PGOPTIONS="-F"
psql mydb
....
(adjust 'export' command syntax depending on your preferred shell.)
libpq passes the value of the environment variable PGOPTIONS over to the
backend, and away you go. -dN (debug level) is another backend command-
line switch commonly set this way.
Ahhhh Ohhhh thanks for the help I was confused. Does this also work that way, if
I use it from DBI::Pg from perl? Like setting $ENV{'PGOPTIONS'}
Konstantin
regards, tom lane
--
Dipl-Inf. Konstantin Agouros aka Elwood Blues. Internet: elwood@agouros.de
Otkerstr. 28, 81547 Muenchen, Germany. Tel +49 89 69370185
----------------------------------------------------------------------------
"Captain, this ship will not sustain the forming of the cosmos." B'Elana Torres
elwood@agouros.de (Konstantinos Agouros) writes:
export PGOPTIONS="-F"
psql mydb
Ahhhh Ohhhh thanks for the help I was confused. Does this also work
that way, if I use it from DBI::Pg from perl? Like setting
$ENV{'PGOPTIONS'}
Yeah, I think that should work if you do it before opening a connection,
but a more straightforward way is to set options=-F in the
DBI->connect() command ...
regards, tom lane
Tom Lane <tgl@sss.pgh.pa.us> writes:
elwood@agouros.de (Konstantinos Agouros) writes:
export PGOPTIONS="-F"
psql mydbAhhhh Ohhhh thanks for the help I was confused. Does this also work
that way, if I use it from DBI::Pg from perl? Like setting
$ENV{'PGOPTIONS'}Yeah, I think that should work if you do it before opening a connection,
but a more straightforward way is to set options=-F in the
DBI->connect() command ...
I think Tom's suggestion is the way to go--I found a long time ago
that Perl only puts the %ENV hash into the environment when it's about
to call exec(). I was using DBD::Informix and found that my
INFORMIXDIR variable, set in the Perl script, was not making it
through to the Informix libraries (since no separate program was being
called). I had to run the Perl script from a wrapper shell script
that set INFORMIXDIR...
This may have been fixed by now, though, it was five years ago or so.
-Doug
Import Notes
Reply to msg id not found: TomLane'smessageofFri16Feb2001225624-0500