The following bug has been logged online:
Bug reference: 4128
Logged by: Gary Jay Peters
Email address: email@example.com
PostgreSQL version: 8.3.1
Operating system: Linux/Debian
Description: The postmaster.opts.default file is begin ignored
1st, I already have a work-round, but I wanted to let someone know about the
2nd, we are installing from source code and compiling the application
The problem --
As I understand it, the only the "pg_ctl" command uses the
"postmaster.opts.default" file; it uses the arguments
within "postmaster.opts.default" when spawning the "postmaster" process.
In older versions (such as "7.4.2"), the file
"pg_ctl" (see variable "DAEMON") to start the "postmaster" process. Because
of this, the arguments within the "postmaster.opts.default" file are use.
In newer version (I am using "8.2.5", but "8.3.1" appears to handle it the
same way), the file "postgresql-X.X.X/contrib/start-scripts/linux" does not
use "pg_ctl" (see variable "PGCTL") to start the "postmaster" process.
Because of this, the arguments within the "postmaster.opts.default" file are
Quickly looking through the source code, I found that the only file to
reference "postmaster.opts.default" is
My work-around is to mutate the
"postgresql-X.X.X/contrib/start-scripts/linux" file adding a line
"DAEMON_START_ARGS=`[ -f $PGDATA/postmaster.opts.default ] && cat
$PGDATA/postmaster.opts.default`" and then changing each occurrence of
"$DAEMON -D '$PGDATA'" to
"$DAEMON $DAEMON_START_ARGS -D '$PGDATA'".
Lastly, to quote from the "postgresql-X.X.X/contrib/start-scripts/linux"
file, "What to use to start up the postmaster (we do NOT use pg_ctl for
this, as it adds no value and can cause the postmaster to misrecognize a
stale lock file)".
Gary Jay Peters
Database Management Services / HomeCU
(877) 670-2984 x 12