Re: buildfarm windows checks / tap tests on windows

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: Andres Freund <andres@anarazel.de>
Cc: Michael Paquier <michael@paquier.xyz>, pgsql-hackers@postgresql.org
Date: 2021-03-03T22:32:29Z
Lists: pgsql-hackers
On 3/3/21 4:42 PM, Andres Freund wrote:
> Hi,
>
> On 2021-03-03 16:07:13 -0500, Andrew Dunstan wrote:
>> Here's what I actually got working. Rip out the calls to kill_kill and
>> replace them with:
>>
>>
>>     $psql_primary{stdin} .= "\\q\n";
>>     $psql_primary{run}->pump_nb();
>>     $psql_standby{stdin} .= "\\q\n";
>>     $psql_standby{run}->pump_nb();
>>     sleep 2; # give them time to quit
>>
>>
>> No hang or signal now.
> Hm. I wonder if we can avoid the sleep 2 by doing something like
> ->pump(); ->finish(); instead of one pump_nb()? One pump() is needed to
> send the \q to psql, and then we need to wait for the process to finish?
> I'll try that, but given that I can't reproduce any problems...


Looking at the examples in the IPC:Run docco, it looks like we might
just be able to replace the pump_nb above with finish, and leave the
sleep out. I'll try that.


>
> I suspect that at least the crash recovery test suffers from exactly the
> same problem and that we can re-enable it on windows after doign an
> equivalent change...
>

Yes, possibly - it would be good to remove those skips.


cheers


andrew

--
Andrew Dunstan
EDB: https://www.enterprisedb.com




Commits

  1. Close psql processes gracefully in recovery tests

  2. Fix recovery test hang in 021_row_visibility.pl on windows.