[ https://issues.apache.org/jira/browse/OAK-5229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15839999#comment-15839999 ]
Tobias Bocanegra commented on OAK-5229: --------------------------------------- bq. I had to tweak the provided test to log out the admin session, otherwise the bad node would prevent the anonymous session from being created. why? so this would still corrupt the system if an admin session changes the primary type? > Using Node.setPrimaryType() should fail if non-matching childnodes > ------------------------------------------------------------------ > > Key: OAK-5229 > URL: https://issues.apache.org/jira/browse/OAK-5229 > Project: Jackrabbit Oak > Issue Type: Bug > Components: core > Affects Versions: 1.5.14 > Reporter: Tobias Bocanegra > Assignee: Alex Parvulescu > Priority: Critical > Fix For: 1.6 > > Attachments: OAK-5229.patch, OAK-5229-tests.patch > > > 1. Assume the following: > {noformat} > /testNode [nt:unstructured] > /unstructured_child [nt:unstructured] > {noformat} > 2. setting "/testNode".setPrimaryType("nt:folder") > 3. save the session. > Altering the primary type works, thus leaving the repository in an > inconsistent state. > Interestingly, subsequent calls to > "/testNiode/unstructured_child".setProperty() will fail: > {noformat} > javax.jcr.nodetype.ConstraintViolationException: OakConstraint0001: > /test_node[[nt:folder]]: No matching definition found for child node > unstructured_child with effective type [nt:unstructured] > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)