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 "Stefan Egli (JIRA)" <ji...@apache.org> on 2017/02/01 14:51:51 UTC
[jira] [Updated] (OAK-5557) incomplete diffManyChildren during
commitHook evaluation in a persisted branch
[ https://issues.apache.org/jira/browse/OAK-5557?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefan Egli updated OAK-5557:
-----------------------------
Attachment: DocumentNodeStoreBranchesTest.java
Second, slightly simpler variant of [^DocumentNodeStoreBranchesTest.java] attached which consistently reproduces the problem (tested on 1.2.14 only for now). The sequence of critical events seem to be:
* (A) a number of purges in 5-sec window A
* (B) a merge from an unrelated session in 5-sec window A+1
* the merge of the (A) changes then result in diffManyChildren to use as {{minValue}} window A+1 instead of A. This is likely due to the rebase
> incomplete diffManyChildren during commitHook evaluation in a persisted branch
> ------------------------------------------------------------------------------
>
> Key: OAK-5557
> URL: https://issues.apache.org/jira/browse/OAK-5557
> Project: Jackrabbit Oak
> Issue Type: Bug
> Affects Versions: 1.2.14, 1.2.23
> Environment: 'easily' reproducible on 1.2.14
> 'takes longer to' reproduce on 1.2.23
> Reporter: Stefan Egli
> Assignee: Stefan Egli
> Attachments: DocumentNodeStoreBranchesTest.java, DocumentNodeStoreBranchesTest.java
>
>
> In oak 1.2 when doing a diffManyChildren as part of running the CommitHooks as part of a branch commit, not all child paths are taken into account in some cases.
> The problem seems to be related to the [{{_modified}} calculation|https://github.com/apache/jackrabbit-oak/blob/jackrabbit-oak-1.2.14/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStore.java#L2242] when doing the query for affected child paths. It seems [that {{minValue}}|https://github.com/apache/jackrabbit-oak/blob/jackrabbit-oak-1.2.14/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStore.java#L2242] is not correctly calculated when doing {{compareAgainstBaseState}} as part of a persisted branch.
> Note that the problem can be reproduced very good on 1.2.14, less good but still on the latest 1.2 and not in trunk (ie almost 1.6.0).
> Attaching a test case to reproduce
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)