On Fri, Feb 08, 2013 at 03:45:16PM +0200, Marius Gedminas wrote:
> On Fri, Feb 08, 2013 at 11:44:40AM +0100, Andreas Krey wrote:
> > On Thu, 07 Feb 2013 23:00:33 +0000, Marius Gedminas wrote:
> > ...
> > > The cron script runs svnsync every 5 minutes. 
> > 
> > Do you make sure svnsync isn't started anew when the previous instance
> > hasn't terminated yet? (I don't know if that matters.)
> 
> No.  Here's my /etc/cron.d/zope-svn-mirror:
> 
>   # Mirror the Zope repository
>   */5 * * * * root /usr/local/sbin/update-zope-mirror > /dev/null
> 
> and here's my /usr/local/sbin/update-zope-mirror:
> 
>   #!/bin/sh
>   /usr/bin/sudo -u syncuser /usr/bin/svnsync sync file:///stuff/zope-mirror
> 
> It's possible that a temporal overlap happened.
> 
> Marius Gedminas

I cannot tell you what happened here and why the revisions in the
mirro are empty. That sure is concerning.

However there are known race conditions in svnsync in Subversion 1.6.
See http://subversion.apache.org/docs/release-notes/1.7.html#atomic-revprops

So you should definitely wrap svnsync in a tool like lockfile (part of
procmail), or upgrade to 1.7.

It would be interesting to know if this problem also appears with
svnsync from 1.7. Note that with file:// URLs the svnsync you are running
is both client and server from the mirror repository's point of view.
So the version running on svn.zope.org doesn't really matter (though I
checked, and it appears to be severely outdated...)

Reply via email to