During testing of the ra_serf code, and more specifically when running
merge_tests 63 I encountered following error:
CMD: svn.exe cp
http://localhost/svn-test-work/repositories/merge_tests-63/A
http://localhost/svn-test-work/repositories/merge_tests-63/A_copy -m
"create a new copy of A"
ACTUAL STDERR:
..\..\..\subversion\libsvn_ra_serf\util.c:462: (apr_err=160043)
svn: SQL logic error or missing database
Extract from apache's error log:
[Thu Aug 23 10:20:36 2007] [error] [client 127.0.0.1] Could not MERGE
resource
"/svn-test-work/repositories/merge_tests-63/!svn/act/fd5ccbd0-caa5-f547-ab59-8c882bafcc13"
into "/svn-test-work/repositories/merge_tests-63". [409, #0]
[Thu Aug 23 10:20:36 2007] [error] [client 127.0.0.1] An error occurred
while committing the transaction. [409, #160043]
[Thu Aug 23 10:20:36 2007] [error] [client 127.0.0.1] SQL logic error or
missing database [409, #160043]
When I tried to delete the repository Windows wouldn't allow me to,
indicating the file was still open by some process. That turned out to
be the apache process.
This was at 23/08, since then I rebuilt both svn client and server and I
can't reproduce this issue anymore. So maybe the server has been fixed
since, but equally likely it isn't.
In mergeinfo-sqlite-index.c/svn_fs_mergeinfo__get_mergeinfo(), but also
in svn_fs_mergeinfo__update_index and
svn_fs_mergeinfo__get_mergeinfo_for_tree the call to sqlite3_close is
not in the 'finally' path (in java terms), so whenever there's an error
accessing the database it's not closed correctly.
Does this make sense?
Lieven
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Aug 26 09:59:38 2007