Bruce Momjian wrote:
> Bruce Momjian wrote:
> > Yes, that was my calculus too. I realized that we create session ids by
> > merging the process id and backend start time, so I went ahead and added
> > the postmaster start time epoch to the postmaster.pid file. While there
> > is no way to pass back the postmaster start time from PQping, I added
> > code to pg_ctl to make sure the time in the postmaster.pid file is not
> > _before_ pg_ctl started running. We only check PQping() after we have
> > started the postmaster ourselves, so it fits our needs.
>
> Tom suggested that there might be clock skew between pg_ctl and the
> postmaster, so I added a 2-second slop in checking the postmaster start
> time. Tom also wanted the connection information to be output all at
> once, but that causes a problem with detecting pre-9.1 servers so I
> avoided it.
Patch applied, and TODO item removed because patch mostly detects if a
stale postmaster created the postmaster.pid file. The TODO was:
Allow pg_ctl to work properly with configuration files located outsidethe PGDATA directory)
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://enterprisedb.com
+ It's impossible for everything to be true. +