> > > I have committed changes to postmaster.c. Now it creates a file called
> > > "postmaster.pid" under $PGDATA, which holds postmaster's process
> > > id. If the file has already existed, postmaster won't start. So we
> > > cannot start more than on postmaster with same $PGDATA any more. I
> > > believe it's a good thing. The file will be deleted upon postmaster
> > > shutting down.
> >
> > I assume you do a kill(0) on the pid if the file exists on startup to
> > check to see if the pid is still valid?
>
> A little bit different.
>
> 1) if the port is already in use, postmaster exits (same as before)
OK
> 2) if it fails to create pid file, call
> ExitPostmaster(1). ExitPostmaster calls proc_exit() and proc_exit
> calls exit().
So you don't start if the pid file is there, or do you delete it if the
port is free?
-- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026