[PATCH 0/2] speed up "Counting objects" when there are many packs
- From
Jeff King <peff@peff.net>
- Date
- Jul 25, 2016, 18:49 UTC
- Message-ID
- <20160725184938.GA12871@sigill.intra.peff.net>
We sometimes see cases at GitHub where repository maintenance has fallen behind, and you get a large number of packs. The solution is to repack, but that process is itself made a lot slower by the number of packs.
We've experimented a bit with fast "just cat all the packfiles together" type approaches, but they have some downsides, so I have nothing to show there yet.
However, there are a few easy optimizations we can do to cut out some unnecessary computation in common cases (e.g., when you have no .keep files and when you have no upstream alternates storage). Both of these patches have been in production at GitHub for about 6 months.
[1/2]: pack-objects: break out of want_object loop early [2/2]: pack-objects: compute local/ignore_pack_keep early
-Peff