You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Julian Foad <ju...@wandisco.com> on 2010/06/18 10:30:15 UTC
Issue #3623, foreign-repo merge loses props on added file
Hi Mike.
I reviewed r939375,r939376 proposed for back-port to 1.6.x, to fix issue
#3623 "Files added via merge from foreign repositories lose properties"
<http://subversion.tigris.org/issues/show_bug.cgi?id=3623>.
The fix looks fine and works properly, and I'll approve it.
Just a small concern about r939375 which extends the existing test
function (merge_tests 88 on 1.6.x, merge_tests 72 on current trunk). It
looks like it unintentionally removes a check. See the "-" line in the
diff below?
[[[
$ command svn log --diff ^/subversion/trunk -c939375
------------------------------------------------------------------------
r939375 | cmpilato | 2010-04-29 17:47:55 +0100 (Thu, 29 Apr 2010) | 7 lines
Extend a test to address the concerns of issue #3623.
* subversion/tests/cmdline/merge_tests.py
(foreign_repos): Extend this test a bit to really verify that what
was merged from a foreign repos, and committed, is *really* what we
expected.
Index: subversion/tests/cmdline/merge_tests.py
===================================================================
[...]
# repository. Not only should the merge succeed, but the results on
# disk should match those in our first working copy.
### TODO: Use run_and_verify_merge() ###
svntest.main.run_svn(None, 'merge', '-c2', sbox.repo_url, wc_dir2)
svntest.main.run_svn(None, 'ci', '-m', 'Merge from foreign repos', wc_dir2)
- svntest.actions.verify_disk(wc_dir2, expected_disk, True)
+
+ # Now, let's make a third checkout -- our second from the original
+ # repository -- and make sure that all the data there is correct.
+ # It should look just like the original EXPECTED_DISK.
+ wc_dir3 = sbox.add_wc_path('wc3')
+ svntest.actions.run_and_verify_svn(None, None, [], 'checkout',
+ sbox2.repo_url, wc_dir3)
+ svntest.actions.verify_disk(wc_dir3, expected_disk, True)
]]]
Was that intended?
While I'm there, I would suggest that when we test a pair of files (or
dirs), we should test one with props and one without, rather than both
with props. So, instead of expected_disk containing:
'Q' : Item(props={'foo':'bar'}),
'A/D/G/Z' : Item(props={'foo':'bar'}),
'A/D/G/Z/zeta' : Item(contents=zeta_contents,props={'foo':'bar'}),
'A/C/fred' : Item(contents=fred_contents,props={'foo':'bar'}),
it would contain
'Q' : Item(),
'A/D/G/Z' : Item(props={'foo':'bar'}),
'A/D/G/Z/zeta' : Item(contents=zeta_contents),
'A/C/fred' : Item(contents=fred_contents,props={'foo':'bar'}),
If that all sounds OK, I'll re-instate the "-" line above and remove the
props from one file and one dir, like this, in the trunk version of the
test. I don't think we need to back-port these two tweaks.
(I tested 1.6.x locally with those tweaks and it passed.)
- Julian
Re: Issue #3623, foreign-repo merge loses props on added file
Posted by Julian Foad <ju...@wandisco.com>.
C. Michael Pilato wrote:
> Julian Foad wrote:
> > Hi Mike.
> >
> > I reviewed r939375,r939376 proposed for back-port to 1.6.x, to fix issue
> > #3623 "Files added via merge from foreign repositories lose properties"
> > <http://subversion.tigris.org/issues/show_bug.cgi?id=3623>.
> >
> > The fix looks fine and works properly, and I'll approve it.
> >
> > Just a small concern about r939375 which extends the existing test
> > function (merge_tests 88 on 1.6.x, merge_tests 72 on current trunk). It
> > looks like it unintentionally removes a check. See the "-" line in the
> > diff below?
>
> That check was removed intentionally as a minor optimization. While it's
> fine to verify the disk tree at the point the test, the whole reason I
> needed to extend the test was that successful verification at that stage
> wasn't enough to verify that the bug was fixed. So I had the test do more
> work and delayed disk verification until later. But it's fine with me if
> you want to reinstate it.
Seems worth keeping, as the test is not just for testing the issue #3623
problem, so committed in r955999.
- Julian
Re: Issue #3623, foreign-repo merge loses props on added file
Posted by "C. Michael Pilato" <cm...@collab.net>.
Julian Foad wrote:
> Hi Mike.
>
> I reviewed r939375,r939376 proposed for back-port to 1.6.x, to fix issue
> #3623 "Files added via merge from foreign repositories lose properties"
> <http://subversion.tigris.org/issues/show_bug.cgi?id=3623>.
>
> The fix looks fine and works properly, and I'll approve it.
>
> Just a small concern about r939375 which extends the existing test
> function (merge_tests 88 on 1.6.x, merge_tests 72 on current trunk). It
> looks like it unintentionally removes a check. See the "-" line in the
> diff below?
That check was removed intentionally as a minor optimization. While it's
fine to verify the disk tree at the point the test, the whole reason I
needed to extend the test was that successful verification at that stage
wasn't enough to verify that the bug was fixed. So I had the test do more
work and delayed disk verification until later. But it's fine with me if
you want to reinstate it.
--
C. Michael Pilato <cm...@collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand