Subject: Re: [PATCH v2] receive-pack: fix stale packfile locks when dying

From: Patrick Steinhardt <[email-masked]>
Date: Fri, 10 Mar 2023 12:49:04 +0100

On Fri, Mar 10, 2023 at 03:51:29AM -0500, Jeff King wrote:
> On Fri, Mar 10, 2023 at 07:52:10AM +0100, Patrick Steinhardt wrote:
[snip]
> >  builtin/receive-pack.c | 14 ++++++++++----
> >  1 file changed, 10 insertions(+), 4 deletions(-)
> 
> There's no test here, and I think we _could_ make a reliable one with
> something like:
> 
>   1. Have a proc-receive hook that signals via fifo that it's running,
>      then pauses indefinitely.
> 
>   2. Start a push in the background, then wait on the fifo signal.
> 
>   3. Kill receive-pack.
> 
> But it's awfully complicated for little gain. I'm fine with not worrying
> about it (and I did something similar manually to make to sure it works
> as we expect).

I actually tried doing exactly what you're proposing here yesterday. It
caused hangs, lingering processes, you had to play games to not trigger
the &&-chain linter due to the backgrounding via &, and ultimately it
somehow just didn't work.

So at some point I came to the same conclusion as you did, that it's
just too complicated for little gain.

Thanks.

Patrick