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

Re: Trying to restore a corrupted repo

From: Nico Kadel-Garcia <nkadel_at_gmail.com>
Date: Wed, 25 Feb 2015 21:25:21 -0500

On Wed, Feb 25, 2015 at 2:14 PM, Keith Johnson <k33f3r_at_gmail.com> wrote:

> Hi Andreas, thanks for the response.
>
> The revision in question is over a year old, so I'm not sure I can put it
> back exactly as it was (guess all I can do is try my best). I assume
> there's no way to actually get historical data from pristine - that's just a
> cache of current documents, correct?
>
> Basically what you are saying to do is recreate up to the crash, try to
> check in a close-as-possible replacement for r390, put that back in the copy
> of the crashed repo, then dump further from there and import back in?
> Sounds like a reasonable thing to try. Will report back later tonight.

First step is to *write lock* the old repository, to avoid
accumulating history on broken history.

You will be *breaking history* due to the corrupted repo. You should
ideally create a new repo to do the repairs in, explain the
situation,and tell your user community to set aside their working
copies and make clean checkouts when you're done. The old repo should
be locked, and the new repo should have a new name to avoid any
confusion.

This is one of the difficulties with the absolute central repository
approach of Subversion and its spiritual ancestor, CVS. If anything
happens to the central repository, you have to re-establish the
effectively server/client relationship correctly or be at risk of
corrupting your history, *again*.

It can happen with more distributed systems as well, it's just more
likely when one particular repository is considered canonical in your
particular workflow. If the history is replaced or corrupted behind
your back, you can be in real trouble.
Received on 2015-02-26 03:26:35 CET

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.