[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: simultaniously commit sibling directories

From: Bert Huijben <rhuijben_at_sharpsvn.net>
Date: Wed, 20 May 2009 10:34:55 +0200

[Second reply.. the first one was not to the list :(]

> -----Original Message-----
> From: Jack Bates [mailto:ms419_at_freezone.co.uk]
> Sent: woensdag 20 mei 2009 1:36
> To: dev_at_subversion.tigris.org
> Subject: simultaniously commit sibling directories
>
> If I simultaneously commit sibling directories in a working copy, I get
> an error about the working copy locked - but I can work around by moving
> the directories out of the working copy, committing them simultaneously,
> then moving them back. Can the working copy locked error be dropped,
> saving me from having to work around?
>
> I encounter this error when multiple cron jobs which run in parallel
> commit sibling directories. Occasionally the timing is such that two
> cron jobs commit sibling directories simultaneously.
>
> jablko_at_tad:~$ svnadmin create test
> jablko_at_tad:~$ svn co file:///`pwd`/test wc
> Checked out revision 0.
> jablko_at_tad:~$ svn mkdir wc/a wc/b
> A wc/a
> A wc/b
> jablko_at_tad:~$ svn ci wc -m ''
> Adding wc/a
> Adding wc/b
>
> Committed revision 1.
> jablko_at_tad:~$ svn mkdir wc/a/c wc/b/d
> A wc/a/c
> A wc/b/d
> jablko_at_tad:~$ (cd wc/a && svn ci -m '' &) && (cd wc/b && svn ci -m '' &)
> jablko_at_tad:~$ svn: Working copy '/home/jablko/wc' locked
> svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for
> details)
> Adding a/c
>
> Committed revision 2.

Both commits need access to the parent directory of the commit to update
information about the subdirectory that is contained in the parent. We can't
fix this issue for the current working copy library as there is a real
concurrent access race condition if we would remove the lock on the parent
directory.

For Subversion 1.7 we are working on a new working copy data layer that
centralizes all working copy data. This might resolve this issue for you,
but it is too soon to tell.

        Bert

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2327248
Received on 2009-05-20 10:35:19 CEST

This is an archived mail posted to the Subversion Dev mailing list.