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

Re: #4129 is reproducible Re: predecessor count for the root node-revision is wrong message

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Mon, 19 Mar 2012 18:24:40 +0000

"C. Michael Pilato" <cmpilato_at_collab.net> writes:

> On 03/19/2012 01:25 PM, Philip Martin wrote:
>> Philip Martin <philip.martin_at_wandisco.com> writes:
>>
>>> I can reproduce ove ra_local:
>>>
>>> svnadmin create repo
>>> svn mkdir -mm file://`pwd`/repo/A
>>> svn mkdir -mm file://`pwd`/repo/B
>>> svn co file://`pwd`/repo wc1
>>> svn co file://`pwd`/repo wc2
>>> svn ps svn:mergeinfo /P:2 wc1/A
>>> svn ps svn:mergeinfo /Q:2 wc2/B
>>> svn mkdir wc1/X
>>> svn mkdir wc2/Y
>>> svn ci -mm wc1 & svn ci -mm wc2 & wait
>>>
>>> Gives:
>>>
>>> Sending wc1/A
>>> Adding wc1/X
>>> Sending wc2/B
>>> Adding wc2/Y
>>>
>>> Committed revision 3.
>>> svn: E160004: Commit failed (details follow):
>>> svn: E160004: predecessor count for the root node-revision is wrong: found 3, committing r4
>
> Is this problem specific to the FSFS backend?

Yes, I think it is.

For BDB the dag_node_t type in dag.c doesn't have a node_revision
member. When update_ancestry does svn_fs_bdb__put_node_revision it
writes to the database and subsequent svn_fs_bdb__get_node_revision will
see the updated value.

For FSFS the svn_fs_fs__put_node_revision call writes to the
transactions subdir but the in-memory node_revision doesn't get changed.

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com
Received on 2012-03-19 19:25:17 CET

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