Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
2.2.4
-
None
Description
When restoring a versionable node which has several (non-versionable) child nodes with the same name, some child nodes disappear.
Node node = session.getRootNode().addNode("myNode");
node.addMixin("mix:versionable");
for (int i = 1; i < 6; i++)
session.save();
VersionManager versionManager = session.getWorkspace().getVersionManager();
versionManager.checkin(node.getPath());
System.out.println("number of child nodes: " + node.getNodes().getSize());
versionManager.checkout(node.getPath());
node.getNode("child").setProperty("name", "modified");
session.save();
Version baseVersion = versionManager.getBaseVersion(node.getPath());
versionManager.restore(baseVersion, true);
System.out.println("number of child nodes in restored node: "+node.getNodes().getSize());
produces the following output:
number of child nodes: 5
number of child nodes in restored node: 3
Giving unique names or adding the mixin versionable to the child nodes solves the problem.