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

Re: [PATCH] always start looking up objects in the last used pack first

From
DHDana How <danahow@gmail.com>
Date
Jun 2, 2007, 14:53 UTC
Message-ID
<56b7f5510706020753r200fe608wf55a338870f9f1ea@mail.gmail.com>
In-Reply-To
<alpine.LFD.0.99.0705302152180.11491@xanadu.home>
On 5/30/07, Nicolas Pitre <nico@cam.org> wrote:
Show 9 quoted lines
> Jon Smirl said:
> | Once an object reference hits a pack file it is very likely that
> | following references will hit the same pack file. So first place to
> | look for an object is the same place the previous object was found.
>
> This is indeed a good heuristic so here it is.  The search always start
> with the pack where the last object lookup succeeded.  If the wanted
> object is not available there then the search continues with the normal
> pack ordering.

Nice numbers for performance, especially your later email showing this makes split packs almost as quick as one pack.

Show 6 quoted lines
> Note: the
> --max-pack-size to git-repack currently produces packs with old objects
> after those containing recent objects.  The pack sort based on
> filesystem timestamp is therefore backward for those.  This needs to be
> fixed of course, but at least it made me think about this variable for
> the test.

Yes, I was intending to submit a patch to builtin-pack-objects.c to reverse the timestamps when split packs were created. Haven't got around to it yet.

-- 
Dana L. How  danahow@gmail.com  +1 650 804 5991 cell
Previous: Dana How
Message 6 of 6 in “always start looking up objects in the last used pack first”
  1. always start looking up objects in the last used pack firstNicolas Pitre, May 31, 2007
  2. Nicolas PitreMay 31, 2007
  3. Shawn O. PearceMay 31, 2007
  4. Nicolas PitreMay 31, 2007
  5. Dana HowJun 2, 2007
  6. Dana HowJun 2, 2007

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.