[ https://issues.apache.org/jira/browse/JCR-1197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12555141 ]
Tobias Bocanegra commented on JCR-1197: --------------------------------------- the problem is in the special case of the restore operation, where an entire subnode is internally removed and recreated. this results in a change log that contains deleted and created property states with the same id. after the shared states are persisted, the notification events update all caches correctly, but when the local item state manager updates his state, those deleted/created states are thrown out of the cache. this causes a later reconnect to fail and the item is marked as stale. fix: re-cache the state on a 'created' event. > Node.restore() may throw InvalidItemStateException > -------------------------------------------------- > > Key: JCR-1197 > URL: https://issues.apache.org/jira/browse/JCR-1197 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core, versioning > Affects Versions: 1.3.3 > Reporter: Przemo Pakulski > Assignee: Tobias Bocanegra > Priority: Critical > Fix For: 1.4 > > Attachments: CheckoutFailure.java > > > It seems that ItemManager cache is not maintained correctly. I'm getting > InvalidItemStateException: 'propertyId' has been modified externally tryin > restore/checkout versionable nodes in single thread. > ItemState should be evicted from ItemStateManager cache when modified, it > seems that status of ItemState is changed to MODIFIED, but itemState remains > in the cache. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.