Ryan, I think you are confusing two different meanings of the term
'revision'.
In skip-deltas, the term 'revision' means:
For the purposes of this document, we will pretend that revisions of a
file are numbered starting from 0. In reality, this number
corresponds to the "change count" field of a node-revision in each
filesystem back end.
In the Subversion UI and API, the term 'revision' means[1]:
The number of commits to a repository.
I'm not an FS expert, but as far as I know these two meanings are
entirely unrelated.
Daniel
[1] Not entirely accurate, but close enough for the purpose of this
discussion.
Ryan Schmidt wrote on Fri, 19 Sep 2008 at 13:33 -0500:
>
> On Sep 18, 2008, at 12:58 PM, Ritenour, Russell C. (Contr) wrote:
>
> The files in db/revs are the revision data. These are stored as a difference
> against a previous revision (though not necessarily the immediately previous
> revision; see the skip-deltas algorithm [1]). According to skip-deltas,
> revision 19 is based on 18, so a missing revision 18 can cause problems for
> revision 19. Revision 48 is based on revision 32, so missing revisions 33-47
> won't impact that. But if other higher revisions are missing, there may be
> extant revisions which will be broken because of this. You'll have to try
> and see.
>
> The files in db/revprops are the properties for the corresponding revision.
> These aren't stored as diffs but as complete files. If you're missing the
> revprop file corresponding to a rev file that you do still have, you may
> need to reconstruct the revprop file before you can recover the remaining
> revisions. It shouldn't be too hard to create a valid revprop file, since
> it's a fairly readable text format. You'll just have to make up the date,
> author and log message. You could use an author and log message like
> "recovered" for example, and either try to pick a date that makes
> chronological sense given the remaining revisions or just set it to some
> random date in the past, or even today's date. Using non-chronological
> revisions will mean that you cannot use the '-r{date}' or
> '-r{fromdate}:{todate}' revision syntax to find revisions, so consider
> whether that's important to you.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-09-20 11:00:19 CEST