jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Marth (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (OAK-2492) Flag Document having many children
Date Tue, 10 Mar 2015 16:05:39 GMT

     [ https://issues.apache.org/jira/browse/OAK-2492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Michael Marth updated OAK-2492:
    Fix Version/s:     (was: 1.1.8)
                       (was: 1.2)

> Flag Document having many children
> ----------------------------------
>                 Key: OAK-2492
>                 URL: https://issues.apache.org/jira/browse/OAK-2492
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mongomk
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>             Fix For: 1.4
> Current DocumentMK logic while performing a diff for child nodes works as below
> # Get children for _before_ revision upto MANY_CHILDREN_THRESHOLD (which defaults to
50). Further note that current logic of fetching children nodes also add children {{NodeDocument}}
to {{Document}} cache and also reads the complete Document for those children
> # Get children for _after_ revision with limits as above
> # If the child list is complete then it does a direct diff on the fetched children
> # if the list is not complete i.e. number of children are more than the threshold then
it for a query based diff (also see OAK-1970)
> So in those cases where number of children are large then all work done in #1 above is
wasted and should be avoided. To do that we can mark those parent nodes which have many children
via special flag like {{_manyChildren}}. One such nodes are marked the diff logic can check
for the flag and skip the work done in #1
> This is kind of similar to way we mark nodes which have at least one child (OAK-1117)

This message was sent by Atlassian JIRA

View raw message