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

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

Hmm this will cause the following JCR code to fail with the same error:
{code}
        Node root = session.getRootNode().addNode("root");
        root.addNode("N3");
        root.addNode("N6").addNode("N7");
        session.save();
        session.move("/root/N6/N7", "/root/N3/N12");
        root.getNode("N3").getNode("N12").remove();
        root.getNode("N6").remove();
        session.save();
{code}

I think we need to fix this. 
Test case at http://svn.apache.org/viewvc?view=revision&revision=r1514656
                
> RootFuzzIT fails on MongoMK with seed -1091889749
> -------------------------------------------------
>
>                 Key: OAK-962
>                 URL: https://issues.apache.org/jira/browse/OAK-962
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: core
>            Reporter: Michael Dürig
>
> Running FuzzRootIT with -DRootFuzzIT-with-mongo-mk=true 
> -DRootFuzzIT-seed=-1091889749 results in
> {code}
> org.apache.jackrabbit.mk.api.MicroKernelException: Exception committing 
> -"/root/N6"
> -"/root/N11"
> ^"/root/N4/P14":"\"V15\""-"/root/N4/N5"
>       at 
> org.apache.jackrabbit.oak.plugins.mongomk.Commit.applyToDocumentStore(Commit.java:262)
>       at 
> org.apache.jackrabbit.oak.plugins.mongomk.Commit.prepare(Commit.java:144)
>       at 
> org.apache.jackrabbit.oak.plugins.mongomk.MongoMK.commit(MongoMK.java:1137)
>       at 
> org.apache.jackrabbit.oak.kernel.KernelNodeStoreBranch.persistTransientHead(KernelNodeStoreBranch.java:275)
>       at 
> org.apache.jackrabbit.oak.kernel.KernelNodeStoreBranch.setRoot(KernelNodeStoreBranch.java:93)
>       at 
> org.apache.jackrabbit.oak.core.AbstractRoot.purgePendingChanges(AbstractRoot.java:391)
>       at 
> org.apache.jackrabbit.oak.core.AbstractRoot.commit(AbstractRoot.java:239)
>       at 
> org.apache.jackrabbit.oak.core.RootFuzzIT.fuzzTest(RootFuzzIT.java:141)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
>       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
>       at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>       at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>       at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
>       at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
>       at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>       at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>       at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>       at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>       at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>       at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>       at org.junit.runners.Suite.runChild(Suite.java:128)
>       at org.junit.runners.Suite.runChild(Suite.java:24)
>       at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>       at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>       at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>       at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>       at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>       at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>       at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
>       at 
> com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:77)
>       at 
> com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:195)
>       at 
> com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
> Caused by: org.apache.jackrabbit.mk.api.MicroKernelException: The node 
> /root/N6/N7 does not exist or is already deleted, before
> r14082a1d9db-0-1; document:
> {_commitRoot={r14082a1d986-0-1=0, r14082a1d996-1-1=0},
> _deleted={r14082a1d986-0-1=false, r14082a1d996-1-1=true},
> _id=3:/root/N6/N7,
> _modified=275316235},
> revision order:
> 1:
>  r14082a1d945-1-1:r14082a1d946-2-0
>       at 
> org.apache.jackrabbit.oak.plugins.mongomk.Commit.createOrUpdateNode(Commit.java:321)
>       at 
> org.apache.jackrabbit.oak.plugins.mongomk.Commit.applyToDocumentStore(Commit.java:246)
>       ... 43 more
> {code}

--
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