Uploaded image for project: 'ModeShape'
  1. ModeShape
  2. MODE-2558

Concurrent Modifications with User Transactions can result in NodeNotFoundInParentException

    Details

      Description

      I have created a sample application https://github.com/lucasweb78/modeshape-test-app that demonstrates a concurrency issue when multiple threads modify the same node structure using User Transactions.

      The issue only appears to happen when run inside of Wildfly, I have yet to re-create it outside of Wildfly.

      It appears that under concurrent load a child node can be created and committed with a reference to a parent node, but the parent node does not contain a reference to the child, most likely because it was overwritten in a different thread. Once this happens any attempt to access the node results in a NodeNotFoundInParentException

      Strangely the issue only occurs if eviction is enabled in the Infinispan cache, even though the entry limit is not reached.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  ma6rl Richard Lucas
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: