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

journal should support large(r) entries

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.14
    • Fix Version/s: 1.5.16, 1.6.0
    • Component/s: documentmk
    • Labels:
      None

      Description

      Journal entries are created in the background write. Normally this happens every second. If for some reason there is a large delay between two background writes, the number of pending changes can also accumulate. Which can result in (arbitrary) large single journal entries (ie with large _c property).

      This can cause multiple problems down the road:

      • journal gc at this point loads 450 entries - and if some are large this can result in a very large memory consumption during gc (which can cause severe stability problems for the VM, if not OOM etc). This should be fixed with OAK-3001 (where we only get the id, thus do not care how big _c is)
      • before OAK-3001 is done (which is currently scheduled after 1.4) what we can do is reduce the delete batch size (OAK-3975)
      • background reads however also read the journal entries and even if OAK-3001/OAK-3975 are implemented the background read can still cause large memory consumption. So we need to improve this one way or another.

        Attachments

        1. OAK-3976-1.patch
          13 kB
          Marcel Reutegger
        2. OAK-3976.patch
          11 kB
          Vikas Saurabh

          Issue Links

            Activity

              People

              • Assignee:
                catholicon Vikas Saurabh
                Reporter:
                stefanegli Stefan Egli
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: