> Yup. At least I'm glad I was right about that. :-\
>
> We do know from other measurements that using the delta combiner is
> better than just applying the deltas in series (generating intermediate
> fulltexts). But that's not much consolation.
>
> Since we're looking specifically at blame, I suspect the best way to
> improve perfoemance would be to do what I suggested earlier, that is,
> teach get_file_revs to not recrete every fulltext from scratch.
It doesn't though.
Look at svn_repos_get_file_revs
/* Compute and send delta if client asked for it.
Note that this was initialized to NULL, so if !
contents_changed,
no deltas will be computed. */
if (delta_handler)
{
/* Get the content delta. */
SVN_ERR (svn_fs_get_file_delta_stream (&delta_stream,
last_root, last_path,
root, rev_path,
iter_pool));
/* And send. */
SVN_ERR (svn_txdelta_send_txstream (delta_stream,
delta_handler,
delta_baton,
iter_pool));
}
Note that it's sending a delta between the last revision it sent, and
the current revision, and the client is recreating the fulltext by
applying that delta to the last thing it received.
Thus, it only sends one actual fulltext.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Feb 10 16:48:27 2005