[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Skip-deltas, for review

From: Greg Hudson <ghudson_at_MIT.EDU>
Date: 2002-07-27 03:17:39 CEST

On Fri, 2002-07-26 at 21:06, Daniel Berlin wrote:
> without
> skip-deltas and the delta combiner, trying to access revision 100 out of
> 4000 takes literally 10 minutes.
> With just the delta combiner, it's 20 seconds.
> With these two patches, it takes 4 seconds.

Ah, excellent. Hopefully that data will save me from trying to build a
large repository (like a Linux kernel archive) to test on.

> It is also not lost in the noise in a use case where *most* of the
> accesses are read-only type operations (diffs between revisions, etc).

Sure... when I said "lost in the noise", I meant that for the SVN
repository, the statistical noise in my tests was greater than the
benefit (from either delta combination or skip-deltas).

It's good to know that accessing old revisions is a common operation in
some repositories; it justifies putting more effort into optimizing for
it.

> It is perfectly reasonable for them to compare revisions of changelogs
> that are 2500 revisions apart

It doesn't really matter how many revisions apart the revisions are. We
just reconstruct the full text of each item to diff.

ChangeLogs turn out to be a very easy case for us (also for CVS, until
you start a branch). The head contains all of the data, and any delta
against a future revision is just a deletion. That's why I tested with
a file which got monotonically *smaller* over time, instead of one which
grew.

To reduce inbox clutter, I'll also answer Glenn Thompson, who said:
> I'm curious, isn't this something that could be done as a separate
> tuning process.

We could, but at this moment it would be a lot more complicated. And
I'm not sure what I would do with extra time to analyze things.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Jul 27 03:18:11 2002

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.