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

Re: [PATCH] Replace vdelta with xdelta variant

From: Daniel Berlin <dberlin_at_dberlin.org>
Date: Mon, 21 Jan 2008 17:24:15 -0500

On Jan 19, 2008 6:07 AM, Niels Werensteijn
<n.werensteijn_at_student.utwente.nl> wrote:
> Daniel Berlin schreef:
> > On Jan 18, 2008 1:54 PM, Niels Werensteijn
> > <n.werensteijn_at_student.utwente.nl> wrote:
> >>> Is this an implementation of any particular algorithm?
> >> No. I just looked at XDelta as it was implemented. I saw how it would be
> >> faster than vdelta, and adjusted the XDelta algorithm so it could make a
> >> diff against itself.
> >
> > So, my question becomes does this do better than running zlib's
> > compress over the stream?
> I suspect not. Xdelta is not optimally diffing, when looking at the
> output size, so it definitely is not optimal for compression. I have
> thought about implementing this as 1 insert command that inserts the
> whole stream(chunk). This would speed things up considerably on the cpu
> side, and when send between client and server, zlib will compress it (I
> only looked at svnserve, I am not sure DAV would use zlib). The down
> side would be that the files would also be stored this way in the
> repository. And there, as far as I know, no zlib compression is applied.

You should look again :)
We do compress the new data using zlib, which is why i asked if this
was worth it compared to that.
The only reason we kept vdelta is because there were clients that did
not understand this new "svndiff1" format (svndiff0 has uncompressed
new data) at the time. I doubt anyone still uses a client that
doesn't support svndiff1 these days.

> I don't know what the policy is on repository size. I think repository
> size has been sacrificed when the switch from vdelta to xdelta was made.
> So if that is no problem, we could explore the "single insert" option.

Errr, not really.
We compress new data using zlib now. repositories are actually about
20% smaller than they were when we used vdelta.

> regards,
> Niels Werensteijn

To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-01-21 23:24:29 CET

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