[
https://issues.apache.org/jira/browse/OAK-1117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chetan Mehrotra updated OAK-1117:
---------------------------------
Attachment: OAK-1117.patch
Patch to optimize based on above mentioned approach. Points to note
* A new flag {{_hasChildNodes}} added. Which if
** false - Indicates that there are no child for this path
** true - Indicates that there might be child nodes for this path. It might
happen that there are no child node found if actual call is performed
* Flag once set would not be unset
* With this logic it might happen that commit root changes as we might have to
change the flag for a path which is not part of the commit. Due to this has to
change assertions in 2 testcases
With this set the number of calls reduce considerably. For example on restart
of Adobe CQ it goes from 42000 to 25000
> [MongoMk]Flag document with children
> ------------------------------------
>
> Key: OAK-1117
> URL: https://issues.apache.org/jira/browse/OAK-1117
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: mongomk
> Reporter: Chetan Mehrotra
> Assignee: Chetan Mehrotra
> Attachments: OAK-1117.patch
>
>
> Installing a vlt package shows many reads on MongoDB for children of nodes
> that do not have child nodes. these nodes are the leafs of the tree. due to
> the current content model, the MongoMK does not know if a node has children,
> by just looking at the NodeDocument for that node.
> To help such cases it would be better if we mark nodes which have children.
> Refer to [1] for more details
> [1] http://markmail.org/thread/7olmv5iqapmheasz
--
This message was sent by Atlassian JIRA
(v6.1#6144)