On Thu, Aug 27, 2020 at 04:36:43PM -0700, Junio C Hamano wrote: > Jeff King <peff@xxxxxxxx> writes: > > > 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. > > Thanks for stopping us ;-) Thanks indeed. I started looking into this tonight thinking that it'd be an easy fix, but I think there is a deeper bug that is worth investigating further. Let's eject this for now. If the bug turns out to be easier than I thought, I'll send the patch again, otherwise I'll send it with my larger series when that's ready. Thanks, Taylor