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

Re: Recovering repository with multiple missing rev/ files

From: Eiren Smith <eirens_at_gmail.com>
Date: Fri, 18 Jun 2010 16:50:30 -0400

On Jun 18, 2010, at 2:53 PM, Daniel Shahaf wrote:

> CC += users@
>
> Eiren Smith wrote on Fri, 18 Jun 2010 at 10:01 -0400:
>> On Jun 18, 2010, at 3:07 AM, Daniel Shahaf wrote:
>>
>>> Eiren Smith wrote on Thu, 17 Jun 2010 at 23:24 -0000:
>>>> On Jun 15, 2010, at 12:20 PM, Eiren Smith wrote:
>>>>
>>>>> On Jun 15, 2010, at 12:14 PM, Stefan Sperling wrote:
>>>>>
>>>>>> On Tue, Jun 15, 2010 at 11:49:44AM -0400, Eiren Smith wrote:
>>>>>>> Sir:
>>>>>>>
>>>>>>> Thanks for your reply. I'll read those references you cited.
>>>>>>>
>>>>>>>>>
>>>>>>>>> P.S. Other files may also be missing from the revprops/ dir,
>>>>>>>>> not
>>>>>>>>> just 7437 -- If I'm willing to lose commit messages, can I
>>>>>>>>> live
>>>>>>>>> without some revprops/ files?
>>>>>>>>
>>>>>>>> You should recreate the revprops for all revisions.
>>>>>>>
>>>>>>> I have emails messages (from SubversionNotify) containing the
>>>>>>> commit
>>>>>>> comments for six of seven of those revisions. If I can rebuild
>>>>>>> the
>>>>>>> repository with some revprops/ files missing, I can edit the
>>>>>>> comments later. Will this work?
>>>>>>
>>>>>> Sure, that will work. You'll need to do a manual commit of the
>>>>>> changes
>>>>>> made in lost revisions, and then tweak the revision properties
>>>>>> after
>>>>>> the
>>>>>> commit is done. See also the 'svnadmin setrevprop' command,
>>>>>> which will
>>>>>> help you to set the revision properties (svn:date, svn:author,
>>>>>> and
>>>>>> svn:log).
>>>>>>
>>>>>> Stefan
>>>>>
>>>>> Thank you.
>>>>>
>>>>> I won't be able to accurately mimic the seven missing changes as
>>>>> most of
>>>>> them were for binary files (project documentation and some DLLs).
>>>>>
>>>>> Instead, is there a way to simply say "All future revisions that
>>>>> depend
>>>>> upon these seven revisions are dead/null" so I can piece the
>>>>> repo back
>>>>> together with just that minor loss?
>>>>>
>>>>> Thanks,
>>>>>
>>>>> /eiren
>>>>
>>>>
>>>> Anyone:
>>>>
>>>> Any ideas about how to handle this since I can't mimic the
>>>> changes to the
>>>> binary files modified in the missing revs?
>>>>
>>>
>>> Patch svnadmin to skip those particular files (hard-code them) when
>>> parsing a dumpfile?
>>>
>>
>> Sorry, I don't understand. Could you expand on that?
>>
>
> IIRC, you were suggested to dump the repository (in parts) in order to
> recover it. Normally, if you just load these dumpfiles, it will error
> at some point due to the missing revisions (which weren't dumped). So
> I suggested to recompile svnadmin with a one-off patch that changes
> the
> 'svnadmin load' logic to ignore anything in the dumpfiles that touches
> one of the files touched in those seven revisions.
>
> Essentially, look up what paths were touched in those seven revisions,
> and then patch load.c so that, when it parses from the dumpfile an
> entry
> concerning one of those files, the entry gets ignored (dropped on the
> floor) and will not be forwarded to the FS layer as normal (with the
> aim
> of making a commit to the repository-being-loaded-into).
>
> Clearer?
>
>> /eiren
>>
>>>> Sorry if nudging this is bad form for this list.
>>>>
>>>> /eiren
>>>>

Clear. Thanks, Daniel.

If I wind up going that route, I'll do also check revision numbers so
I only start ignoring those files at the point where I'm missing
revision files that include modifications to them, leaving previous
revision history for them intact.

I might also do some fake revisions (to some unrelated dummy files, I
suppose) to keep my revision numbers from shifting.

/eiren
Received on 2010-06-18 22:51:15 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.