[jira] [Updated] (OAK-5557) incomplete diffManyChildren during commitHook evaluation in a persisted branch

2017-03-30 Thread Thomas Mueller (JIRA)

 [ 
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

2017-02-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-02 Thread Stefan Egli (JIRA)

 [ 
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

2017-02-02 Thread Stefan Egli (JIRA)

 [ 
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

2017-02-02 Thread Stefan Egli (JIRA)

 [ 
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

2017-02-02 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-02 Thread Marcel Reutegger (JIRA)

 [ 
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

2017-02-01 Thread Stefan Egli (JIRA)

 [ 
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)