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

stress.pl fails using FSFS backend

From: Philip Martin <philip_at_codematters.co.uk>
Date: 2004-04-30 23:27:29 CEST

I'm seeing stress.pl failures when using the new FSFS backend. I'm
running two instances

$ .../stress.pl -c -s0
$ .../stress.pl -s0

Here's what the stress.pl -c -s0 instance did

Committed revision 2.
Status:
M 2 wcstress.3751/trunk/bar1/foo2
M 2 wcstress.3751/trunk/foo2
M 1 wcstress.3751/trunk/bar2/foo1
M 1 wcstress.3751/trunk/bar2/foo2
Status against revision: 2
Updating:
At revision 2.
Committing:
Sending wcstress.3751/trunk/bar1/foo2
Sending wcstress.3751/trunk/bar2/foo1
Sending wcstress.3751/trunk/bar2/foo2
Sending wcstress.3751/trunk/foo2 <<<<<<<<<<
Transmitting file data ....
Committed revision 3.
Status:
       * 2 wcstress.3751/trunk/bar1/foo1
M * 3 wcstress.3751/trunk/bar1/foo2
M * 3 wcstress.3751/trunk/bar2/foo1
       * 3 wcstress.3751/trunk/bar2/foo2
M * 2 wcstress.3751/trunk/foo1
M * 3 wcstress.3751/trunk/foo2
Status against revision: 4
Updating:
C wcstress.3751/trunk/foo2
C wcstress.3751/trunk/bar1/foo2
U wcstress.3751/trunk/bar1/foo1
C wcstress.3751/trunk/bar2/foo1
U wcstress.3751/trunk/bar2/foo2
G wcstress.3751/trunk/foo1
Updated to revision 4.
Committing:
../svn/subversion/libsvn_client/commit.c:747: (apr_err=155015)
svn: Commit failed (details follow):
../svn/subversion/libsvn_client/commit_util.c:269: (apr_err=155015)
svn: Aborting commit: '/home/pm/sw/subversion/obj/subversion/tests/wcstress.3751/trunk/foo2' remains in conflict
unexpected commit fail: exit status: 256

and here's what the stress.pl -s0 instance did

Checked out revision 2.
Status:
M 2 wcstress.3769/trunk/foo1
M 2 wcstress.3769/trunk/bar1/foo1
M 2 wcstress.3769/trunk/bar1/foo2
M 2 wcstress.3769/trunk/foo2
Status against revision: 2
Updating:
At revision 2.
Committing:
Sending wcstress.3769/trunk/bar1/foo1
Sending wcstress.3769/trunk/bar1/foo2
Sending wcstress.3769/trunk/foo1
Sending wcstress.3769/trunk/foo2 <<<<<<<<<<
Transmitting file data ....
Committed revision 4.
Status:
M 4 wcstress.3769/trunk/bar1/foo2
M 4 wcstress.3769/trunk/foo2
M 2 wcstress.3769/trunk/bar2/foo1
M 2 wcstress.3769/trunk/bar2/foo2
Status against revision: 4
Updating:
At revision 4.
Committing:
Sending wcstress.3769/trunk/bar1/foo2
Sending wcstress.3769/trunk/bar2/foo1
Sending wcstress.3769/trunk/bar2/foo2
Sending wcstress.3769/trunk/foo2
Transmitting file data ....
Committed revision 5.

In particular note the two lines marked <<<<<<<<<< as they both
involve a modification and commit of r2 trunk/foo2, the first creates
r3 and the second creates r4. The r4 commit should have failed with a
message about trunk/foo2 being out-of-date.

A postmortem shows

$ svn cat -r2 file://`pwd`/repostress/trunk/foo2 | head -5
A0
0,1
A1
1
A2
$ svn cat -r3 file://`pwd`/repostress/trunk/foo2 | head -5
A0
0,1,2
A1
1
A2
$ svn cat -r4 file://`pwd`/repostress/trunk/foo2 | head -5
A0
0,1
A1
1,1
A2

The r3 commit correctly appends ",2" to line 2 and the r4 commit
correctly appends ",1" to line 4, but r4 also clobbers the r3 commit
to line 2.

This problem is repeatable (the failure revision varies) using FSFS,
it doesn't occur using BDB.

-- 
Philip Martin
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Apr 30 23:28:00 2004

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.