Code review comment for lp:~bzr/bzr/faster-branch-notree

Ian Clatworthy (ian-clatworthy) wrote :

> I would really prefer not to fix it this way. It is coded this way
> because we expect iter_references to be efficient. To make it efficient
> with RevisionTrees, we just need to exit early when the underlying
> repository doesn't support tree-references, as we already do with
> WorkingTree4.

Can you explain further and/or tweak the branch, time permitting? I'm not sure I see the advantage of what you're suggesting over exiting early in Tree.iter_references() and delegating supports_tree_reference() to RevisionTree as I'm doing. I don't particularly *like* how Tree.iter_references() is coded - it could use iter_just_entries() and only calculate paths when a tree reference is found instead - but I don't see the benefit in having a custom implementation of iter_references in RevisionTree. What am I missing?

« Back to merge proposal