[ 
https://issues.apache.org/jira/browse/OAK-690?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13598895#comment-13598895
 ] 

Michael Dürig commented on OAK-690:
-----------------------------------

Revision 1455173 contains an initial fix for this. However it produces a couple 
of follow up test failures for code which accesses tree instances that have 
become invalid. To keep the build stable the fix must currently be explicitly 
enabled using {{-DOAK-690=true}}. I'll create follow up issues for these test 
failures. 
                
> Enforce and clarify Root contract wrt. invalid Tree instances
> -------------------------------------------------------------
>
>                 Key: OAK-690
>                 URL: https://issues.apache.org/jira/browse/OAK-690
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>
> The contract of {{Root.commit()}}, {{Root.refresh()}} and {{Root.rebase()}} 
> specify that {{Tree}} instances acquired through that {{Root}} instance 
> become invalid after one of these methods are called. 
> In fact the hierarchy related methods are not affected by this, which is 
> required for higher layers to be able to reload {{Tree}} instances that have 
> become invalid. OTOH affected methods might not immediately throw an 
> exception but just result in undefined behaviour. I'd like to change this 
> such that invalid {{Tree}} instances immediately throw an 
> {{IllegalStateException}} when accessed. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to