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

Race condition in the CompositeNodeStore#merge

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.7.4, 1.8.0
    • Component/s: composite
    • Labels:
      None

      Description

      Following line in the CompositeNodeStore#merge() is prone for race condition:

      NodeState processed = commitHook.processCommit(getRoot(), rebase(nodeBuilder), info);
      

      We should compare the rebase() results with the getRoot() method, but with the nodeBuilder.getBaseState(). Otherwise, any changes in the root between getRoot() and rebase() invocations will lead to processing external changes in the commit hook.

        Attachments

          Activity

            People

            • Assignee:
              tomek.rekawek Tomek Rękawek
              Reporter:
              tomek.rekawek Tomek Rękawek
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: