You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

### NOT READY! This page is currently being written and is not yet finished so do not use it.

How to repair a damaged master repository by copying data back from an svnsync mirror repository that is complete and in good working order.

The Scenario

FSFS repository, svnsync mirror, used in a write-through proxy configuration.

Both the master and the mirror repository are the same repository format.

The master repository has corruption in some of its revision files, but the mirror repository does not. (Issue 3845).

Master and slave are still live since commits that don't access the corrupt data still work.

The Repair

Ensure the master repository is off line and the other preconditions are met. Keep a backup of the master repository before starting to fix it.

Copy, by any convenient method (such as rsync or by physically shipping a disk), the following parts of the mirror repository into the master repository:

  • the 'db' subdirectory
  • optionally omit 'db/locks', 'db/transactions', 'db/txn-protorevs' as they're not needed
  • optionally omit 'db/revprops' if you want to keep the master's revprops

Then delete 'db/locks/*', 'db/transactions/*' and 'db/txn-protorevs/*'.

Check whether the settings in 'db/fsfs.conf' need to be adjusted or merged with the previous (backed up) version of this file.

  • No labels