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

Re: Generating vdeltas

From: Karl Fogel <kfogel_at_galois.collab.net>
Date: 2000-09-27 19:49:11 CEST

Bob Miller <kbob@jogger-egg.com> writes:
> It is my understanding that in subversion the vdelta is generated on
> the client side, somewhere in libsvn_delta, and the server simply
> stores whatever the client gives it. Is that true, or does the server
> apply the vdelta and have both revs to look at and potentially
> recalculate the vdelta?

The latter, because the server stores reverse vdeltas -- in other
words, the most recent version of a file is stored in fulltext, and
then there is a reverse delta chain going backwards.

So both client and server need to be able to generate and apply
vdeltas.

> One thousand years ago, when mainframes walked the earth, Walter Tichy
> made a big deal about how clever RCS was to store the most frequently
> requested version and calculate other versions relative to that one.
> Is subversion doing that? If so, it must have to calculate inverse
> deltas.

That'll teach me not to read the second paragraph before replying to
the first. :-)

Yes, that's exactly what Subversion is doing.

> The reason this comes up is that we're talking about cvs2svn
> outputting XML that includes a vdelta. I'm wondering if I can get
> lazy and just write a vdelta that says, "replace the whole file with
> this whole new file", without bloating the database.

Well, sure. It won't affect the database, but you'll have really big
XML files. Nonetheless, it seems like a good laziness for now, with
the understanding that it should use real vdeltas later.
Received on Sat Oct 21 14:36:09 2006

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