Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.0, 2.0.3, 2.1, 2.1.1, 2.1.2, 2.1.3, 2.2, 2.2.1, 2.2.2, 2.2.4, 2.2.5
-
None
Description
regression of JCR-2425
in certain scenarios, calling SessionItemStateManager.getIdOfRootTransientNodeState() may cause a NPE.
Test case:
Repository repository = new TransientRepository();
Session session = repository.login(
new SimpleCredentials("admin", "admin".toCharArray()));
Session session2 = repository.login(
new SimpleCredentials("admin", "admin".toCharArray()));
try {
while (session.getRootNode().hasNode("test"))
Node test = session.getRootNode().addNode("test");
session.save();
Node x = test.addNode("x");
session.save();
Node x2 = session2.getRootNode().getNode("test").getNode("x");
x2.remove();
x.addNode("b");
session2.save();
session.save(); // throws NPE
} finally