Branko Čibej wrote on Sun, Aug 25, 2013 at 15:39:29 +0200:
> On 25.08.2013 15:03, Daniel Shahaf wrote:
> > 'svn mergeinfo' walks the tree upwards.  As to listing branches by
> > walking the tree downwards, if you consider 'svn pg -R svn:branch
> > ^/branches', and let N = number of branches and M = number of files per
> > branch, it would do O(NM) work to compute an O(N)-sized answer.
> 
> That's assuming the server doesn't know about the property. But it has
> to know in order to implement the branching restrictions I mentioned.
> 

You didn't specify whether those restrictions were to be implemented in
the client or server.

> Why don't you do a similar cost analysis on the original proposal,
> taking into account the problems I pointed out?

The cost of the original proposal is O(L) dirents-list retrievals where
L is the number of patterns in the property (assuming that globs don't
recurse, i.e., no "**"), and in particular is independent of M.

And, by the way, I think you mentioned just one problem: the fact that
the branch-roots structure is defined in a place other than the branch
roots and as such may get out of date.  Were there any others?

Reply via email to