On Thu, May 23, 2019 at 09:26:34PM +0200, Ævar Arnfjörð Bjarmason wrote: > > I spent a while thinking and experimenting with this tonight. The result > > is the patch below. Ævar, do you still have a copy of the repo that > > misbehaved? I'd be curious to see how it fares. > > No, sorry. I think we could make an artificial test to emulate it, which > would be something like: > > * ~1 million commits > * local clone setup to fetch all branches/tags (default 'git clone') > * local a bit ahead/behind > * Have old "main" pack with *.bitmap, bunch of other packs/loose objects without that > * push try to push the local change upstream (or to a topic branch) > > I tried briefly to emulate this with git.git with: > [...] > But didn't get anywhere, probably because here my topics are all stuff I > have already, and I just have 2x packs. Yeah, I haven't been able to find a reproduction for this problem at will. The bitmaps are _supposed_ to be sprinkled around through the commit graph so that we don't have to walk far. But presumably in your case that was not so. I'm not sure what tickles the bitmap-writer to fail so hard. Is it having too many refs? Weird patterns in the graph? Just a ton of commits? -Peff