[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 ] Thomas Mueller updated OAK-5557: Description: The following issue can cause inconsistencies in query indices and permission store, in case the DocumentStore is used, in combination with a large commit and many children: 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 was: 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 > 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 > Components: core, documentmk >Affects Versions: 1.2.23, 1.4.12, 1.6.0 > Environment: 'easily' reproducible on 1.2.14 > 'takes longer to' reproduce on 1.2.23 >Reporter: Stefan Egli >Assignee: Marcel Reutegger > Fix For: 1.2.24, 1.4.13, 1.7.0, 1.8, 1.6.1 > > Attachments: DocumentNodeStoreBranchesTest.java, > DocumentNodeStoreBranchesTest.java, OAK-5557-1.2.patch, OAK-5557.patch > > > The following issue can cause inconsistencies in query indices and permission > store, in case the DocumentStore is used, in combination with a large commit > and many children: > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Labels: (was: candidate_oak_1_2) Fix Version/s: 1.2.24 > 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 > Components: core, documentmk >Affects Versions: 1.2.23, 1.4.12, 1.6.0 > Environment: 'easily' reproducible on 1.2.14 > 'takes longer to' reproduce on 1.2.23 >Reporter: Stefan Egli >Assignee: Marcel Reutegger > Fix For: 1.2.24, 1.4.13, 1.7.0, 1.8, 1.6.1 > > Attachments: DocumentNodeStoreBranchesTest.java, > DocumentNodeStoreBranchesTest.java, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Labels: candidate_oak_1_2 (was: candidate_oak_1_2 candidate_oak_1_4 candidate_oak_1_6) Fix Version/s: 1.6.1 1.4.13 Merged into branches: - 1.6: http://svn.apache.org/r1781888 - 1.4: http://svn.apache.org/r1781894 > 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 > Components: core, documentmk >Affects Versions: 1.2.23, 1.4.12, 1.6.0 > Environment: 'easily' reproducible on 1.2.14 > 'takes longer to' reproduce on 1.2.23 >Reporter: Stefan Egli >Assignee: Marcel Reutegger > Labels: candidate_oak_1_2 > Fix For: 1.4.13, 1.7.0, 1.8, 1.6.1 > > Attachments: DocumentNodeStoreBranchesTest.java, > DocumentNodeStoreBranchesTest.java, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Affects Version/s: (was: 1.7.0) > 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 > Components: core, documentmk >Affects Versions: 1.2.23, 1.4.12, 1.6.0 > Environment: 'easily' reproducible on 1.2.14 > 'takes longer to' reproduce on 1.2.23 >Reporter: Stefan Egli >Assignee: Marcel Reutegger > Labels: candidate_oak_1_2, candidate_oak_1_4, candidate_oak_1_6 > Fix For: 1.7.0, 1.8 > > Attachments: DocumentNodeStoreBranchesTest.java, > DocumentNodeStoreBranchesTest.java, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Labels: candidate_oak_1_2 candidate_oak_1_4 candidate_oak_1_6 (was: ) > 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 > Components: core, documentmk >Affects Versions: 1.2.23, 1.4.12, 1.6.0 > Environment: 'easily' reproducible on 1.2.14 > 'takes longer to' reproduce on 1.2.23 >Reporter: Stefan Egli >Assignee: Marcel Reutegger > Labels: candidate_oak_1_2, candidate_oak_1_4, candidate_oak_1_6 > Fix For: 1.7.0, 1.8 > > Attachments: DocumentNodeStoreBranchesTest.java, > DocumentNodeStoreBranchesTest.java, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Component/s: documentmk core > 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 > Components: core, documentmk >Affects Versions: 1.2.23, 1.4.12, 1.6.0 > Environment: 'easily' reproducible on 1.2.14 > 'takes longer to' reproduce on 1.2.23 >Reporter: Stefan Egli >Assignee: Marcel Reutegger > Labels: candidate_oak_1_2, candidate_oak_1_4, candidate_oak_1_6 > Fix For: 1.7.0, 1.8 > > Attachments: DocumentNodeStoreBranchesTest.java, > DocumentNodeStoreBranchesTest.java, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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: - Affects Version/s: (was: 1.2.14) > 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.23, 1.4.12, 1.6.0, 1.7.0 > 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, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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: - Affects Version/s: 1.7.0 > 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.23, 1.4.12, 1.6.0, 1.7.0 > 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, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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: - Affects Version/s: 1.4.12 1.6.0 > 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, 1.4.12, 1.6.0 > 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, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Attachment: OAK-5557.patch Attached [^OAK-5557.patch] with a proposed fix for trunk. [~chetanm] and [~egli], can you please review? > 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, OAK-5557-1.2.patch, OAK-5557.patch > > > 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)
[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 ] Marcel Reutegger updated OAK-5557: -- Attachment: OAK-5557-1.2.patch The attached patch [^OAK-5557-1.2.patch] looks at the two revisions to compare and also takes the base revision of a potential branch in account to calculate the {{minTimestamp}}. With this change, the test succeeds on the current 1.2 branch. > 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, OAK-5557-1.2.patch > > > 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)
[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)