Re: Intermittent pg_ctl failures on Windows - Mailing list pgsql-hackers

From Жарков Роман
Subject Re: Intermittent pg_ctl failures on Windows
Date
Msg-id FE69ED0E-0232-406F-8712-16A92F55C53A@postgrespro.ru
Whole thread Raw
In response to Re: Intermittent pg_ctl failures on Windows  (Michael Paquier <michael@paquier.xyz>)
List pgsql-hackers
First time we found pg_ctl errors while testing our fork.
I reproduced them on REL_11_STABLE.
I found three problems with pg_ctl do_stop/do_restart:
1 - "old" fopen() function;
2 - "delete pending" problem rarely happens with "new" fopen() function when pg_ctl tries to open postmaster.pid file;
3 - cmd.exe shell may block the log file when the server restarts;

Now i try to reproduce it on REL_12_STABLE

regard, Roman

> 19 июля 2019 г., в 10:02, Michael Paquier <michael@paquier.xyz> написал(а):
>
>> On Thu, Jul 18, 2019 at 04:14:34PM +0700, Жарков Роман wrote:
>> I have tested clean REL_11_STABLE.
>> Commit f02259fe was reverted by df8b5f3e in this branch.
>> So pg_ctl uses “old” open() function.
>
> Yeah, that was a failure from me, so I tend to be rather very careful
> about anything related to Windows.  However, after that we have added
> 40cfe86 about which nobody has complained yet, and the number of
> buildfarm failures about pg_ctl concurrency on HEAD has gone down to
> zero since (perhaps I am missing something?).
>
> So, instead of trying to invent a new solution only for stable
> branches (which may have its own bugs we would need to deal with only
> on stable branches, and only for Windows), why don't we just try to
> move forward into back-patching those pieces?  Or it happens that we
> still have some potential failures on HEAD and REL_12_STABLE which
> would justify some extra handling?  In this case, I would recommend
> that we focus on HEAD as a first step, and put things in order there.
> --
> Michael




pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Intermittent pg_ctl failures on Windows
Next
From: "Matsumura, Ryo"
Date:
Subject: A suspicious code in PQconnectPoll()