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/25 09:36:33 UTC

[jira] [Created] (OAK-2131) Reduce usage of _lastRev

Marcel Reutegger created OAK-2131:
-------------------------------------

             Summary: Reduce usage of _lastRev
                 Key: OAK-2131
                 URL: https://issues.apache.org/jira/browse/OAK-2131
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: core, mongomk
            Reporter: Marcel Reutegger
            Assignee: Marcel Reutegger


As described in OAK-1768 the usage of _lastRev must be reduced to better handle large transaction. The short term solution implemented for OAK-1768 relies on MapDB to temporarily store the pending modifications to a temp file. This solution prevents an OOME when there is a large commit, but can take quite a while to update the _lastRev fields after the branch is merged. This has an impact on the visibility of changes in a cluster because any further changes done after the merge only become visible when the large update of the _lastRev fields went through.

Delayed propagation of changes can become a problem in a cluster when some components rely on a timely visibility of changes. One example is the Apache Sling Topology, which sends heartbeats through the cluster by updating properties in the repository. The topology implementation will consider a cluster node dead if those updates are not propagated in the cluster within a given timeout. Ultimately this may lead to a cluster with multiple leaders.



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