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 "Marcel Reutegger (JIRA)" <ji...@apache.org> on 2013/11/19 10:27:21 UTC

[jira] [Resolved] (OAK-1198) Retry InMemory merge

     [ https://issues.apache.org/jira/browse/OAK-1198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marcel Reutegger resolved OAK-1198.
-----------------------------------

       Resolution: Fixed
    Fix Version/s: 0.12

Added a test and implemented a logic similar to the one in SegmentNodeStoreBranch.

Done in http://svn.apache.org/r1543354

> Retry InMemory merge
> --------------------
>
>                 Key: OAK-1198
>                 URL: https://issues.apache.org/jira/browse/OAK-1198
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>            Priority: Minor
>             Fix For: 0.12
>
>
> {{AbstractNodeStoreBranch}} should retry an {{InMemory.merge()}} when the operation fails to persist the changes. Even though {{KernelNodeStoreBranch}} acquires a merge lock and therefore serializes merges in one Oak instance, it may still happen that other Oak instances concurrently persist changes with conflicting editor changes. In this case a retry, including a rebase may not show these conflicts anymore.
> One specific example is OAK-1187, when multiple Oak instances concurrently try to create /jcr:system/rep:permissionStore/default/everyone.



--
This message was sent by Atlassian JIRA
(v6.1#6144)