[
https://issues.apache.org/jira/browse/OAK-169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13410207#comment-13410207
]
Thomas Mueller commented on OAK-169:
------------------------------------
Again about linked list: Jukkas has a point that a regular linked list would be
quite slow, because to display the child node names in order you would need to
load all child nodes.
An alternative would be to use a "grouped linked list". The parent node would
keep the child node names of the first 100 (or whatever number) child nodes in
a multi-value property. The last of those 100 nodes (if there are that many)
would contain another multi-value property of the next 100 child node names,
and so on. This is a special case of a skip list, as a regular linked list is,
as a normal multi-value property with all (ordered) child node names is. If a
node in the middle is removed, just one group list would shrink, lets say from
100 to 99. If two groups combined have less than 100 elements, those two groups
could be merged.
> Support orderable nodes
> -----------------------
>
> Key: OAK-169
> URL: https://issues.apache.org/jira/browse/OAK-169
> Project: Jackrabbit Oak
> Issue Type: New Feature
> Components: jcr
> Reporter: Jukka Zitting
>
> There are JCR clients that depend on the ability to explicitly specify the
> order of child nodes. That functionality is not included in the MicroKernel
> tree model, so we need to implement it either in oak-core or oak-jcr using
> something like an extra (hidden) {{oak:childOrder}} property that records the
> specified ordering of child nodes. A multi-valued string property is probably
> good enough for this.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira