git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[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
Next: Jeff King
Message 1 of 13 in “speed up "Counting objects" when there are many packs”
  1. 0/2 speed up "Counting objects" when there are many packsJeff King, Jul 25, 2016
  2. 1/2 pack-objects: break out of want_object loop earlyJeff King, Jul 25, 2016
  3. Junio C HamanoJul 25, 2016
  4. Jeff KingJul 25, 2016
  5. Junio C HamanoJul 25, 2016
  6. Jeff KingJul 25, 2016
  7. Junio C HamanoJul 26, 2016
  8. Jeff KingJul 26, 2016
  9. Junio C HamanoJul 26, 2016
  10. Jeff KingJul 27, 2016
  11. Junio C HamanoJul 27, 2016
  12. Jeff KingJul 27, 2016
  13. 2/2 pack-objects: compute local/ignore_pack_keep earlyJeff King, Jul 25, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.