We have successfully set up svnsync with the write-through proxing.
Our master is in Europe, and our write through proxy is in the US.
We have about 30 repositories being mirrored, and svnsync is working fine.
We have noticed that our network connectivity between the US and
Europe is not exactly as reliable as we would like.
About once per day, one of our repositories will loose
synchronization. It's always a different repository, and our theory
is that the network connection between the US and Europe is being
temporarily interrupted with the result that the svnsync process times
out. Normally this is not an issue, as we have a cron task that
watches for the svnsync lock being static and un-removed for more than
24h, and it will purge stale sync locks where the rev number has not
incremented and the repository disk usage has stayed constant for more
than 24h. Usually after purging the sync-lock the next commit will
pick up where the previous left off...
What we have noticed is that approx once per week, the network
disconnect occurs inbetween committing the transaction and updating
the metadata on rev 0, e.g. svnsync has copied rev 60782, but the
metadata has not been updated before svnsync's connection terminated.
So the next time svnsync runs it sees that the repository has a higher
transaction number than the last copied revision, and as a result it
bombs out, and that repository falls out of sync.
Currently, our cron script sends an email to inform that a repository
has fallen out of sync, I ssh in to the US mirror and roll back the
current transaction to the last-copied (by deleting the files in the
FSFS system) and trigger an svnsync again.
I do not like having to do this by hand. It is error prone, and AFAIK
once I upgrade to SVN version 1.6, I will no-longer be able to perform
the roll-back if I've packed the FSFS shards.
*** Question ***
Is there any way we could get (for 1.7) into svnadmin the ability to
purge all transactions after revision N. We have repositories with
over 100k transactions and dump/load is just not realistic... and we'd
really like to have those repositories packed too!
Such a feature would allow us to have our cron script revert back to
the last known svnsync update, purge the svnsync lock
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-11-13 10:11:57 CET