xrevlog: experimental reimplementation of revlog in C

Matt Mackall mpm at selenic.com
Wed Nov 10 15:14:36 CST 2010


On Wed, 2010-11-10 at 09:58 -0500, Greg Ward wrote:
> Odd: I have no idea why openclose and readtip are faster here than with
> Mercurial's changelog.  There are ~10x as many revisions and ~10x as
> many bytes in this one.  Is this lazyparser kicking in?

Yep. It mostly exists to make tip fast but has the side effect of making
other things slower.

This looks promising. I've speculated that the right way to fix this is
by making our parser C extension make an array-like class to replace
revlog.index. Not sure it's worth rewriting the rest of revlog in C
though.

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list