Johan Corveleyn <jcorvel_at_gmail.com> writes:
> When 'svn upgrade'-ing a 1.6 working copy with 1.7.4 (SlikSVN), I get
> the following error:
>
> [[[
> C:\Temp\sourcesTest>svn upgrade
> Upgraded '.'
> Upgraded 'uz'
> ...
> svn: E155016: Insufficient NODES rows for
> 'C:\Temp\sourcesTest\.svn\tmp\wcng\uz\mock\TraceElement.java'
> ]]]
>
> I ran cleanup before the upgrade, and 'svn-1.6 status' shows nothing.
>
> Turns out this was reported before on the TortoiseSVN users-list [1],
> but never escalated upstream.
>
> The person who posted that message has also found a way to fix it.
> It's apparently caused by the presence of a .svn-revert file in the
> .svn/props-base directory corresponding to the problem file. Indeed,
> also in my case, such a file is present:
>
> [[[
> C:\Temp\sourcesTest>dir uz\mock\.svn\prop-base
> ...
> 27-04-2011 12:05 81 TraceElement.java.svn-revert
> ]]]
>
> After removing this file, and running 'svn-1.6 cleanup' again to clean
> up remaining locks after the failed upgrade, I can now succesfully
> 'svn upgrade'.
>
> BTW, this error has also been filed in the svn issue tracker [2], but
> I'm not sure if it's exactly the same (reporter says he gets it after
> a clean checkout ... I'm not seeing this; but that might also be a
> misunderstanding, there is no discussion linked from the issue).
>
> Now:
> - Has anyone run into this before?
> - What is a .svn-revert file in .svn/props-base? I have no idea how to
> reproduce such metadata, but maybe if one knows the purpose of such a
> file, one can come up with a scenario on how to recreate it.
.svn-revert files are created by Subversion 1.6 when a versioned file is
deleted and replaced by another versioned file.
svnadmin create repo
svn import -mm repo/format file://`pwd`/repo/f
svn import -mm repo/format file://`pwd`/repo/g
svn co file://`pwd`/repo wc
svn rm wc/f
svn cp wc/g wc/f
.svn-revert files should be removed when reverting the replace, but it
appears there is a bug that allows them to be left behind. The presence
of these extraneous files does cause the 4043 error:
svn1.6 co file://`pwd`/repo wc
echo END > wc/.svn/prop-base/f.svn-revert
svn1.7 upgrade wc
svn: E155016: Insufficient NODES rows for '/home/pm/sw/subversion/obj/wc/.svn/tmp/wcng/f'
> - Following from the previous question: is this a real 1.6 corruption
> that can't be upgraded, or is this a legitimate 1.6-situation, one
> which the 1.7 upgrade should/could support? In case of the latter:
> let's file an issue and get this fixed in the 'upgrade' code so
> there's one less edge case users can run into when upgrading.
>
>
> [1] http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2854418
> [2] http://subversion.tigris.org/issues/show_bug.cgi?id=4043
> ("Insufficient NODES rows" on svn upgrade)
>
> --
> Johan
>
--
Philip
Received on 2012-04-17 14:05:06 CEST