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

Re: Speeding up blame (fwd)

From: Mark Benedetto King <mbk_at_lowlatency.com>
Date: 2004-05-27 21:17:28 CEST

On Thu, May 27, 2004 at 07:59:26PM +0200, Peter N. Lundblad wrote:
> >
> > I don't think that the RA implementation can reconstruct the fulltext
> > from the deltas (at least not without some WC callbacks; if that's
> > what you're proposing, then I think we're on roughly the same page).
> >
> You're right, ofcourse. It would have to keep track of the last fulltext.
> What type of WC callbacks are you envisioning?
>
> Regards,
> //Peter
>

Well, not completely right. The RA layer could get the fulltext of the
start revision, and then deltas for the revisions thereafter.

It would be neat if the fact that the WC adm area contains the
pristine BASE rev could be brought into play (perhaps the RA layer
would retrieve the delta from BASE->start rather than the fulltext
of start), but the wins in terms of network i/o are probably not
worth the additional implementation complexity.

AFATG, it would be neat if svn_client_cat() did the same thing.

One last blue sky idea:

Right now, svn_client_blame() uses svn_diff_file_diff(),
but there is also a generalized interface that could be applied
to streams. Using that interface, it should be possible to
avoid constructing any of the fulltexts at all, since the
stream of revision N+1 can be computed from the stream of
revision N and the delta from N to N+1.

--ben

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu May 27 21:20:51 2004

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.