Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-5479

Overdue document split with many cluster nodes

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments



      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.


        1. OAK-5479.patch
          8 kB
          Marcel Reutegger
        2. OAK-5479-2.patch
          10 kB
          Marcel Reutegger



            • Assignee:
              mreutegg Marcel Reutegger
              mreutegg Marcel Reutegger


              • Created:

                Issue deployment