[ 
https://issues.apache.org/jira/browse/JCR-3063?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jukka Zitting resolved JCR-3063.
--------------------------------

    Resolution: Fixed

I restored the JCR-2171 fix in revision 1176465 to prevent the deadlock. In the 
same revision I added explicit checks against the NPEs and CMEs thrown by the 
test case. The CMEs are avoided by explicit synchronization and NPEs cause 
InvalidItemStateExceptions instead.

A more thorough solution would probably be preferable, but at least the current 
solution avoids the RuntimeExceptions, so I'm re-resolving this as fixed for 
now.

I also merged the change to the 2.2 branch in revision 1176482 so we can still 
ship this in 2.2.9.
                
> NullPointerException in ItemManager
> -----------------------------------
>
>                 Key: JCR-3063
>                 URL: https://issues.apache.org/jira/browse/JCR-3063
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.2.5, 2.2.8
>            Reporter: Unico Hommes
>             Fix For: 2.2.9
>
>         Attachments: NPEandCMETest.java
>
>
> We have a lot of these occurring:
> java.lang.NullPointerException
>       at 
> org.apache.jackrabbit.core.ItemManager.getDefinition(ItemManager.java:206)
>       at org.apache.jackrabbit.core.ItemData.getDefinition(ItemData.java:99)
>       at 
> org.apache.jackrabbit.core.AbstractNodeData.getNodeDefinition(AbstractNodeData.java:73)
>       at org.apache.jackrabbit.core.NodeImpl.getDefinition(NodeImpl.java:2430)
>       at 
> org.apache.jackrabbit.core.ItemValidator.isProtected(ItemValidator.java:373)
>       at 
> org.apache.jackrabbit.core.ItemValidator.checkCondition(ItemValidator.java:273)
>       at 
> org.apache.jackrabbit.core.ItemValidator.checkRemove(ItemValidator.java:254)
>       at 
> org.apache.jackrabbit.core.ItemRemoveOperation.perform(ItemRemoveOperation.java:63)
>       at 
> org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:200)
>       at org.apache.jackrabbit.core.ItemImpl.perform(ItemImpl.java:91)
>       at org.apache.jackrabbit.core.ItemImpl.remove(ItemImpl.java:322)
>       at 
> org.apache.jackrabbit.core.NPEandCMETest$TestTask.run(NPEandCMETest.java:87)
>       at java.lang.Thread.run(Thread.java:679)
> I'll attach a junit test to reproduce this exception.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to