On Thu, Aug 27, 2020 at 02:43:02PM -0700, Junio C Hamano wrote: > * tb/repack-clearing-midx (2020-08-26) 1 commit > (merged to 'next' on 2020-08-27 at a465875cbb) > + builtin/repack.c: invalidate MIDX only when necessary > > When a packfile is removed by "git repack", multi-pack-index gets > cleared; the code was taught to do so less aggressively by first > checking if the midx actually refers to a pack that no longer > exists. > > Will merge to 'master'. This seems to break t7700 when run with midx support: $ git checkout e08f7bb093 HEAD is now at e08f7bb093 builtin/repack.c: invalidate MIDX only when necessary $ make && (cd t && GIT_TEST_MULTI_PACK_INDEX=1 ./t7700-repack.sh -i) [...] + git repack -a -d Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 16 threads Compressing objects: 100% (5/5), done. Writing objects: 100% (10/10), done. Total 10 (delta 1), reused 10 (delta 1), pack-reused 0 fatal: error preparing packfile from multi-pack-index error: last command exited with $?=128 not ok 6 - packed obs in alt ODB are repacked when local repo has packs # # rm -f .git/objects/pack/* && # echo new_content >>file1 && # git add file1 && # test_tick && # git commit -m more_content && # git repack && # git repack -a -d && # test_no_missing_in_packs I didn't look into whether it's a bug in the actual code, or just a weird interaction with the way GIT_TEST_MULTI_PACK_INDEX triggers git-repack to write a midx. But either way we should figure that out before it graduates. -Peff