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

[repost] Re: Commit failure: checksum mismatch

From: James Van Artsdalen <james-tigris_at_jrv.org>
Date: 2003-10-07 03:36:08 CEST

One more try, with another sighting. Same descriptilon as below.
Four scripts, all at around 1615 iterations at failure.
Uniprocessor Windows XP.

Every sighting has looked like this:

1. Two runners fail, not just one.
2. The "actual" checksum is always the same.
3. The "expected" checksum is different.

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 "e551":
   expected: b28daf01e7440785bc7739fe1b4fc418
     actual: b14cae85b7140e9e9cfab34d5997235b

and

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 "e552":
   expected: 62880bba2bc50716e52617fe73297f51
     actual: b14cae85b7140e9e9cfab34d5997235b

---
I saw this again, this time on a uniprocessor Windows XP w/SP1.
The test setup is otherwise identical to the original setup described below,
except that SVN is modified to retry renames an infinite number of times (and log
the actual number of retriers required).
Each script runner completed about 1,400 iterations before failure.
Two runners stopped after detecting that others had stopped, and two
got errors from SVN at about the same time:
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 "c76c":
   expected:  6e1d9ac9bddcf69d3340171a7c3f4253
     actual:  d796c11eb1c7e007b86a70b7727b67b7
and
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 "c76d":
   expected:  c18ad686d163932a7d169ba9de03f35e
     actual:  d796c11eb1c7e007b86a70b7727b67b7
> From: kfogel@collab.net
> Date: 02 Oct 2003 12:56:02 -0500
> 
> james-tigris@jrv.org writes:
> > 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.
> 
> Just a sanity check: "all service packs" includes the one mentioned
> here?
> 
>    http://subversion.tigris.org/project_faq.html#windows-xp-server
> 
> (I know you've probably already been there, just pointing it out on
> the unlikely chance that you missed it somehow...)
> 
> Also, Berkeley DB prior to 4.2 has been reported to interact badly
> with real dual processor systems (sorry I don't have the thread handy,
> but I think there are references to it on this list).  I don't know
> what a pseudo dual processor is -- pipelining on steroids? -- but can
> you shut it off and try to reproduce with exactly one regular
> processor?
> 
> Finally, a side note: I doubt very much this is related to the problem
> mentioned in
> 
>    http://www.contactor.se/~dast/svn/archive-2003-10/0095.shtml
> 
> but hey, anything's worth looking into when all sensible leads have
> failed.
> 
> -Karl
> 
>  
> > 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 Tue Oct 7 06:17:32 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.