git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GSoC] Designing a faster index format - Progress report week 7
@ 2012-06-04 20:07 Thomas Gummerer
  2012-06-06  9:45 ` Handling racy entries in the v5 format [Re: [GSoC] Designing a faster index format - Progress report week 7] Thomas Rast
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Gummerer @ 2012-06-04 20:07 UTC (permalink / raw)
  To: git; +Cc: trast, gitster, mhagger, pclouds

== Work done in the previous 6 weeks ==

- Definition of a tentative index file v5 format [1]. This differs
  from the proposal in making it possible to bisect the directory
  entries and file entries, to do a binary search. The exact bits
  for each section were also defined. To further compress the index,
  along with prefix compression, the stat data is hashed, since
  it's only used for comparison, but the plain data is never used.
  Thanks to Michael Haggerty, Nguyen Thai Ngoc Duy, Thomas Rast
  and Robin Rosenberg for feedback.
- Prototype of a converter from the index format v2/v3 to the index
  format v5. [2] The converter reads the index from a git repository,
  can output parts of the index (header, index entries as in
  git ls-files --debug, cache tree as in test-dump-cache-tree, or
  the reuc data). Then it writes the v5 index file format to
  .git/index-v5. Thanks to Michael Haggerty for the code review.
- Prototype of a reader for the new index file format. [3] The
  reader has mainly the purpose to show the algorithm used to read
  the index lexicographically sorted after the full name which is
  required by the current internal memory format. Big thanks for
  reviewing this code and giving me advice on refactoring goes
  to Michael Haggerty.
- Started working on the actual git code. Git is now able to read
  the index format v5, although the mapping of the new ondisk
  format to the internal format is not done yet. The latest code
  is not pushed to github yet, since it still needs some polishing,
  but if anyone is interested in the general direction it's going,
  the initial steps are on github. [4] Thanks for reviewing the
  first steps to Thomas Rast.

== Work done in the last week ==

- Continued working on the git code, which now maps the index to
  the internal format. This includes reading the conflicted data
  at the far end of the index. [4]

== Outlook for the next week ==

- Read the cache-tree (convert the directories on the disk to the
  current in-memory cache-tree structure)
- Start implementing an API, as it was discussed at [5]

[1] https://github.com/tgummerer/git/wiki/Index-file-format-v5
[2] https://github.com/tgummerer/git/blob/pythonprototype/git-convert-index.py
[3] https://github.com/tgummerer/git/blob/pythonprototype/git-read-index-v5.py
[4] https://github.com/tgummerer/git/tree/index-v5
[5] http://thread.gmane.org/gmane.comp.version-control.git/198283/focus=198474

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-06-06 17:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-04 20:07 [GSoC] Designing a faster index format - Progress report week 7 Thomas Gummerer
2012-06-06  9:45 ` Handling racy entries in the v5 format [Re: [GSoC] Designing a faster index format - Progress report week 7] Thomas Rast
2012-06-06 13:01   ` Johannes Sixt
2012-06-06 17:31   ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).