0

I have two SVN repos, that one is a mirror of the other. Lets call them Source and Mirror

Those repos reside on different servers each. we have a post commit hook that any commit into "Source" repo is being synced into "Mirror" repo. There are no write permissions in "Mirror" only a specific user that execute the sync.

That repo exist for a long time, it contains ~140,000 revisions and reach more than 100GB

Lately the "svnsync" failed from time to time, a problem either solved by itself or a reboot to the server.

two days ago, I got the error -

svnsync: E200014: Base checksum mismatch on '':

expected: some checksum

actual: other checksum

I couldn't find any solution to that, so what I did was an incremental dump of the missing commits which were in the "Source" and load them into the "Mirror", now I got -

svnsync: E000022: Revision being currently copied (first un-synced revision),

last merged revision (last un-synced revision),

and destination HEAD (same as last un-synced revision) are inconsistent;

have you committed to the destination without using svnsync?

Apperantly the load of the missing commits was a mistake.

Now what I do ? I can't run a simple new sync to a new initialized repo, it is a 100GB it can take days. and I tried it, it kept failing, had to restart from the begging each time.

I can remove a lot of branch/tags but not sure how ? create a new repo and sync it ?

I appreciate if there is a solution to the inconsistent issue

Thanks !

Elyahu
  • 226
  • 1
  • 2
  • 15
  • 1
    I don't understand the two following points: "it is a 100GB it can take days" - None of these indicate a problem; and: "it kept failing" - Why is that? Maybe the issue could be addressed. – Friedrich May 16 '23 at 08:12
  • @Friedrich - I pointed out the size, as any operation like "svnadmin dump", or "svnsync" on all the repo takes so long it fails on the middle of it, for various reasons, like diskspace or hangs because of connection issues, not related, and you have to do all over from the start. – Elyahu May 16 '23 at 14:32
  • I know subversion has this tendency to abort critical long-running operations. You can improve your chances somewhat. There are cheap tools like a USB disc or a dedicated network cable that will bring you a long way. You probably thought of that. It's no solution for your root problem, though. – Friedrich May 16 '23 at 14:41
  • Right @Friedrich it is not solving my issue. – Elyahu May 16 '23 at 14:46

1 Answers1

0

After long investigation, discussing with others and offering a bounty here, I think this question is not resolved and there is no way to fix a broken sync, but only to re-create the repo

Elyahu
  • 226
  • 1
  • 2
  • 15