Re: postmaster -S will not print an error if pid file exists - Mailing list pgsql-hackers

From Tom Lane
Subject Re: postmaster -S will not print an error if pid file exists
Date
Msg-id 13060.980551379@sss.pgh.pa.us
Whole thread Raw
In response to postmaster -S will not print an error if pid file exists  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> writes:
> If a second postmaster is started on a data directory and the second one
> uses the -S option it will not print a message but simply exit and not
> start a background process.  The exit status is 0.

On closer inspection, it's clear that the postmaster *does* exit with
status 1 after failing to lock the lockfile.  However, since it's
already forked and detached from the terminal, you can't see the status
1; the parent process exited with status 0.  Postponing the fork till
after we grab the lockfile will not do, because then the lockfile will
contain the wrong postmaster PID.

I have stated before that I consider -S evil.  Don't complain too hard
about its behavior, or I'll fix it by ripping it out, lock stock and
barrel ;-)
        regards, tom lane


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Permissions on CHECKPOINT
Next
From: "Mikheev, Vadim"
Date:
Subject: RE: Permissions on CHECKPOINT