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

Re: Backward or forward deltas, backend, FSX

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Fri, 16 Feb 2018 03:17:38 +0000

Nathan Hartman wrote on Thu, 15 Feb 2018 22:01 -0500:
> On Feb 15, 2018, at 4:11 PM, Daniel Shahaf <d.s_at_daniel.shahaf.name> wrote:
> >
> > Péter wrote on Thu, 15 Feb 2018 19:47 +0100:
> > I'm not sure why you say "at least" 17 deltas. The default value of
> > max-linear-deltification (see fsfs.conf) is 16, meaning that no fulltext
> > will require 17 delta applications to produce.
> >
>
> Does this mean that when checking out HEAD from a repository with a
> large number of commits, the oldest revision it must access is HEAD -
> 16?

No.

Besides, if that were the case, then any commit to the ASF repository, which
has over 200 projects, would have had to replicate the contents of 184 projects
in full (including all tags and branches). That would be impractical and inefficient.

> In other words, is a compressed full text stored every 16 revisions?

No, for two reasons.

First, we're talking about revisions of a particular file here: not 'svn log -q ^/'
but 'svn log -q file.c'.

Second, Subversion uses skip-deltas, so a fulltext would be stored only
every O(2**16) ≈ O(65k) revisions (of a particular file):

https://svn.apache.org/repos/asf/subversion/trunk/notes/skip-deltas

Cheers,

Daniel
Received on 2018-02-16 04:17:46 CET

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.