From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Alexander Law <exclusion(at)gmail(dot)com> |
Cc: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org> |
Subject: | Re: BUG #16154: pg_ctl restart with a logfile fails sometimes (on Windows) |
Date: | 2019-12-07 16:54:54 |
Message-ID: | 29331.1575737694@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Alexander Law <exclusion(at)gmail(dot)com> writes:
> What is the reason for the previous shell still accessing logfile?
> Is the reason that we don't close it before unlinking the pid file?
> We can't close the logfile, as it is opened by CMD, not by the postgres
> process. (Postmaster is started by the command "CMD.EXE /C postgres ...
>> logfile".) So it is closed by the CMD shell after the postgres process
> exits and the postgres can't control this (as a child process).
Hmm ... so if we were talking about Unix, a reasonable solution would
be to avoid having a separate shell process, either by telling the shell
to "exec" the postmaster or by using fork/exec directly with no shell.
A 99% solution would be to use "&" so that the shell doesn't wait around
for the postmaster to die.
Are any of those ideas tenable on Windows?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Alexander Law | 2019-12-07 18:00:00 | Re: BUG #16154: pg_ctl restart with a logfile fails sometimes (on Windows) |
Previous Message | Alexander Law | 2019-12-07 16:00:01 | Re: BUG #16154: pg_ctl restart with a logfile fails sometimes (on Windows) |