Trent Fisher <trent.fis...@oracle.com> writes: > I have an svnsync replica which is running into this error when I > sync: "svnsync: E210008: Error while replaying commit". > > I was able to work around the problem by doing an svnadmin dump of the > troublesome revision and loading it on the other server, then tweaking > the svnsync properties. However, I decided to spend a bit of time > trying to dig down to the root cause (since this error pops up > periodically). > > I am doing the svnsync via an svn+ssh url, doing the svnsync as a > pull, and I am running as the owner of the repository (on both hosts), > so there should be no permissions issues. Both machines are running > SVN 1.8.9 on Linux. To narrow it down to whether the problem is on > the sending or the receiving side (the error message implies the > latter), I ran svnrdump: > > svnrdump dump --incremental -r511 svn+ssh://scmadm@somehost/some/svn/repos > svnrdump: E210008: Error while replaying commit > > Ok, so I narrowed it down to being on the sending side. I ran svnrdump > on the server itself using a file: url, and that worked. Then I > brought up an svnserve process and tried using an svn: url, and that > worked. So it seems that SSH is getting in the way somehow. I ran > the first svnrdump with "--config-option config:tunnels:ssh='$SVN_SSH > ssh -vvv'" but couldn't see anything wrong from what I could decipher. > > I need to move on to other tasks for now, but I was hoping that > someone may have some insights as to what might be going wrong here, > or at least some pointers as to what to try next. It would be awfully > helpful if the error message actually said what was wrong and there > were a way to get more verbose/debugging output from svnsync and > svnrdump.
E210008 is SVN_ERR_RA_SVN_EDIT_ABORTED. Not sure how best to debug that, the cleartext across the tunnel would be interesting but using some sort on non-encrypting tunnel might make the problem go away. It's possible that svnserve logging will show something of use. I don't know of any simple way to enable logging over svn+ssh but you can force it as follows: - create a script on the server containing: #!/bin/sh /path/to/svnserve --log-file /path/to/log-file -t - cause svnrdump to invoke the script instead of svnserve: svnrdump dump --incremental -r511 \ svn+ssh://server/some/svn/repos \ --config-option config:tunnels:foo='ssh -q scmadm@somehost /path/to/script' (The hostname in the URL is a placeholder, the tunnel defines which server to use.) -- Philip Martin | Subversion Committer WANdisco // *Non-Stop Data*