jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Egli (Jira)" <j...@apache.org>
Subject [jira] [Commented] (OAK-8667) Merge may fail when commit root is a bundled node
Date Thu, 03 Oct 2019 10:12:00 GMT

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

Stefan Egli commented on OAK-8667:
----------------------------------

+1 to this patch, makes sense.

I was wondering if this is the only case where this error pattern (operation on bundled node
is applied to wrong path) occurs but am not too familiar with bundling implementation to estimate
if any other place could be impacted.

> Merge may fail when commit root is a bundled node
> -------------------------------------------------
>
>                 Key: OAK-8667
>                 URL: https://issues.apache.org/jira/browse/OAK-8667
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: documentmk
>    Affects Versions: 1.6.0, 1.8.0, 1.10.0, 1.12.0, 1.14.0, 1.16.0, 1.18.0
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>            Priority: Major
>             Fix For: 1.20.0
>
>         Attachments: OAK-8667.patch
>
>
> Changing and merging descendant nodes of a bundled node fails when the commit root of
the changes is located on a bundled node. The merge tries to apply the final commit changes
on a document that does not exist (because the bundled node is located on an ancestor document).
> The exception is misleading but looks like this:
> {noformat}
> Caused by: org.apache.jackrabbit.oak.plugins.document.DocumentStoreException: Conflicting
concurrent change. Update operation failed: key: 3:/foo/bar/baz update {_revisions.r16d8bf18282-0-1=SET_MAP_ENTRY
c, _modified=MAX 1570010920}
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:398)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStoreWithTiming(Commit.java:278)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:262)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyInternal(Commit.java:230)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.apply(Commit.java:218) [org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:320)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:282)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.access$500(DocumentNodeStoreBranch.java:56)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:548)
[org.apache.jackrabbit.oak-store-document:1.18.0]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message