On Wed, May 07, 2014 at 10:50:59AM -0400, James Cloos wrote:
> I occasionally get syncs which are stuck because something killed the
> process before it could release its lock.
>
> The only way I could get past that was to edit revprops/0/0 and remove
> the svn:sync-lock lines.
>
> Is there a command which will remove such stale svnsync locks?
>
> Neither svn, svnadmin nor svnsync seem to be able to do so. Or even to
> list such locks.
>
> Several of the remote repos which I'd like to sync fail part way through
> with errors like:
>
> svnsync: E210008: Error while replaying commit
>
> Git-svn is able to clone such repos, including the commits which svnsync
> cannot replay, so it doesn't seem to be due to any corruption.
>
> Is there any way past the error, without alternate access to the remote?
>
> -JimC
> --
> James Cloos <cloos_at_jhcloos.com> OpenPGP: 0x997A9F17ED7DAEA6
I assume you're running >= 1.7 on both svnsync client and the server?
If so, I'm very happy to see that fixes we made in SVN 1.7 seem to
prevent corruption issues users were exposed to with 1.6 and earlier.
http://subversion.apache.org/docs/release-notes/1.7.html#atomic-revprops
Of course, a stale lock can cause syncs to stall. It would be very
nice to know what killed the proccess, so if you are able to invest
more into finding the root cause this might be very helpful to us.
Instead of directly editing a file in the repository (which is something
end users should never do in any case!) you should be able to use svn propdel
with the --revprop option to remove the stale lock:
svn propdel --revprop -r0 svn:sync-lock REPOS_URL
Is "Error while replaying commit" really all you see in the error message?
If so, the error message could be improved.
Received on 2014-05-16 20:11:07 CEST