You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Branko Čibej <br...@xbc.nu> on 2005/02/15 07:13:35 UTC
Re: svn commit: r13016 - trunk/subversion/libsvn_fs_fs
lundblad@tigris.org wrote:
>Author: lundblad
>Date: Mon Feb 14 14:29:00 2005
>New Revision: 13016
>
>Modified:
> trunk/subversion/libsvn_fs_fs/fs_fs.c
>Log:
>In FSFS, when recreating a fulltext, instead of combining al deltas, apply
>one delta against a fulltext or the empty stream and combine the rest.
>
>
I hav eone objection to this change:
> /* Combine in the windows from the other delta reps, if needed. */
>- for (i = 1; i < rb->rs_list->nelts; i++)
>+ for (i = 1; i < rb->rs_list->nelts - 1; i++)
>
>
This relies far too much on the assumption that the first revision is
the only on that can be self-compressed. Insted, the logic should simply
be to stop combination when we find a fulltext /or/ self-compressed
delta. some future optimisation could insert self-compressed deltas
anywhere, and it's also not impossible to mix self-compressed and diffed
deltas in different windows of the same revision.
-- Brane
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: svn commit: r13016 - trunk/subversion/libsvn_fs_fs
Posted by Greg Hudson <gh...@MIT.EDU>.
On Tue, 2005-02-15 at 02:13, Branko Čibej wrote:
> I hav eone objection to this change:
>
> > /* Combine in the windows from the other delta reps, if needed. */
> >- for (i = 1; i < rb->rs_list->nelts; i++)
> >+ for (i = 1; i < rb->rs_list->nelts - 1; i++)
> >
> >
> This relies far too much on the assumption that the first revision is
> the only on that can be self-compressed.
rb->rs_list is an array of the deltas used to represent the file,
constructed by build_rep_list(), not an array of the revisions of the
file. So no such assumption is being made.
(If we see "delta -> delta -> delta -> plaintext", something FSFS
currently never does, it's true that Peter's code will apply the final
delta to the plaintext even though that delta is not self-compressed.
That's arguably wrong from a performance perspective, though it's still
correct behavior.)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org