[ 
https://issues.apache.org/jira/browse/JCR-1197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12540452
 ] 

Marcel Reutegger commented on JCR-1197:
---------------------------------------

When the versionable child node is restored it is first removed, which is IMO 
not needed. The following change worked for me, while all tests still pass:

Index: src/main/java/org/apache/jackrabbit/core/NodeImpl.java
===================================================================
--- src/main/java/org/apache/jackrabbit/core/NodeImpl.java      (revision 
592000)
+++ src/main/java/org/apache/jackrabbit/core/NodeImpl.java      (working copy)
@@ -4010,7 +4010,7 @@
                         }
                         oldVersion = n.getBaseVersion().getName();
                     } else if (n.getParent().isSame(this)) {
-                        n.internalRemove(true);
+                        oldVersion = n.getBaseVersion().getName();
                     } else {
                         // since we delete the OPV=Copy children beforehand, 
all
                         // found nodes must be outside of this tree


Tobi, what do you think?

> ItemManager cache is getting out of sync
> ----------------------------------------
>
>                 Key: JCR-1197
>                 URL: https://issues.apache.org/jira/browse/JCR-1197
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 1.3.3, 1.4
>            Reporter: Przemo Pakulski
>            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.

Reply via email to