Jamma Tino Schwarze <subversion.lists_at_tisc.de> writes:
> During testing svnsync I came across an issue which may be reproduced
> using the attached test script. It creates a repository (requires
> svnmucc for the critical step), then svnsync's the /mf path within the
> repository.
[...]
> I googled for this issue and looked at the issue tracker but couldn't
> come up with any matching bug report. I tested against SVN 1.6.11 and
> will try again using trunk.
>
> Is it a bug?
Yes. It's reproducible with trunk. Please file an issue.
My slightly simplified recipe:
svn mkdir -mm $url/A
svn mkdir -mm $url/A/B
svn mkdir -mm $url/A/B/C
svn mkdir -mm $url/X
svnmucc -mm cp head $url/A $url/H rm $url/H/B cp head $url/X $url/H/B
gives me this log:
------------------------------------------------------------------------
r5 | pm | 2010-05-18 17:53:46 +0100 (Tue, 18 May 2010)
Changed paths:
A /H (from /A:4)
R /H/B (from /X:4)
------------------------------------------------------------------------
r4 | pm | 2010-05-18 17:53:46 +0100 (Tue, 18 May 2010)
Changed paths:
A /X
------------------------------------------------------------------------
r3 | pm | 2010-05-18 17:53:46 +0100 (Tue, 18 May 2010)
Changed paths:
A /A/B/C
------------------------------------------------------------------------
r2 | pm | 2010-05-18 17:53:46 +0100 (Tue, 18 May 2010)
Changed paths:
A /A/B
------------------------------------------------------------------------
r1 | pm | 2010-05-18 17:53:46 +0100 (Tue, 18 May 2010)
Changed paths:
A /A
------------------------------------------------------------------------
and the svnsync fails with
svnsync init $copy $url/H
svnsync sync $copy
../src/subversion/svnsync/main.c:1333: (apr_err=160013)
../src/subversion/svnsync/main.c:1278: (apr_err=160013)
../src/subversion/libsvn_ra/ra_loader.c:1079: (apr_err=160013)
../src/subversion/libsvn_delta/path_driver.c:254: (apr_err=160013)
../src/subversion/libsvn_repos/replay.c:446: (apr_err=160013)
../src/subversion/libsvn_repos/replay.c:242: (apr_err=160013)
../src/subversion/libsvn_repos/replay.c:242: (apr_err=160013)
../src/subversion/libsvn_repos/replay.c:175: (apr_err=160013)
../src/subversion/libsvn_fs_fs/tree.c:1010: (apr_err=160013)
../src/subversion/libsvn_fs_fs/tree.c:1010: (apr_err=160013)
../src/subversion/libsvn_fs_fs/tree.c:825: (apr_err=160013)
../src/subversion/libsvn_fs_fs/tree.c:667: (apr_err=160013)
svnsync: File not found: revision 5, path '/H/B/C'
The replay editor attempts to convert the copy into an add, since the
copy source is outside the sync, but as it traverses the copied tree
something goes wrong. I'm not sure whether it should be looking for
/H/B/C in the source, rather than the destination, or whether it
should skip the deleted subdir.
--
Philip
Received on 2010-05-18 19:09:42 CEST