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 2014/09/24 17:09:33 UTC

[jira] [Created] (OAK-2127) Long running merge may block other commits

Marcel Reutegger created OAK-2127:
-------------------------------------

             Summary: Long running merge may block other commits
                 Key: OAK-2127
                 URL: https://issues.apache.org/jira/browse/OAK-2127
             Project: Jackrabbit Oak
          Issue Type: Bug
          Components: core, mongomk
    Affects Versions: 1.0
            Reporter: Marcel Reutegger
            Assignee: Marcel Reutegger


A long running merge with DocumentNodeStore may block other commits when there are merge conflicts and a merge is retried.

The DocumentNodeStore currently acquires a shared lock when it performs a merge. This allows concurrent merges. A merge is retried if it fails with a conflict and at some point will acquire above mentioned lock exclusively. This way, merges are serialized and an attempt is made to prevent conflicts introduced by concurrent merges.

The lock becomes problematic when a long running merge hold this lock exclusively. All other commits are then basically blocked.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)