> -----Original Message-----
> From: Daniel Shahaf [mailto:danielsh_at_elego.de]
> Sent: zondag 27 maart 2011 0:31
> To: dev_at_subversion.apache.org
> Subject: [PATCH] issue #3469: tree conflict under a directory external
> Issue #3469 is about having merge pull in the addition of A/mu when A/
> is an external. (File modifications work and raise a tree conflict.)
> The following patch attempts to address it by having merge_file_added()
> skip the addition of files under a directory external. Thoughts or +1's?
Your patch contains SVN_DBG() statements and there are easier (and more
performant) ways to check if a node is part of a working copy (e.g. helpers
to check if a path is switched/a wc root).
I would drop the term 'disjoint' as it doesn't really apply after moving to
a single-db working copy system.
This patch introduces +- 2 database transactions for every node tested,
while the wc-root of the merge-target will never change (and will certainly
be the merge target or an ancestor of it).
If you want the cheapest check you should check if the directory of the file
has a working copy root above (or at) the merge-target.
(Performing wc_db queries on a directory is generally cheaper than for files
as we keep a record for each directory in a hashtable and currently a file
can never be in a diffent working copy then it's directory)
Received on 2011-03-27 19:27:54 CEST