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

Re: recover_body() ### What if rNNN legitimately has no revprops? was: Re: Does fsfs revprop packing no longer allow usage of traditional backup software?

From: Daniel Shahaf <danielsh_at_elego.de>
Date: Thu, 30 Jun 2011 22:54:11 +0300

Daniel Shahaf wrote on Thu, Jun 30, 2011 at 22:48:27 +0300:
> Philip Martin wrote on Thu, Jun 30, 2011 at 20:07:45 +0100:
> > Daniel Shahaf <danielsh_at_elego.de> writes:
> >
> > > Philip Martin wrote on Thu, Jun 30, 2011 at 19:48:25 +0100:
> > >> for i in $(seq 0 $(svnlook youngest repo)) ; do
> > >> sqlite3 repo/db/revprops/revprops.db "insert into revprop values ($i, '()'"
> > >> done
> > >>
> > >
> > >>From recover_body():
> > >
> > > /* No file? Hrm... maybe that's because this repository is
> > > packed and the youngest revision is in the revprops.db
> > > file? We can at least see if that's a possibility.
> > >
> > > ### TODO: Could we check for revprops in the revprops.db?
> > > ### What if rNNN legitimately has no revprops? */
> > >
> > >
> > > Your excerpt implies the answer to the first ###'d question is "Yes"
> > > (via looking for an empty skel), doesn't it?
> >
> > I don't understand your question. The properties column is "NOT NULL"
> > so must have some value. Are you saying we don't need rows? I guess my
> > use of youngest is wrong, it should stop at the last packed rev. I
> > haven't actually run that script, I just wrote it in my email client :)
>
> On IRC we agree that revprops.db is expected to have a row for *every*
> revision less than MIN_UNPACKED_REV; that row may map the revision to an
> empty proplist skel but it must exist.
>

... and therefore, the comment in the code that effectively asks "Is it
legitimate for an existing revision not to have a table row (for
example, if that revision has no revprops)", is answered by "No".

> We might want to tolerate missing table lines (with a warning), both in
> 'recover' and elsewhere in the code. Still need to investigate here.
>
> >
> > --
> > Philip
Received on 2011-06-30 21:55:03 CEST

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.