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

RE: Xdelta?

From: Sander Striker <striker_at_apache.org>
Date: 2001-10-04 09:27:41 CEST

> From: Ben Collins-Sussman [mailto:sussman@collab.net]
> Sent: 04 October 2001 06:55
>
> Billy Tanksley <btanksley@hifn.com> writes:
>
> > Have we looked at the XDelta differencing engine? It's licensed under a
> > BSD-like license, so it should work for us. Some people
> > mentioned rsync;
> > xdelta uses an rsync-like protocol.
> >
> > http://www.xcf.berkeley.edu/~jmacd/xdelta.html
>
>
> Karl spoke to the author of xdelta over a year ago. For some reason,
> it wasn't a good fit for this project. IIRC, the xdelta code wasn't
> librarized (the way our svndiff algorithm is), and the author had no
> interest in doing so. He was only offering a complete xdelta-based
> filesystem, which we didn't want. I may be remembering things
> unfairly, though... maybe Karl can comment?

Implementing XDelta isn't hard. You only use the rolling checksum.
Rsync uses a relatively large window, xdelta uses small windows (so
you get a smaller diff). The downside of xdelta however is that you
need both the old and the new file locally. Rsync was designed to
send diffs with the old and new file on two different systems.
An rsync like diff engine can be implemented in ~1000 LOC. I have
the diffing algo in draft. It only needs the reconstruction implemented.
If there is interest in the future (IOW after 1.0), I'm happy to donate
the code under the subversion license.

Sander

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:44 2006

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