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

Re: [PATCH] pack-objects: reuse data from existing pack.

From
Junio C Hamano <junkio@cox.net>
Date
Feb 16, 2006, 03:59 UTC
Message-ID
<7v4q30kl71.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<Pine.LNX.4.64.0602152226130.5606@localhost.localdomain>
Nicolas Pitre <nico@cam.org> writes:
Show 10 quoted lines
> On Wed, 15 Feb 2006, Junio C Hamano wrote:
>
>>     Generating pack...
>>     Done counting 12233 objects.
>>     Packing 12233 objects.....................
>>     60a88b3979df41e22d1edc3967095e897f720192
>>     Total 12233, written 12233, reused 12177
>> ...
> In fact, the resulting pack should be identical with or without this 
> patch, shouldn't it?

Not necessarily. The delta-depth limitation is currently lifted when reusing deltified objects (finding out the current depth is not so expensive compared to uncompress-delta-recompress cycle, but still costs somewhat, and the objective of this exercise is to gain performance).

Notice the numbers 'written' and 'reused' in the output? The difference in that example comes from the fact that I am omitting some objects from the set of objects to be packed (v1.0.0 is ancient) in a repository where some newer objects are packed. Since packing-delta goes backwards, what is in v1.0.0 but not in my tip tends to be delitified in the original pack, but the resulting pack needs to have them expanded -- that is where the difference comes from.

A cleaned-up patch will be in "pu" branch tonight. I considered putting it in "next", but decided against it. I have not spent enough time really beating on it, although I haven't seen major breakage.

Previous: Nicolas PitreNext: Linus Torvalds
Message 8 of 17 in “[FYI] pack idx format”
  1. Junio C HamanoFeb 15, 2006
  2. Johannes SchindelinFeb 15, 2006
  3. Nicolas PitreFeb 15, 2006
  4. Junio C HamanoFeb 16, 2006
  5. pack-objects: reuse data from existing pack.Junio C Hamano, Feb 16, 2006
  6. packed objects: minor cleanupJunio C Hamano, Feb 16, 2006
  7. Nicolas PitreFeb 16, 2006
  8. Junio C HamanoFeb 16, 2006
  9. Linus TorvaldsFeb 16, 2006
  10. Junio C HamanoFeb 16, 2006
  11. Andreas EricssonFeb 16, 2006
  12. Junio C HamanoFeb 16, 2006
  13. Junio C HamanoFeb 17, 2006
  14. pack-objects: finishing touches.Junio C Hamano, Feb 17, 2006
  15. pack-objects: avoid delta chains that are too long.Junio C Hamano, Feb 18, 2006
  16. Linus TorvaldsFeb 17, 2006
  17. Junio C HamanoFeb 17, 2006

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.