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

Re: svn commit: r1036978 - in /subversion/trunk/subversion/tests/cmdline: svnsync_tests.py svnsync_tests_data/descend_into_replace.dump

From: Paul Burba <ptburba_at_gmail.com>
Date: Mon, 22 Nov 2010 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. 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

...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.

Paul
Received on 2010-11-22 17:13:46 CET

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