git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Mercurial on BigTable
@ 2009-06-10 19:15 Scott Chacon
  2009-06-10 19:23 ` Sverre Rabbelier
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Scott Chacon @ 2009-06-10 19:15 UTC (permalink / raw)
  To: git list

Has anyone watched this yet?

http://code.google.com/events/io/sessions/MercurialBigTable.html

It's kind of interesting - a Googler talks about getting Mercurial
running on BigTable.  What fascinates me is that if I'm not horribly
mistaken, it seems like they just threw out the revlog format entirely
and just store the data in a key-value store as sort of a Git-like
content addressable filesystem.  I had thought they were taking
advantage of the revlog structure somehow, but it appears like they
basically just changed the underlying data format to be much more like
Git and rewrote ah Hg speaking server on top of that.  They even
explicitly store the head values like refs instead of reading
childless nodes out of the revlog, which is what I thought Hg did.

Does anyone know how they do the graph walking efficiently with this
structure?  He mentioned it was about half as fast as native Hg, but
that seemed to be acceptable.  Curious if anyone had any thoughts or
information on this.  Shawn, are there technical reasons why this
works well the way they're doing it for Hg but would not for Git (like
in the repo MINA based server)?  It looks like the data structure and
protocol exchange are incredibly similar after they threw away all the
revlog stuff.  Or is it just that they're fine with the speed loss and
the Android project would not be?

Scott

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

end of thread, other threads:[~2009-06-12  7:14 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-10 19:15 Mercurial on BigTable Scott Chacon
2009-06-10 19:23 ` Sverre Rabbelier
2009-06-11  2:02 ` Andreas Ericsson
2009-06-11  8:24   ` Jakub Narebski
2009-06-12  3:46     ` Shawn O. Pearce
2009-06-12  7:14       ` Jakub Narebski
2009-06-11 14:37   ` Sitaram Chamarty
2009-06-12  4:14 ` Shawn O. Pearce

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).