You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bu...@apache.org on 2015/11/26 14:34:05 UTC
svn commit: r973638 - in /websites/staging/sling/trunk/content: ./
documentation/bundles/discovery-api-and-impl.html
Author: buildbot
Date: Thu Nov 26 13:34:05 2015
New Revision: 973638
Log:
Staging update by buildbot for sling
Modified:
websites/staging/sling/trunk/content/ (props changed)
websites/staging/sling/trunk/content/documentation/bundles/discovery-api-and-impl.html
Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Thu Nov 26 13:34:05 2015
@@ -1 +1 @@
-1716639
+1716642
Modified: websites/staging/sling/trunk/content/documentation/bundles/discovery-api-and-impl.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/bundles/discovery-api-and-impl.html (original)
+++ websites/staging/sling/trunk/content/documentation/bundles/discovery-api-and-impl.html Thu Nov 26 13:34:05 2015
@@ -421,14 +421,16 @@ They use the same interval and timeout a
becomes unreliable. The eventual-ness of the repository has an inherent problem in that it doesn't guarantee by when a change
initiated from instance A is visible by instance B. And when there are no hard guarantees, it becomes impossible to choose
a <code>heartbeatTimeout</code> that works for all eventualities.</p>
-<p>Therefore it becomes necessary to be able to store heartbeats in a repository that provides higher consistency (than eventualness).
-Such a 'low-level repository' is the DocumentStore of oak (which is an internal API of the DocumentNodeStore). Turns out that
-the DocumentNodeStore already has a heartbeat-like concept called leases. Those can be re-used for discovery, combined with
-an explicit materialization of the cluster view in the DocumentStore so that all instances agree and refer to the same
-view without the actual need for voting.</p>
+<p>Therefore it becomes necessary to be able to store heartbeats in a (low-level) location that provides higher consistency (than eventualness).
+Such a 'low-level location' is the DocumentStore of oak (which is an internal API of the DocumentNodeStore). Turns out that
+the DocumentNodeStore already has a heartbeat-like concept called leases. Those can be re-used for discovery to fulfill the same
+aspect as heartbeats do: indicate alive instances. This can further be combined with
+an explicit materialization of a "cluster view" in the DocumentStore so that all instances agree and refer to the same
+view without the actual need for voting (this is possible since the DocumentStore allows to do conditional updates).</p>
<h3 id="jackrabbit-oaks-discovery-lite">Jackrabbit Oak's discovery-lite<a class="headerlink" href="#jackrabbit-oaks-discovery-lite" title="Permanent link">¶</a></h3>
-<p>All of the above mentioned features have been implemented in so-called 'discovery-lite'. Discovery-lite is a simplified
-version of discovery on the oak level. The only thing it provides is one descriptor: the 'discovery-lite descriptor'. </p>
+<p>All of the above mentioned features have been implemented in so-called 'discovery-lite': Discovery-lite is a simplified
+version of discovery on the oak level. Other than the discovery API it only provides one thing, and that's the
+clusterview-json:</p>
<h4 id="oakdiscoveryliteclusterview">'oak.discoverylite.clusterview'<a class="headerlink" href="#oakdiscoveryliteclusterview" title="Permanent link">¶</a></h4>
<p>The discovery-lite descriptor <code>oak.discoverylite.clusterview</code> is a shrink-wrapped json-formatted object representing
the current state of the cluster. It contains the following:</p>
@@ -472,7 +474,7 @@ cross-cluster topology announcements (vi
<p>This is the base bundle solely used by discovery.impl and discovery.oak and contains exactly the mentioned
properties and announcement handling.</p>
<div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">
- Rev. 1716639 by stefanegli on Thu, 26 Nov 2015 13:26:54 +0000
+ Rev. 1716642 by stefanegli on Thu, 26 Nov 2015 13:33:57 +0000
</div>
<div class="trademarkFooter">
Apache Sling, Sling, Apache, the Apache feather logo, and the Apache Sling project