On Sun, Nov 10, 2024 at 8:50 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Calvin Wan <calvinwan@xxxxxxxxxx> writes: > > > However, this is not the case as discovered earlier[1] -- certain > > maintenance and gc tasks are not safe to run in parallel with other > > commands. The consequences of such are that scripts with commands that > > trigger maintenance/gc can race and crash. > > > > Users can also run into > > unexpected errors from porcelain commands that touch common files such > > as HEAD.lock, unaware that a background maintenance/gc task is the one > > holding the lock. > > The symptom looks more like a controlled refusal of execution than a > crash. Correct, I also do think some responsibility should be on the scripts to be able to both handle the "controlled refusal of execution" as well as checking to see if those lock files exist first to avoid such errors.