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

Re: bug report - optimization suggestion for 1.10's new conflict resolver.

From: Stefan Sperling <stsp_at_elego.de>
Date: Tue, 15 Aug 2017 10:59:02 +0200

On Fri, Aug 11, 2017 at 08:58:46PM +0000, Blaine Whittle wrote:
> I'm a big fan of the auto tree conflict resolution feature.
>
> One optimization I'd like to suggest is after a tree conflict is found, and if the two branches share ancestry then branch move history search should be constrained to the start revision of when the branch was made.
>
> When testing the new conflict resolver, I noticed the file / directory move search taking upwards of 10-15 seconds while it was reporting searching tens of thousands of revisions (even though the merge branch was created off the current working branch 4 or 5 revisions prior.)
>

Hi Blaine,

It would be nice to have a specific and self-contained test case which
triggers this behaviour.

But note that, for now, performance is a secondary concern.
In my opinion, correctness should be given priority. This is because we
are trying to trade the huge amount of time humans now spend on conflict
resolution for time which is spent by machines instead.
Manual tree conflict resolution is the biggest time sink across SVN's
entire user base. I have witnessed merges in corporate environments
which took literally days to sort out. So I won't mind if the computer takes
a couple of minutes to resolve a conflict, as long as it achieves its task.

The resolver operates on a per-node basis. So when it tries to find a
related file on a different branch, what matters is the lines of history
which can be traced for these specific files. The directory which was
copied to create a branch is never under consideration.
To learn more about the intended behaviour, see:
http://svn.apache.org/repos/asf/subversion/trunk/notes/resolve-moves

I believe there will be quite a few implementation bugs still lurking
which need to be flushed out during testing.
One such bug has already been recorded here:
https://issues.apache.org/jira/browse/SVN-4688

Thanks,
Stefan
Received on 2017-08-15 10:59:44 CEST

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