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

Re: [RFC] super indexes to span multiple packfiles

From
AKAvi Kivity <avi@qumranet.com>
Date
May 30, 2007, 09:40 UTC
Message-ID
<465D4693.5070006@qumranet.com>
In-Reply-To
<alpine.LFD.0.99.0705291227010.11491@xanadu.home>
Nicolas Pitre wrote:
Show 18 quoted lines
>>
>> Another way to achieve that is to place objects that are accessed together
>> nearby, and issue a larger read so as to bring them into cache.  I imagine
>> that placing commit objects and associated tree and blobs in history order
>> should help here (but maybe git already does that, I'm not familiar with the
>> internals).
>>     
>
> GIT already does that indeed, except for commit objects which are all 
> together for better performances on history traversal operations.
>
> After a fresh repack, the checkout of the latest revision should produce 
> a nearly perfect linear and contigous access into the early portion of 
> the same pack.  Things will get more random with access to objects 
> further back in history of course, but those objects are less likely to 
> be accessed as often.
>
>   
Thanks.  Actually I should have deduced this from the speed of 'git log' ;-)
-- 
error compiling committee.c: too many arguments to function
Previous: Nicolas PitreNext: Geert Bosch
Message 6 of 7 in “[RFC] super indexes to span multiple packfiles”
  1. Shawn O. PearceMay 29, 2007
  2. Jon SmirlMay 29, 2007
  3. Nicolas PitreMay 29, 2007
  4. Avi KivityMay 29, 2007
  5. Nicolas PitreMay 29, 2007
  6. Avi KivityMay 30, 2007
  7. Geert BoschMay 29, 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.