Re: repository corruption when pushing commits to a repository running 'git gc --prune='
Junio C Hamano <gitster@pobox.com> writes:
Show 15 quoted lines
> Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> writes:
>
>> This looks like a race between deleting objects/05/ and creating
>> objects/05/cdb51bb0ea3e229734a4b1bddd5ec70fbc65ed.
>>
>> I don't understand how this is possible, since the temporary file and
>> the final one are in the same directory, so deleting the directory
>> should fail.
>>
>> What am I missing?
>
> 1. tmp_obj_* gets created in objects/05/ by "git unpack-objects";
>
> 2. prune_cruft() comes, notices tmp_obj_* that is sufficiently old,
> decides to remove in "git prune".
Ah, OK, the real problem is the temporary file removal. Thanks.
--
Matthieu Moy
http://www-verimag.imag.fr/~moy/