Re: [PATCH 0/1] Fix hang in t5562, introduced in v2.21.0-rc1
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Feb 19, 2019, 14:13 UTC
- Message-ID
- <nycvar.QRO.7.76.6.1902191512350.41@tvgsbejvaqbjf.bet>
- In-Reply-To
- <20190218211725.GD3373@jessie.local>
Hi Max,
On Mon, 18 Feb 2019, Max Kirillov wrote:
Show 26 quoted lines
> On Mon, Feb 18, 2019 at 10:06:21PM +0100, Ævar Arnfjörð Bjarmason wrote: > >> But in our attempt to exit(), we try to "cleanup children" and that > >> is what gets stuck. > > > > I have not paid enough attention to this thread to say if this is dumb, > > but just in case it's useful. For this class of problem where cleanup > > bites you for whatever reason in Perl, you can sometimes use this: > > > > use POSIX (); > > POSIX::_exit($code); > > > > This will call "exit" from "stdlib" instead of Perl's "exit". So go away > > *now* and let the OS deal with the mess. Perl's will run around cleaning > > up stuff, freeing memory, running destructors etc, all of which might > > have side effects you don't want/care about, and might (as maybe in this > > case?) cause some hang. > > * Perl is running in foreground, so it cannot outlive test > case and spoil the subsequent ones. > * From the dumps I have an impression that it waits > legitimately - there are other processes to wait for. > And anyway the waits happen before perl script comes to > its exit. > > Though I am already convinced that I should have done the > helper in C. Let's see when I have time to fix it.
Perl has this nasty habit of causing unexpected problems, doesn't it?
I look forward to that dependency on Perl going away, thank you so much!
Ciao, Dscho