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

Re: Issue #4476 - Mergeinfo containing r0 makes svnsync and svnadmin dump fail

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Wed, 17 Dec 2014 14:52:58 +0000

I (Julian Foad) wrote on 4th December:
> Julian Foad wrote:
>> ... 'svnsync' ... my current thought is it
>> should 'correct' the mergeinfo by removing the r0 reference.
>
> I have written a test for this, and hacked up code to do this by textual
> substitution. It isn't quite right -- for example it would go wrong if a
> path contained the character sequence ":0", among other issues. I
> ought to rewrite it in the form of a proper mergeinfo parser but one that is
> more lenient than the regular parser.

In http://svn.apache.org/r1646250 I committed a version that also works by textual substitution, but (hopefully) without the above-mentioned issues. This makes svnsync remove r0 references before trying to
commit.

I did look into fixing this a different way, by making a more lenient mergeinfo parser. However, that opens up questions about how to define the syntax for mergeinfo in terms of hard requirements, optional variations, and a canonical form. That might have been a good approach to take when mergeinfo was originally invented, but it seems rather too late to go down that road now.

So is the issue fixed?

* Yes: it should now be possible to svnsync the repository.

* Yes: it should now be possible to dump and load the repository.

* Maybe: 'svnrdump dump' and 'svnrdump load' may have the same problem and should be checked.

* No: the underlying issue has not been addressed, that old mergeinfo that was previously 'working' is still present in repositories but is now being considered 'invalid' with no in-place way to upgrade it.

- Julian
Received on 2014-12-17 15:53:52 CET

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