Thread (50 messages) 50 messages, 19 authors, 2017-10-02

Re: RFC: Another proposed hash function transition plan

From: Jonathan Nieder <hidden>
Date: 2017-03-06 23:50:07

David Lang wrote:
quoted
Translation table
~~~~~~~~~~~~~~~~~
A fast bidirectional mapping between sha1-names and sha256-names of
all local objects in the repository is kept on disk. The exact format
of that mapping is to be determined.

All operations that make new objects (e.g., "git commit") add the new
objects to the translation table.
This seems like a rather nontrival thing to design. It will need to
hold millions of mappings, and be quickly searchable from either
direction (sha1->new and new->sha1) while still be fairly fast to
insert new records into.
I am currently thinking of using LevelDB, since it has the advantages of
being simple, already existing, and having already been ported to Java
(allowing JGit can read and write the same format).

If that doesn't work, we'd try some other key-value store like Samba's
tdb or Kyoto Cabinet.

Jonathan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help