pbu...@apache.org writes: > Author: pburba > Date: Tue Dec 6 22:04:22 2011 > New Revision: 1211199 > > URL: http://svn.apache.org/viewvc?rev=1211199&view=rev > Log: > Fix issue #4057 "don't record non-inheritable mergeinfo in shallow merge > if entire diff is within requested depth".
This commit causes merge_tests.py 120 and 124 to fail for BDB repositories on one of the buildbots and on my machine. The tests pass with FSFS repositories. valgrind doesn't give any warnings. On the buildbot: http://ci.apache.org/builders/svn-x64-centos-gcc/builds/5157 On my machine: $ ../../../../src/subversion/tests/cmdline/merge_tests.py 120 --fs-type=bdb ============================================================= Expected 'H' and actual 'H' in disk tree are different! ============================================================= EXPECTED NODE TO BE: ============================================================= * Node name: H Path: __SVN_ROOT_NODE/D/H Contents: N/A (node is a directory) Properties: {'svn:mergeinfo': '/A/D/H:2-6,8'} Attributes: {} Children: 3 ============================================================= ACTUAL NODE FOUND: ============================================================= * Node name: H Path: __SVN_ROOT_NODE/D/H Contents: N/A (node is a directory) Properties: {u'svn:mergeinfo': u'/A/D/H:2-6*,8*'} Attributes: {} Children: 3 Unequal at node H Unequal at node D EXPECTED DISK TREE: svntest.wc.State(wc_dir, { 'C' : Item(), 'B/E/beta' : Item(contents="This is the file 'beta'.\n"), 'B/E/alpha' : Item(contents="This is the file 'alpha'.\n"), 'B/lambda' : Item(contents="This is the file 'lambda'.\n"), 'B/F' : Item(), 'D/H' : Item(props={'svn:mergeinfo':'/A/D/H:2-6,8'}), 'D/H/omega' : Item(contents="New content"), 'D/H/psi' : Item(contents="New content"), 'D/H/chi' : Item(contents="This is the file 'chi'.\n"), 'D/G/rho' : Item(contents="This is the file 'rho'.\n"), 'D/G/tau' : Item(contents="This is the file 'tau'.\n"), 'D/G/pi' : Item(contents="This is the file 'pi'.\n"), 'D/gamma' : Item(contents="This is the file 'gamma'.\n"), 'mu' : Item(contents="This is the file 'mu'.\n"), })ACTUAL DISK TREE: svntest.wc.State(wc_dir, { 'C' : Item(), 'B/E/alpha' : Item(contents="This is the file 'alpha'.\n"), 'B/E/beta' : Item(contents="This is the file 'beta'.\n"), 'B/lambda' : Item(contents="This is the file 'lambda'.\n"), 'B/F' : Item(), 'D/H' : Item(props={'svn:mergeinfo':'/A/D/H:2-6*,8*'}), 'D/H/omega' : Item(contents="New content", props={'svn:mergeinfo':'/A/D/H/omega:2-8'}), 'D/H/psi' : Item(contents="New content", props={'svn:mergeinfo':'/A/D/H/psi:2-8'}), 'D/H/chi' : Item(contents="This is the file 'chi'.\n"), 'D/G/pi' : Item(contents="This is the file 'pi'.\n"), 'D/G/rho' : Item(contents="This is the file 'rho'.\n"), 'D/G/tau' : Item(contents="This is the file 'tau'.\n"), 'D/gamma' : Item(contents="This is the file 'gamma'.\n"), 'mu' : Item(contents="This is the file 'mu'.\n"), })CWD: /home/pm/sw/subversion/obj/subversion/tests/cmdline EXCEPTION: SVNTreeUnequal Traceback (most recent call last): File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/main.py", line 1326, in run rc = self.pred.run(sandbox) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 254, in run return self._delegate.run(sandbox) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 176, in run return self.func(sandbox) File "../../../../src/subversion/tests/cmdline/merge_tests.py", line 16980, in reverse_merge_adds_subtree None, 1, False) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/actions.py", line 1133, in run_and_verify_merge check_props) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/actions.py", line 779, in verify_update singleton_handler_b, b_baton) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/tree.py", line 686, in compare_trees singleton_handler_b, b_baton) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/tree.py", line 686, in compare_trees singleton_handler_b, b_baton) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/tree.py", line 672, in compare_trees raise SVNTreeUnequal SVNTreeUnequal FAIL: merge_tests.py 120: reverse merge adds subtree $ ../../../../src/subversion/tests/cmdline/merge_tests.py 124 --fs-type=bdb ============================================================= Expected '__SVN_ROOT_NODE' and actual '__SVN_ROOT_NODE' in elision_output tree are different! ============================================================= EXPECTED NODE TO BE: ============================================================= * Node name: __SVN_ROOT_NODE Path: __SVN_ROOT_NODE Contents: N/A (node is a directory) Properties: {} Attributes: {} Children: 1 ============================================================= ACTUAL NODE FOUND: ============================================================= * Node name: __SVN_ROOT_NODE Path: __SVN_ROOT_NODE Contents: None Properties: {} Attributes: {} Children: None (node is probably a file) Unequal Types: one Node is a file, the other is a directory ACTUAL ELISION OUTPUT TREE: svntest.wc.State(wc_dir, {})CWD: /home/pm/sw/subversion/obj/subversion/tests/cmdline EXCEPTION: SVNTreeUnequal Traceback (most recent call last): File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/main.py", line 1326, in run rc = self.pred.run(sandbox) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 254, in run return self._delegate.run(sandbox) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 176, in run return self.func(sandbox) File "../../../../src/subversion/tests/cmdline/merge_tests.py", line 17280, in unnecessary_noninheritable_mergeinfo_shallow_merge '--depth', 'files', B_branch_path) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/actions.py", line 1133, in run_and_verify_merge check_props) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/actions.py", line 766, in verify_update elision_output_tree) File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/tree.py", line 694, in compare_trees raise SVNTreeUnequal SVNTreeUnequal FAIL: merge_tests.py 124: shallow merge reaches all neccessary subtrees -- Philip