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

[RFC/PATCH INTRO] rev-cache

From
NENick Edelen <sirnot@gmail.com>
Date
Jul 3, 2009, 15:13 UTC
Message-ID
<op.uwhy8lhktdk399@sirnot>
Hi everyone, 
I've been working on a revision caching system (with gsoc), and would be curious to get some feedback on it and it's (potential) installation into git.  I believe the core mechanics of it are largely finished, but integration is still rather rough.  I've tried to divide it into 4 self-contained patches -- each representing a working implemenation with incremental featuresets.  The patchset is seperated as:
 * basic - the simplest working revision cache implementation, with full docs and relavant tests
 * objects - non-commit object caching + tests
 * misc - extra (maintenance) features and refactor of object caching (requiring slight modification of some object structures)
 * integration - (proof of concept) integration of rev-cache into rev-list, along with extensive tests
I'm afraid the first patch is rather big, as the topo-data encoding scheme is a smidgen complicated, but its effect on git's internals is very small -- it's less of a patch and more an addition of a few files.  I know you guys prefer inline patches, but in view of the patchfile size I decided it'd be more prudent to include that seperately as an attachment.  The only other caveat I can think of is that the tests currently require python, although that could change in future.
So yeah, I hope you find it interesting.  Apologies if I'm breaking protocol...
 - Nick
Next: Nick Edelen
Message 1 of 2 in “rev-cache”
  1. rev-cacheNick Edelen, Jul 3, 2009
  2. Nick EdelenJul 20, 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.