[ 
https://issues.apache.org/jira/browse/OAK-5479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15828247#comment-15828247
 ] 

Marcel Reutegger edited comment on OAK-5479 at 1/18/17 3:15 PM:
----------------------------------------------------------------

Proposed fix with test attached to this issue.

The new rules to split a document would be:
- There are 100 old changes for a cluster node that can be moved
- A node was recreated with a binary bigger than 4k
- The main document is bigger than 1M
 


was (Author: mreutegg):
Proposed fix with test attached to this issue.

> Overdue document split with many cluster nodes
> ----------------------------------------------
>
>                 Key: OAK-5479
>                 URL: https://issues.apache.org/jira/browse/OAK-5479
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: core, documentmk
>    Affects Versions: 1.0, 1.2, 1.4
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>            Priority: Minor
>         Attachments: OAK-5479.patch
>
>
> There are cases where a document split is overdue and it continues to grow 
> until it hits the MongoDB limit of 16MB.
> It gets more likely, the more cluster nodes are running and when they all 
> update the same property with a somewhat larger value. E.g. the :childOrder 
> property of a node with many children.
> The current split logic has multiple triggers that will result in creating a 
> previous document.
> - There are 100 old changes for a cluster node that can be moved
> - A node was recreated with a binary bigger than 4k
> - The main document is bigger than 256k and 30% of its size can be moved to a 
> previous document
> The last condition may cause the uncontrolled growth of the document when 
> there are many cluster nodes. If all cluster nodes continuously change a 
> property on a node, then none of the cluster nodes will be able to move 30% 
> of the document.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to