Hi Daniel, On Wed, Sep 29, 2010 at 09:43:19AM +0200, Daniel Shahaf wrote:
> > during preparing a CVS->Subversion conversion I've messed with the > > repository. There are some post-conversion steps to get things into > > shape and fix up certain shortcomings of the conversion. Since I didn't > > want to convert the repository again (it takes about 12 hours), I > > thought, I'd just remove all the after-conversion revisions from db/revs > > and db/revprops and update db/current accordingly. > > What EXACTLY did you do? Did you > > assert(`svnlook youngest` == 115310) > rm -f db/{revs,revprops}/115/115310 > echo 115309 > current Exactly, just some more revisions. (Started at 115278, removed everything up to 115361.) > (And yes, this should work "in practice", though it is on the "don't try > it at home" list) > > > Which went fine until some time later I've got messages like > > * Verified revision 115301. > > svnadmin: Corrupt representation '115310 0 81 20352 > > c424c0a7265e750bf498553ac60741b1 9a82bd0495ac67916ebaecee4212668344eb6446 > > 115301-2h1d/_8' > > svnadmin: Malformed representation header > > (this was from running svnadmin verify after I saw similar messages) > > > > It looks like there are revisions which refer to future revisions. > > That's... weird. > > > Did I > > miss something? I've seen rep-cache.db hanging around - might this have > > caused problems since it still contained references to revisions I've > > removed? According to > > http://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure > > it is safe to remove the rep-cache.db I'd just lose representation > > sharing for my testing repository, right? > > You will lose the ability for future revisions to re-use the reps > indexed in the database. Existing rep sharing will not be affected. > > If you'd like to disable rep-sharing, then use the fsfs.conf file, or > create a format-3 filesystem (via 'svnadmin create --pre-1.5-compatible') I don't want to disable rep-sharing. I just wondered whether rep-sharing might have introduce these pointers to future revisions since there might have been references to 115310 in rep-cache.db which got reused? Maybe I'll try removing >115278 again, then delete rep-cache.db, then perform all those steps again... Thanks, Tino. -- "What we nourish flourishes." - "Was wir nähren erblüht." www.tisc.de