On 24.05.2013 09:32, Tobias Bading wrote: > Hi Philip, > > thanks for your suggestions. I tried to dig a little deeper... and now > things are getting even more strange. > > First, I tried to delete everything after the "update -r2" from > no_spurious_conflict so I could make a copy of the wc before the > merge. Guess what? Executing the "merge -c4 ^/" in a shell after > running the test worked perfectly fine. So I removed the "update -r2" > from no_spurious_conflict as well. Running "update -r2" and "merge -c4 > ^/" in a shell after the test worked perfectly fine again. > > Obviously, the test script does something differently than me in a > shell. My python ain't that good, but I managed to come up with these > lines: > > exit_code, out, err = svntest.actions.run_and_verify_svn(None, None, > [], 'update', '-r2', wc_dir) > print "update exit_code: ", exit_code > print "update out: ", out > print "update err: ", err > exit_code, out, err = svntest.actions.run_and_verify_svn(None, None, > [], 'merge', '-c4', '^/', wc_dir) > print "merge exit_code: ", exit_code > print "merge out: ", out > print "merge err: ", err > > Now the test prints: > > update exit_code: 0 > update out: ["Updating > 'svn-test-work/working_copies/diff_tests-60':\n", 'U > svn-test-work/working_copies/diff_tests-60/3449_spurious\n', 'Updated > to revision 2.\n'] > update err: [] > merge exit_code: 0 > merge out: ["--- Merging r4 into > 'svn-test-work/working_copies/diff_tests-60':\n", 'U > svn-test-work/working_copies/diff_tests-60/3449_spurious\n', "--- > Recording mergeinfo for merge of r4 into > 'svn-test-work/working_copies/diff_tests-60':\n", ' U > svn-test-work/working_copies/diff_tests-60\n'] > merge err: [] > > So, the update claims to have updated 3449_spurious to r2 and the > merge claims to have merged c4 into that file. As it turns out, both > claims seem correct. The contents of 3449_spurious look correct. > However, "svn status" and "svn diff" run afterwards both swear that > the only local modification of the working copy is a property change > at the wc root, the addition of the svn:mergeinfo property. > > Any idea what's going on here? What could affect the python script in > a way that its merge is messed up, although the same merge run by hand > works fine?
Are you by any chance running the tests with the sleep for timestamps disabled? That could cause the effects you're seeing, especially combined with running on a FAT filesystem (which has 2-second timestamp granularity). -- Brane -- Branko Čibej Director of Subversion | WANdisco | www.wandisco.com