Paul Burba wrote on Mon, Nov 22, 2010 at 11:13:09 -0500:
> On Fri, Nov 19, 2010 at 9:39 PM, Daniel Shahaf <d.s_at_daniel.shahaf.name> wrote:
> > pburba_at_apache.org wrote on Fri, Nov 19, 2010 at 18:51:45 -0000:
> >> Author: pburba
> >> Date: Fri Nov 19 18:51:44 2010
> >> New Revision: 1036978
> >>
> >> URL: http://svn.apache.org/viewvc?rev=1036978&view=rev
> >> Log:
> >> Cover a new failure use case in the svnsync test for issue #3641 'svnsync
> >> fails to partially copy a repository'.
> >>
> >> * subversion/tests/cmdline/svnsync_tests_data/descend_into_replace.dump:
> >> Add a 4th revision with a replacement without history inside of a copy.
> >>
> >> * subversion/tests/cmdline/svnsync_tests.py:
> >> (commit_a_copy_of_root): Add some comments.
> >> (test_list): Set commit_a_copy_of_root as XFail.
> >>
> >> Modified:
> >> subversion/trunk/subversion/tests/cmdline/svnsync_tests.py
> >> subversion/trunk/subversion/tests/cmdline/svnsync_tests_data/descend_into_replace.dump
> >>
> >> Modified: subversion/trunk/subversion/tests/cmdline/svnsync_tests.py
> >> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svnsync_tests.py?rev=1036978&r1=1036977&r2=1036978&view=diff
> >> ==============================================================================
> >> --- subversion/trunk/subversion/tests/cmdline/svnsync_tests.py (original)
> >> +++ subversion/trunk/subversion/tests/cmdline/svnsync_tests.py Fri Nov 19 18:51:44 2010
> >> @@ -791,7 +791,44 @@ def commit_a_copy_of_root(sbox):
> >> #Testcase for issue 3438.
> >> run_test(sbox, "repo_with_copy_of_root_dir.dump")
> >>
> >> -# issue #3641
> >> +# issue #3641 'svnsync fails to partially copy a repository'.
> >> +# This currently fails because while replacements with history
> >> +# within copies are handled, replacements without history inside
> >> +# copies cause the sync to fail:
> >> +#
> >> +# >svnsync synchronize %TEST_REPOS_ROOT_URL%/svnsync_tests-29-1
> >> +# %TEST_REPOS_ROOT_URL%/svnsync_tests-29/trunk/H
> >> +# Transmitting file data ...\..\..\subversion\svnsync\main.c:1444: (apr_err=160013)
> >> +# ..\..\..\subversion\svnsync\main.c:1391: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_ra\ra_loader.c:1168: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_delta\path_driver.c:254: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_repos\replay.c:480: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_repos\replay.c:276: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_repos\replay.c:290: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_fs_base\tree.c:1258: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_fs_base\tree.c:1258: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_fs_base\tree.c:1236: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_fs_base\tree.c:931: (apr_err=160013)
> >> +# ..\..\..\subversion\libsvn_fs_base\tree.c:742: (apr_err=160013)
> >> +# svnsync: File not found: revision 4, path '/trunk/H/Z/B/lambda'
> >> +#
> >> +# See also http://svn.haxx.se/dev/archive-2010-11/0411.shtml and
> >> +#
> >> +### TODO: Once the above failure is fixed, delete-revprops.expected.dump
> >> +### needs to be updated for this test to PASS!
> >
> > descend_into_replace.expected.dump?
> >
> > Couldn't we update it now --- by manually running whatever svnmucc
> > command creates the r4 we expect svnsync to create?
>
> Hi Daniel,
>
> I'm probably missing something here, but I'm not sure how we could use
> svnmucc to do this. In the test, the sync source is %URL%/trunk/H,
> but r4 in the source repository includes copies from outside of
> /trunk/H:
>
> r4 | pburba | 2010-11-19 12:10:31 -0500 (Fri, 19 Nov 2010) | 1 line
> Changed paths:
> A /trunk/H/Z (from /trunk/A:3)
> R /trunk/H/Z/B
>
> What svnmucc command would we use to create r4 in the destination
> repository? Because the copy sources in r3:4 in the source directory
> are outside of the synced subtree on the target, the changes in r3:4
> in the target have no copy history on the target, but are simply
> additions.
Agreed.
> I suppose we could use a whole slew of svnmucc puts and
> mkdirs to do it, but it's probably easier to simply commit this change
> to the destination repository:
>
> svn export %SVNSYNC_29_ROOT_URL%/trunk/H/Z svnsync_tests-29-1-WC\trunk\H\Z
>
I didn't mean to imply that svnmucc was the only way to make the change;
sorry if that wasn't clear.
> ...and that's what I did to create the new
> descend_into_replace.expected.dump in
> http://svn.apache.org/viewvc?view=revision&revision=1037762
>
> If that doesn't strike you as correct let me know.
>
r1037762 looks good to me.
> Paul
Thanks,
Daniel
Received on 2010-11-22 20:35:21 CET