[
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)