On Tue, 2011-05-03 at 18:02 +0200, Bert Huijben wrote: > > > -----Original Message----- > > From: Hyrum K Wright [mailto:hy...@hyrumwright.org] > > Sent: dinsdag 3 mei 2011 17:49 > > To: Julian Foad > > Cc: Philip Martin; dev@subversion.apache.org > > Subject: Re: svn info --recursive isn't reporting tree-conflict-only nodes > > > > On Tue, May 3, 2011 at 10:19 AM, Julian Foad <julian.f...@wandisco.com> > > wrote: > > > On Tue, 2011-05-03 at 14:36 +0100, Philip Martin wrote: > > >> Julian Foad <julian.f...@wandisco.com> writes: > > >> > > >> > I found a bug in "svn info -R": it doesn't report a node that has a > tree > > >> > conflict but otherwise is nonexistent, except if this node is the > root > > >> > node of the requested target path. > > >> > > >> I think that's an actual-only node. See > > >> > > >> http://subversion.tigris.org/issues/show_bug.cgi?id=3779 > > >> > > >> which says that we need to ensure that commands behave sensibly on > > >> actual-only nodes. > > > > > > Yes. > > > > > > The 'info' code uses svn_wc__internal_walk_children(), and makes a > > > special case of checking for a tree conflict on the target node if that > > > walk function returns a NOT FOUND error. But 'info' doesn't check for > > > tree conflicts on other unvisited leaf nodes that may exist as > > > actual-only nodes. > > > > > > One way or another, 'info' is going to have to walk a tree of nodes that > > > includes actual-only nodes. It could either do this itself or we could > > > have a walker function that does that. It's logically re-usable > > > functionality (even if 'info' is currently the only user) so we should > > > have some kind of walker function that does that. So I'll look at > > > adding this functionality into svn_wc__internal_walk_children(). > > > > That's my "gut feeling" as well. ACTUAL-only children are still > > children (in some sense), and should be included in the set of paths > > returned by a walk of the children. > > In some ways it does, but then every callback has to start with a check 'is > this an actual only child?' > > And most likely we forget that check in a dozen places, because it is so > unlikely to find these actual only children in test scenarios. > > So the result will probably be that Subversion fails for end users... > because almost none of our functions accept these actual only children. (I > think only read_info with a conflict argument and the tree conflict > functions do)
I'm thinking of making the walker do this ONLY when given an additional flag: "include actual-only nodes". Does that change your perspective? - Julian