Re: BUG #16154: pg_ctl restart with a logfile fails sometimes (on Windows)

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Alexander Lakhin <exclusion@gmail.com>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2019-12-06T15:14:16Z
Lists: pgsql-bugs
Alexander Lakhin <exclusion@gmail.com> writes:
> If this file is still opened by the previous server shell (it can happen
> when the previous server instance has unlinked it's pid file, but it's
> CMD shell is still running), the next CMD start fails with the
> aforementioned error message.

Interesting.  I wonder whether this explains all of the remaining
buildfarm failures of this sort that we've been seeing even after
0ba06e0bf.

> To fix this issue I propose the attached patch
> (fix_logfile_sharing_violation ).

This seems like a pretty ugly hack ... please at least make it
#ifdef WIN32, so that the rest of us don't have to deal with it.
Also, if I read it correctly, it causes a pre-existing logfile
to get truncated, which has never happened before.  Mode "a"
would be a better choice.

			regards, tom lane



Commits

  1. In pg_ctl, work around ERROR_SHARING_VIOLATION on the postmaster log file.