Re: [PATCH] builtin/repack.c: only collect fully-formed packs
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 12, 2023, 21:00 UTC
- Message-ID
- <xmqq4jnc9z16.fsf@gitster.g>
- In-Reply-To
- <20230607101617.ges6tnMry4E52lDGld43QgtNUsIS4YQq6w-t71hEfkQ@z>
Taylor Blau <me@ttaylorr.com> writes:
> Fix the above by teaching `collect_pack_filenames()` to only collect > packs with their corresponding `*.idx` files in place, indicating that > those packs have been fully staged.
Hmph, after following the problem description (which by the way was very well written), I expected to see "collect_pack_filenames() is taught to use get_all_packs() and then enumerate the names from the in-core packed_git structures---this way there is no possibility for the two methods to produce inconsistent results".
But that is not what is going on. Rather, it is "we still keep using a separate readdir() loop, but made sure that the criteria to include a packfile in the result is identical to the logic currently used by the other function", whose implication is that they can diverge again. I am somewhat puzzled.
Will queue. Thanks.