Mark Phippard <markp...@gmail.com> writes: > Just to clarify. I had two Terminal windows open. In one of them, I > was in the /branches/2.3.x folder and ran svn up. > > In the other, I was in the /trunk folder and ran svn up. This is the > one that failed and the error message said: > > svn: E155004: Working copy '/Users/markphip/work/svnedge' locked. > subversion/libsvn_wc/wc_db.c:10690: (apr_err=155004) > svn: E155004: '/Users/markphip/work/svnedge/branches' is already locked. > svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details) > > Why did it lock the folder above /branches if /branches is the parent > of what I was updating?
Locks in 1.7 are recursive by default, which means that when the /trunk update attempts to lock / it ties to get a recursive lock that includes /branches and thus fails. I suppose wc could improve concurrency by getting update to take two locks, a non-recursive lock on parent and a recursive lock on the target. -- uberSVN: Apache Subversion Made Easy http://www.uberSVN.com