Re: Performance regression in connectivity check during receive-pack (git 2.54)
From: Jeff King <hidden>
Date: 2026-07-23 10:49:44
On Wed, Jul 22, 2026 at 08:49:50AM -0700, Junio C Hamano wrote:
I suspect several of those 'transactions' are actually misspelt 'temporary directories', but I catch your drift. That said, a redesign like that feels more or less independent of the fix for our immediate performance regression. After all, didn't Peff show us a case where no odb sources were being flipped in the middle? Simply setting up one object store to borrow from another via the alternates mechanism demonstrated that checking packs across all object stores before hunting for loose objects in any of them makes a world of difference.
Yeah, exactly. This is really a regression in alternates performance, but it just so happens that the quarantine system is built on top of alternates so we noticed it there. I'd expect "clone -s / --reference" to have similar problems, and also for sites like GitHub and GitLab that make heavy use of alternates for object sharing between forks. And those would pay the penalty on just about every operation (because we'd expect the alternate to be holding most of the objects in those cases). -Peff