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 "Christian Schneider (Jira)" <ji...@apache.org> on 2025/11/27 02:31:00 UTC
[jira] [Created] (OAK-12017) CommitFailedException thrown by EditorHook does not contain path to node
Christian Schneider created OAK-12017:
-----------------------------------------
Summary: CommitFailedException thrown by EditorHook does not contain path to node
Key: OAK-12017
URL: https://issues.apache.org/jira/browse/OAK-12017
Project: Jackrabbit Oak
Issue Type: Bug
Components: api
Reporter: Christian Schneider
While applying a content package we get this exception.
The problem is that this gives no indication to the path of the node that caused the exception. This makes it very hard for customers to fix the problem.
The exception is thrown in org.apache.jackrabbit.oak.spi.commit.EditorHook.processCommit. In this method the path is known and should be added to the exception. This could be done by wrapping the exception or by replacing it.
{noformat}
Caused by: org.apache.jackrabbit.oak.api.CommitFailedException: OakVersion0001: Cannot change property cq:lastModified on checked in node
at org.apache.jackrabbit.oak.plugins.version.VersionEditor.throwCheckedIn(VersionEditor.java:309)
at org.apache.jackrabbit.oak.plugins.version.VersionEditor.propertyChanged(VersionEditor.java:145)
at org.apache.jackrabbit.oak.spi.commit.VisibleEditor.propertyChanged(VisibleEditor.java:73)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.propertyChanged(EditorDiff.java:92)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareProperties(SegmentNodeState.java:662)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:556)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:147)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:517)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:649)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:147)
at org.apache.jackrabbit.oak.segment.MapRecord$3.childNodeChanged(MapRecord.java:430)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:517)
at org.apache.jackrabbit.oak.segment.MapRecord.compareBranch(MapRecord.java:595)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:496)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:420)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:649)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:147)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:444)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:649)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:147)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:444)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:649)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:147)
at org.apache.jackrabbit.oak.composite.CompositeNodeState$WrappingDiff.childNodeChanged(CompositeNodeState.java:310)
at org.apache.jackrabbit.oak.composite.CompositeNodeState$ChildrenDiffFilter.childNodeChanged(CompositeNodeState.java:257)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:444)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:649)
at org.apache.jackrabbit.oak.composite.CompositeNodeState.compareAgainstBaseState(CompositeNodeState.java:164)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:51)
at org.apache.jackrabbit.oak.spi.commit.EditorHook.processCommit(EditorHook.java:54)
at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:60)
at org.apache.jackrabbit.oak.plugins.version.VersionHook.processCommit(VersionHook.java:75)
at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:60)
at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:60)
at org.apache.jackrabbit.oak.composite.CommitHookEnhancer.processCommit(CommitHookEnhancer.java:55)
at org.apache.jackrabbit.oak.segment.scheduler.Commit.apply(Commit.java:99)
at org.apache.jackrabbit.oak.segment.scheduler.LockBasedScheduler.execute(LockBasedScheduler.java:299)
at org.apache.jackrabbit.oak.segment.scheduler.LockBasedScheduler.schedule(LockBasedScheduler.java:270)
at org.apache.jackrabbit.oak.segment.SegmentNodeStore.merge(SegmentNodeStore.java:212)
at org.apache.jackrabbit.oak.composite.CompositeNodeStore.merge(CompositeNodeStore.java:149)
at org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:261)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.commit(SessionDelegate.java:402)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:557)
... 28 more{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)