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