You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Michael Dürig (JIRA)" <ji...@apache.org> on 2012/12/12 13:27:20 UTC

[jira] [Created] (OAK-507) MicroKernel.commit() throws NotFoundException for an existing node

Michael Dürig created OAK-507:
---------------------------------

             Summary: MicroKernel.commit() throws NotFoundException for an existing node
                 Key: OAK-507
                 URL: https://issues.apache.org/jira/browse/OAK-507
             Project: Jackrabbit Oak
          Issue Type: Bug
          Components: mk
            Reporter: Michael Dürig


{code}
String base = mk.commit("", "+\"/a\":{}", null, null);
mk.commit("", "-\"/a\"", base, null);
assertTrue(mk.nodeExists("/a", base));
mk.commit("", "-\"/a\"", base, null);
{code}

The last line throws an {{MicroKernelException}} with a {{NotFoundException}} as its cause, which contradicts the preceding assertion.

{code}
Exception in thread "main" org.apache.jackrabbit.mk.api.MicroKernelException: org.apache.jackrabbit.mk.store.NotFoundException: /a
	at org.apache.jackrabbit.mk.core.MicroKernelImpl.commit(MicroKernelImpl.java:499)
	at org.apache.jackrabbit.oak.core.Rebase.testFoo(Rebase.java:587)
	at org.apache.jackrabbit.oak.core.Rebase.main(Rebase.java:577)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: org.apache.jackrabbit.mk.store.NotFoundException: /a
	at org.apache.jackrabbit.mk.model.StagedNodeTree.remove(StagedNodeTree.java:148)
	at org.apache.jackrabbit.mk.model.CommitBuilder$RemoveNode.apply(CommitBuilder.java:293)
	at org.apache.jackrabbit.mk.model.CommitBuilder.doCommit(CommitBuilder.java:120)
	at org.apache.jackrabbit.mk.model.CommitBuilder.doCommit(CommitBuilder.java:94)
	at org.apache.jackrabbit.mk.core.MicroKernelImpl.commit(MicroKernelImpl.java:489)
{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