Details
-
Epic
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
Efficient operations on child nodes
Description
as discussed with jhoh in private conversations we should look at more efficient ways to operate on child node collections such as
- determine if the set of child nodes match a given pattern
- determine the number of child nodes
- get an estimate if the number of child nodes exceeds a given max value
- getting an iterable over all child nodes that match a given pattern
one initial idea would be to introduce a new interface representing the child-node collection and adding functionality there instead of creating multiple new methods on JackrabbitNode or JackrabbbitSession.
the following improvements requests should be handled as part of this epic:
The reason is to avoid calling one of the Node.getNodes() methods, as these always read all children to return them within the NodeIterator, and this can be an expensive operation if it has thousands of child nodes. And building the complete NodeIterator is not always required (see the above cases, where it's not needed).