On Fri, 3 Jan 2003, Tom Lane wrote:
> Note also that under most circumstances, a stale postmaster.pid file
> should not prevent the postmaster from starting (because it will ignore
> the old .pid file if it can see that there is no process with that PID
> alive anymore). The case where you lose is only when there is another
> process running that by chance has the same PID that was assigned to the
> old postmaster on the system's previous uptime cycle. The postmaster
> can't tell that such a process isn't really a conflicting postmaster,
> so it gives up for safety's sake.
This is a situation which I've often wondered about, for other scripts,
not PostgreSQL. I've not found a happy solution yet.