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

Re: [PATCH 0/5] Suggested for PU: revision caching system to significantly speed up packing/walking

From
NENick Edelen <sirnot@gmail.com>
Date
Aug 7, 2009, 00:15 UTC
Message-ID
<c77435a80908061715u7ff7456cl6c5ded16b51b122f@mail.gmail.com>
In-Reply-To
<4A7B6A94.9020200@gmail.com>

That would work, but I sorta like the idea of caching the actual names. I'm thinking of having a block of slice-unique, null-seperated names at the end of each slice (ie. not in the mapping) which is loaded into memory (it wouldn't be very big). Then each blob/tree object would have an variable length index referencing a particular name.

Using the actual names would give us greater flexbility, and allow rev-cache to output proper rev-list type output (with the names after the hashes).

On Fri, Aug 7, 2009 at 1:43 AM, A Large Angry SCM<gitzilla@gmail.com> wrote:
Show 32 quoted lines
> Shawn O. Pearce wrote:
>>
>> A Large Angry SCM <gitzilla@gmail.com> wrote:
>>>
>>> Shawn O. Pearce wrote:
>>>>
>>>> Nick Edelen <sirnot@gmail.com> wrote:
>>>>>
>>>>> Hrmm, I just realized that it dosn't actually cache paths/names...
>>>>
>>>> You may not need the path name, but instead the hash value that
>>>> pack-objects computes from the path name.
>>>
>>> Please do NOT expose the hash values. The hash used by pack-objects is
>>>  an implementation detail of the heuristics used by the _current_ object
>>>  packing code. It would be a real shame to have to maintain backward
>>>  compatibility with it at some future date after the packing machinery  has
>>> changed.
>>
>> This is a local cache.  If there was a version number in the header,
>> and the hash function changes, we could just bump the version number
>> and invalidate all of the caches.
>>
>> No sense in storing (and doing IO of) huge duplicate string values
>> for something where we really only need 32 bits, and where a
>> recompute from scratch only costs a minute.
>>
>
> That will work for me if the cache gets a version number and iff the
> pack-objects hash code gets big warning comments about the cache code
> dependency.
>
Previous: A Large Angry SCMNext: Johannes Schindelin
Message 12 of 34 in “Suggested for PU: revision caching system to significantly speed up packing/walking”
  1. 0/5 Suggested for PU: revision caching system to significantly speed up packing/walkingNick Edelen, Aug 6, 2009
  2. Johannes SchindelinAug 6, 2009
  3. Michael J GruberAug 6, 2009
  4. Nick EdelenAug 6, 2009
  5. Johannes SchindelinAug 6, 2009
  6. Nick EdelenAug 6, 2009
  7. Nick EdelenAug 6, 2009
  8. Shawn O. PearceAug 6, 2009
  9. A Large Angry SCMAug 6, 2009
  10. Shawn O. PearceAug 6, 2009
  11. A Large Angry SCMAug 6, 2009
  12. Nick EdelenAug 7, 2009
  13. Johannes SchindelinAug 7, 2009
  14. Nicolas PitreAug 7, 2009
  15. Sam VilainAug 7, 2009
  16. Nicolas PitreAug 7, 2009
  17. Johannes SchindelinAug 7, 2009
  18. Nicolas PitreAug 7, 2009
  19. Johannes SchindelinAug 8, 2009
  20. Junio C HamanoAug 8, 2009
  21. Sam VilainAug 8, 2009
  22. Nicolas PitreAug 9, 2009
  23. Nick EdelenAug 9, 2009
  24. Johannes SchindelinAug 7, 2009
  25. Nicolas PitreAug 7, 2009
  26. Nick EdelenAug 7, 2009
  27. Junio C HamanoAug 7, 2009
  28. Nick EdelenAug 7, 2009
  29. Junio C HamanoAug 8, 2009
  30. Nick EdelenAug 8, 2009
  31. Jeff KingAug 8, 2009
  32. Nick EdelenAug 8, 2009
  33. Jeff KingAug 8, 2009
  34. Junio C HamanoAug 8, 2009

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.