Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
SecureNodeBuilder.baseChanged() calls SecureNodeBuilder.getTreePermission() even though the tree permission would be calculated lazily as needed anyway. Re-calculating the tree permissions at this point bears the risk of accessing stale data from the underlying not yet fully refreshed root (when being called e.g. from MutableRoot.refresh().
I would thus argue for removing the call to SecureNodeBuilder.getTreePermission() from SecureNodeBuilder.baseChanged().
See also OAK-5296 for an in-depth analysis.