You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Niko Wilbert <ma...@nikowilbert.de> on 2012/01/18 13:01:31 UTC

E200033 error for "svn copy" on Windows due to case sensitive pathnames (for SVN 1.7)

Hi,

using "svn copy" on Windows 7 with SVN 1.7.1 (1.7.1-SlikSvn-1.7.1-X64)
I got the following error message:

    E200033: database is locked, executing statement 'RELEASE s1'

I pinned it down to a case sensitivity issue with the pathnames. The
following batch script reproduces the error:

mkdir c:\test
svnadmin create c:\test\testrepo
@echo.
@echo We create "Testco" but refer to it as "testco" below.
svn checkout file:///c:/test/testrepo c:\test\Testco
svn mkdir c:\test\testco\testdir
echo test > c:\test\testco\test.txt
svn add c:\test\testco\test.txt
svn commit -m test c:\test\testco
@echo.
@echo Now we get a database error, with the proper case the error vanishes.
svn copy c:\test\testco\test.txt c:\test\testco\testdir\test_copy.txt

Apart from the uninformative error message this is especially a
problem for scripting. Since most programming languages consider
Windows to be case insensitive there is often no easy way to get the
"correct" pathname and paths are often returned with the "wrong"
capitalization (e.g., in Python tempfile.gettempdir() returns an all
lower case string).

Thank you and best regards,
Niko Wilbert

Re: E200033 error for "svn copy" on Windows due to case sensitive pathnames (for SVN 1.7)

Posted by ВарфоломеевИгорь <i3...@mail.ru>.
Niko Wilbert <mail <at> nikowilbert.de> writes:

> 
> using "svn copy" on Windows 7 with SVN 1.7.1 (1.7.1-SlikSvn-1.7.1-X64)
> I got the following error message:
> 
>     E200033: database is locked, executing statement 'RELEASE s1'
> 

I ran into similar situation.
It looks like your script still behaves the same on 
        svn, version 1.8.0 (r1490375);  
	compiled Jun 17 2013, 19:47:41 on x86-microsoft-windows. 
	(Part of Tortoise SVN 1.8.0 x64  <at>  Win7 x64).

Only error message itself sounds a bit different:

svn: E200033: Another process is blocking the working copy database, or the unde
rlying filesystem does not support file locking; if the working copy is on a net
work filesystem, make sure file locking has been enabled on the file server
svn: E200033: sqlite: database is locked (S5)
svn: E200033: Additional errors:
svn: E200033: sqlite: database is locked (S5)




RE: E200033 error for "svn copy" on Windows due to case sensitive pathnames (for SVN 1.7)

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: niko.wilbert@googlemail.com [mailto:niko.wilbert@googlemail.com]
> On Behalf Of Niko Wilbert
> Sent: woensdag 18 januari 2012 13:02
> To: dev@subversion.apache.org
> Subject: E200033 error for "svn copy" on Windows due to case sensitive
> pathnames (for SVN 1.7)
> 
> Hi,
> 
> using "svn copy" on Windows 7 with SVN 1.7.1 (1.7.1-SlikSvn-1.7.1-X64)
> I got the following error message:
> 
>     E200033: database is locked, executing statement 'RELEASE s1'
> 
> I pinned it down to a case sensitivity issue with the pathnames. The
> following batch script reproduces the error:
> 
> mkdir c:\test
> svnadmin create c:\test\testrepo
> @echo.
> @echo We create "Testco" but refer to it as "testco" below.
> svn checkout file:///c:/test/testrepo c:\test\Testco
> svn mkdir c:\test\testco\testdir
> echo test > c:\test\testco\test.txt
> svn add c:\test\testco\test.txt
> svn commit -m test c:\test\testco
> @echo.
> @echo Now we get a database error, with the proper case the error
> vanishes.
> svn copy c:\test\testco\test.txt c:\test\testco\testdir\test_copy.txt

Ok, I can reproduce this and have a possible patch. But I need some time to verify the side effects of fixing this issue.

The problem is caused by a side effect of the issue #3702 'Unable to perform case-only rename on windows' fix.

The fix for this issue makes us see the paths as

svn copy C:\test\testco\test.txt C:\test\Testco\testdir\test_copy.txt

We then open working copy databases for both C:\test\testco and C:\test\Testco to perform a between wc copy operation.

Applying a simple fix might break other issues, so I need a bit more time to investigate.

	Bert