jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Carlos Villegas <...@uniscope.jp>
Subject Re: No item in ItemStateManager? Was: Strange exception: javax.jcr.ItemNotFoundException: d1a479a0-b822-43a3-8181-9380635fb02a
Date Wed, 21 Jun 2006 00:47:57 GMT
I reported this before. The node is corrupted. In my case it looked like 
the item was defined in some internal data structure of its parent but 
the item itself didn't exist. Thus jackrabbit internal state is 
inconsistent and in some parts of the code it tries to create some of 
these non existent objects; but it fails because of the same inconsistency.
I suggested that when deleting an item, jackrabbit should deal with 
these inconsistencies and delete whatever is left. But the answer was 
that the inconsistent state shouldn't have happened in the first place 
:-(. Which, of course, doesn't solve the problem when I already have a 
corrupted node and want to delete it or repair it.

Carlos

Martin Koci wrote:
> Thanks for your answer.
> 
> Unfortunately my problem is not reproducible  with a test. I'm using
> repository from production environment and that problem appears only
> with that repository.
> 
> Probably repository is corrupted but this should never happen. I've
> added method for removing problematic node but it leads to similar
> exception:
> javax.jcr.ItemNotFoundException: a156b553-accf-4137-85cb-93ed24d4c8d4
> 	at
> org.apache.jackrabbit.core.ItemManager.createItemInstance(ItemManager.java:465)
> 	at org.apache.jackrabbit.core.ItemManager.getItem(ItemManager.java:321)
> 	at org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:661)
> 	at org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:662)
> 	at org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:662)
> 	at org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:662)
> 	at org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:662)
> 	at org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:662)
> 	at
> org.apache.jackrabbit.core.NodeImpl.removeChildNode(NodeImpl.java:626)
> 	at
> org.apache.jackrabbit.core.ItemImpl.internalRemove(ItemImpl.java:867)
> 	at org.apache.jackrabbit.core.ItemImpl.remove(ItemImpl.java:1053)
> 	at
> cz.aura.cms.preferences.impl.PreferencesServiceImpl.deleteUserPreferenceNode(PreferencesServiceImpl.java:271)
> 
> Is there any chance to remove problematic nodes? And I don't understand
> why item.remove() calls ItemManager.createItemInstance as shown in stack
> trace above. 
> 
> Thanks for any help
> Martin

Mime
View raw message