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

Re: Commit failure: checksum mismatch

From: <james-tigris_at_jrv.org>
Date: 2003-09-30 23:02:47 CEST

A followup to my earlier note. The repository gets an error when I
try to dump it:

* Dumped revision 3846.
c:\src\subversion\src\subversion\libsvn_fs\reps-strings.c:835: (apr_err=160004)
svn: Filesystem is corrupt
svn: txn_body_read_rep: checksum mismatch on rep "8es6":
   expected: e7d4067aa21f61a7bbe951b5e52e5267
     actual: 07d36b3d270f5ab63eca812084d28d54

To: dev@subversion.tigris.org
Subject: Commit failure: checksum mismatch

SVN revision 7183 (~ 0.30.0), locally compiled, without local changes
except debug code after the success return path in apr_file_rename ()
in apr\file_io\win32\open.c (i.e., in the error path, not encountered
in this test). Test system is Windows XP, all service packs, with P-4
Hyper-thread enabled (pseudo dual processor). DB 4.0.14. Note that
this was with a local file:// repository on a local USB2 disk.

Four instances of the script at the end were run: "commit.cmd X 100".
Each script instance uses a separate local directory and separate
directory repository. After each commit each of the 100 files is
changed and the loop repeated.

One runner error after 1,017 iterations:

Sending x99
Transmitting file data .c:\src\subversion\src\subversion\libsvn_client\commit.c:727: (apr_err=160004)
svn: Filesystem is corrupt
svn: Commit failed (details follow):
c:\src\subversion\src\subversion\libsvn_fs\reps-strings.c:751: (apr_err=160004)
svn: svn_fs__rep_contents: checksum mismatch on rep "8es7":
   expected: c2158c386b2587af8121f71cff2550ae
     actual: 07d36b3d270f5ab63eca812084d28d54

The other runner error after 907 iterations. Note that the scripts
stop after any instance encounters an error, so this error happened at
about the same time as the above.

Sending x99
Transmitting file data ....................................................................................................c:\src\subversion\src\subversion\libsvn_client\commit.c:727: (apr_err=160004)
svn: Filesystem is corrupt
svn: Commit failed (details follow):
c:\src\subversion\src\subversion\libsvn_fs\tree.c:2586: (apr_err=160004)
svn: Commit succeeded; deltification failed
c:\src\subversion\src\subversion\libsvn_fs\reps-strings.c:835: (apr_err=160004)
svn: txn_body_read_rep: checksum mismatch on rep "8es6":
   expected: e7d4067aa21f61a7bbe951b5e52e5267
     actual: 07d36b3d270f5ab63eca812084d28d54

The other two runners stopped at 1,014 and 910 iterations because the
above runners stopped, not because of any error.

The NT test script:

F:\svn-test\d>if errorlevel 1 goto stop
setlocal
set FILES=%2
rem set REPOS=http://127.0.0.1/svn/svn-test
set REPOS=file:///svn-test/repos
set COUNT=0
set STOPPER=svn-stop
set SVN=C:\src\subversion-debug\src\Debug\subversion\clients\cmdline\svn.exe
set SVNADMIN=C:\src\subversion-debug\src\Debug\subversion\svnadmin\svnadmin.exe

if not exist repos mkdir repos
if not exist repos\db %SVNADMIN% create repos

pause

mkdir %1
set I=1
:mkfiles
echo %COUNT% > %1\x%I%
set /a I=%I% + 1
if %I% leq %FILES% goto mkfiles

%SVN% import -m - %1 %REPOS%/%1
rm -rf %1
%SVN% checkout %REPOS%/%1 %1
cd %1

:loop
set /a COUNT=%COUNT% + 1
title %1 commit %COUNT%

set I=1
:files
if exist ..\%STOPPER% goto exit
echo %COUNT% > x%I%
set /a I=%I% + 1
if %I% leq %FILES% goto files

%SVN% commit -m -
if errorlevel 1 goto stop
if not exist ..\%STOPPER% goto loop

:stop
if exist ..\%STOPPER% goto exit

echo > ..\%STOPPER%

:exit

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Oct 1 05:35:38 2003

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.