On Sat, Jun 11, 2022 at 5:33 AM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > René Scharfe <l.s.r@xxxxxx> writes: > > > Am 10.06.22 um 16:46 schrieb Han Xin: > >> From: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> > >> > >> Change write_loose_object() to do an fsync() and close() before the > >> oideq() sanity check at the end. This change re-joins code that was > >> split up by the die() sanity check added in 748af44c63e (sha1_file: be > >> paranoid when creating loose objects, 2010-02-21). > >> > >> I don't think that this change matters in itself, if we called die() > >> it was possible that our data wouldn't fully make it to disk, but in > >> any case we were writing data that we'd consider corrupted. It's > >> possible that a subsequent "git fsck" will be less confused now. > > > > This is done before renaming the file, so git fsck is going to see (at > > most) a tmp_obj_?????? file, which it ignores in either case, right? > > Yes, I thought I pointed that out in my review on the previous > round, but I missed that it was still here in this round X-<. > > Thanks for noticing. > Yes, agree with both of you, I'll be removing this patch in the next series. This patch was first introduced in v10[1], close_loose_object() was moved to end_loose_object_common(), but it was put back in v12[2]. It is indeed no longer necessary now. 1. https://lore.kernel.org/git/patch-v10-3.6-0e33d2a6e35-20220204T135538Z-avarab@xxxxxxxxx/ 2. https://lore.kernel.org/git/patch-v12-2.8-54060eb8c6b-20220329T135446Z-avarab@xxxxxxxxx/ Thank you both. -Han Xin -Han Xin