Re: IPC::Run accepts bug reports
От | Andrew Dunstan |
---|---|
Тема | Re: IPC::Run accepts bug reports |
Дата | |
Msg-id | aafa0e47-22bb-420e-919a-95424364cf19@dunslane.net обсуждение исходный текст |
Ответ на | Re: IPC::Run accepts bug reports (Andres Freund <andres@anarazel.de>) |
Список | pgsql-hackers |
On 2024-06-18 Tu 3:00 PM, Andres Freund wrote:
Hi, On 2024-06-18 10:10:17 -0700, Noah Misch wrote:On Mon, Jun 17, 2024 at 11:11:17AM -0700, Andres Freund wrote:On 2024-06-15 16:48:24 -0700, Noah Misch wrote:On Sat, Jun 15, 2024 at 01:26:57PM -0400, Robert Haas wrote:The one thing I know about that *I* think is a pretty big problem about Perl is that IPC::Run is not really maintained.I don't see in https://github.com/cpan-authors/IPC-Run/issues anything affecting PostgreSQL. If you know of IPC::Run defects, please report them. If I knew of an IPC::Run defect affecting PostgreSQL, I likely would work on it before absurdity like https://github.com/cpan-authors/IPC-Run/issues/175 NetBSD-10-specific behavior coping.1) Sometimes hangs hard on windows if started processes have not been shut down before script exits. I've mostly encountered this via the buildfarm / CI, so I never had a good way of narrowing this down. It's very painful because things seem to often just get stuck once that happens.That's bad. Do you have a link to a log, a thread discussing it, or even just one of the test names experiencing it?I'm unfortunately blanking on the right keyword right now. I think it basically required not shutting down a process started in the background with IPC::Run. I'll try to repro it by removing some ->finish or ->quit calls. There's also a bunch of tests that have blocks like # some Windows Perls at least don't like IPC::Run's start/kill_kill regime. skip "Test fails on Windows perl", 2 if $Config{osname} eq 'MSWin32'; Some of them may have been related to this.
I only found one of those, in src/test/recovery/t/006_logical_decoding.pl, which seems to be the only place we use kill_kill at all. That comment dates back to 2017, so maybe a more modern perl and/or IPC::Run will improve matters.
It's not clear to me why that code isn't calling finish() before trying kill_kill(). That's what the IPC::Run docs seem to suggest you should do.
cheers
andrew
-- Andrew Dunstan EDB: https://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: