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

Re: protorev file handling in svn_fs_commit_txn

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Tue, 26 Nov 2013 12:36:34 +0000

Daniel Shahaf <d.s_at_daniel.shahaf.name> writes:

> Philip Martin wrote on Tue, Nov 26, 2013 at 11:53:05 +0000:
>> The result is a revision file that contains duplicate nodes, multiple
>> change lists, etc. The problem is likely even worse if changes are
>> made to the transaction between the calls to svn_fs_commit_txn.
> Assuming there are no changes to the transaction, is there a correctness
> problem resulting? Or is the problem simply one of wasted space, i.e.,
> the resulting revision file would contain N copies of the change list
> but only one copy would be pointed to?

I don't know, I expect it depends on implementation details of the FSFS
code that reads revision files. I've attached a repository in which I
have triggered the problem on this commit:

   svnadmin create repo
   svn import repo/format file://`pwd`/repo/f

so it contains r1 with one file rep, two nodes 'f', two nodes '/', two
change lists and two final offset lines. The two 'f' nodes refer to the
single file rep and are the same but the two '/' nodes refer to
different 'f' nodes and so are different.

"svnadmin verify" and "svnadmin dump" do not report errors.

"svnlook tree --show-ids" shows the second set of nodes and ignores the
first set.

Philip Martin | Subversion Committer
WANdisco // *Non-Stop Data*
Received on 2013-11-26 13:37:10 CET

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