Re: t5570-git-daemon fails with SIGPIPE on OSX
- From
Jeff King <peff@peff.net>
- Date
- Feb 8, 2019, 19:54 UTC
- Message-ID
- <20190208195459.GA32556@sigill.intra.peff.net>
- In-Reply-To
- <nycvar.QRO.7.76.6.1902081024550.41@tvgsbejvaqbjf.bet>
On Fri, Feb 08, 2019 at 10:28:12AM +0100, Johannes Schindelin wrote:
Show 23 quoted lines
> Hi Peff, > > On Fri, 8 Feb 2019, Johannes Schindelin wrote: > > > I just had a look at the patch you provided below (for some reason, my > > previous search on public-inbox only turned up Gábor's mail to which you > > responded). > > > > Admittedly, I do not really understand all aspects of it, but it applies, > > still, and I kicked off a stress test here: > > > > https://dev.azure.com/git/git/_build/results?buildId=338 > > > > It seems that your patch fixes that t5570 flakiness on macOS, and more > > importantly, addresses an important issue on macOS. > > > > Will play a bit more with it and keep you posted. > > Alas, I was fooled. *Fooled*, I say. Apparently the --stress option makes > the script *succeed* when it fails? > [...] > So I am afraid that your patch does not fix the issue nor does it work > around it.
I think that patch does the write_or_die conversion to handle EPIPE, but it would still need to turn off SIGPIPE for the whole process.
So you'd also need to stick a:
sigchain_push(SIGPIPE, SIG_IGN);
somewhere near the start of cmd_fetch(). (There may be a less coarse-grained place to put it, but at this point I think we're just trying to find out whether this approach even solves the problem).
-Peff