You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by bu...@apache.org on 2015/02/02 17:29:57 UTC

svn commit: r938677 - in /websites/staging/slider/trunk/content: ./ design/rolehistory.html developing/releasing.html release_notes/release-0.70.0.html

Author: buildbot
Date: Mon Feb  2 16:29:57 2015
New Revision: 938677

Log:
Staging update by buildbot for slider

Modified:
    websites/staging/slider/trunk/content/   (props changed)
    websites/staging/slider/trunk/content/design/rolehistory.html
    websites/staging/slider/trunk/content/developing/releasing.html
    websites/staging/slider/trunk/content/release_notes/release-0.70.0.html

Propchange: websites/staging/slider/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Feb  2 16:29:57 2015
@@ -1 +1 @@
-1656511
+1656512

Modified: websites/staging/slider/trunk/content/design/rolehistory.html
==============================================================================
--- websites/staging/slider/trunk/content/design/rolehistory.html (original)
+++ websites/staging/slider/trunk/content/design/rolehistory.html Mon Feb  2 16:29:57 2015
@@ -583,7 +583,7 @@ will not be satisfied by that node.</p>
 then re-requesting containers on it will amplify the damage.</p>
 <h2 id="actions">Actions</h2>
 <h3 id="bootstrap">Bootstrap</h3>
-<p>1Persistent Role History file not found; empty data structures created.</p>
+<p>Persistent Role History file not found; empty data structures created.</p>
 <h3 id="restart">Restart</h3>
 <p>When starting a cluster, the Role History should be loaded. </p>
 <p>If the history is missing <em>or cannot be loaded for any reason</em>,
@@ -602,25 +602,26 @@ after the last save is unknown.</p>
 <p>1: Role History loaded; Failure =&gt; Bootstrap.
 2: Future: if role list enum != current enum, remapping could take place. Until then: fail.
 3: Mark all nodes as active at save time to that of the</p>
-<p>//define a threshold
-   threshold = rolehistory.saveTime - 7<em>24</em>60<em>60</em> 1000</p>
-<div class="codehilite"><pre><span class="k">for</span> <span class="p">(</span><span class="n">clusterId</span><span class="p">,</span> <span class="n">clusternode</span><span class="p">)</span> <span class="n">in</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">clusterNodes</span><span class="p">().</span><span class="n">entries</span><span class="p">()</span> <span class="p">:</span>
-  <span class="k">for</span> <span class="p">(</span><span class="n">role</span><span class="p">,</span> <span class="n">nodeEntry</span><span class="p">)</span> <span class="n">in</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">():</span>
-    <span class="n">nodeEntry</span><span class="p">.</span><span class="n">requested</span> <span class="p">=</span> 0
-    <span class="n">nodeEntry</span><span class="p">.</span><span class="n">releasing</span> <span class="p">=</span> 0
-    <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">active</span> <span class="o">&gt;</span> 0 <span class="p">:</span>
-      <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="p">=</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">saveTime</span><span class="p">;</span>
-    <span class="n">nodeEntry</span><span class="p">.</span><span class="n">n</span><span class="p">.</span><span class="n">active</span> <span class="p">=</span> 0
-    <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="o">&lt;</span> <span class="n">threshold</span> <span class="p">:</span>
+<div class="codehilite"><pre><span class="c1">//define a threshold</span>
+<span class="n">threshold</span> <span class="o">=</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">saveTime</span> <span class="o">-</span> <span class="mh">7</span><span class="o">*</span><span class="mh">24</span><span class="o">*</span><span class="mh">60</span><span class="o">*</span><span class="mh">60</span><span class="o">*</span> <span class="mh">1000</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="n">clusterId</span><span class="p">,</span> <span class="n">clusternode</span><span class="p">)</span> <span class="n">in</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">clusterNodes</span><span class="p">().</span><span class="n">entries</span><span class="p">()</span> <span class="o">:</span>
+  <span class="k">for</span> <span class="p">(</span><span class="n">role</span><span class="p">,</span> <span class="n">nodeEntry</span><span class="p">)</span> <span class="n">in</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">()</span><span class="o">:</span>
+    <span class="n">nodeEntry</span><span class="p">.</span><span class="n">requested</span> <span class="o">=</span> <span class="mh">0</span>
+    <span class="n">nodeEntry</span><span class="p">.</span><span class="n">releasing</span> <span class="o">=</span> <span class="mh">0</span>
+    <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">active</span> <span class="o">&gt;</span> <span class="mh">0</span> <span class="o">:</span>
+      <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="o">=</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">saveTime</span><span class="p">;</span>
+    <span class="n">nodeEntry</span><span class="p">.</span><span class="n">n</span><span class="p">.</span><span class="n">active</span> <span class="o">=</span> <span class="mh">0</span>
+    <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="o">&lt;</span> <span class="n">threshold</span> <span class="o">:</span>
       <span class="n">clusterNode</span><span class="p">.</span><span class="n">remove</span><span class="p">(</span><span class="n">role</span><span class="p">)</span>
-    <span class="k">else</span><span class="p">:</span>
+    <span class="k">else</span><span class="o">:</span>
      <span class="n">availableNodes</span><span class="p">[</span><span class="n">role</span><span class="p">].</span><span class="n">add</span><span class="p">(</span><span class="n">clusterId</span><span class="p">)</span>
-   <span class="k">if</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">()</span> <span class="n">isEmpty</span> <span class="p">:</span>
+   <span class="k">if</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">()</span> <span class="n">isEmpty</span> <span class="o">:</span>
      <span class="n">rolehistory</span><span class="p">.</span><span class="n">clusterNodes</span><span class="p">.</span><span class="n">remove</span><span class="p">(</span><span class="n">clusterId</span><span class="p">)</span>
 
 
-<span class="k">for</span> <span class="n">availableNode</span> <span class="n">in</span> <span class="n">availableNodes</span><span class="p">:</span>
-  <span class="n">sort</span><span class="p">(</span><span class="n">availableNode</span><span class="p">,</span><span class="n">new</span> <span class="n">last_used_comparator</span><span class="p">())</span>
+<span class="k">for</span> <span class="n">availableNode</span> <span class="n">in</span> <span class="nl">availableNodes:</span>
+  <span class="n">sort</span><span class="p">(</span><span class="n">availableNode</span><span class="p">,</span><span class="k">new</span> <span class="n">last_used_comparator</span><span class="p">())</span>
 </pre></div>
 
 

Modified: websites/staging/slider/trunk/content/developing/releasing.html
==============================================================================
--- websites/staging/slider/trunk/content/developing/releasing.html (original)
+++ websites/staging/slider/trunk/content/developing/releasing.html Mon Feb  2 16:29:57 2015
@@ -628,19 +628,9 @@ To send the message to announcement@apac
 </pre></div>
 
 
-<h3 id="push-the-release-to-originmaster-todo">Push the release to origin/master —TODO</h3>
-<p><strong> TODO </strong></p>
-<p>Goal: get the master branch updated with this release, with any changes in the release taking priority over the versions in /master. </p>
-<p>This is where gitflow breaks down. It may be better to have tags like <code>latest_stable</code> and <code>latest_development</code> and just move them along. </p>
-<p>Otherwise: 
-In the branch for the release, go to the tag create for the release by maven. This represents the code released, including the version numbering of the release artifact (not the HEAD of the branch, which has the incremented one)</p>
-<div class="codehilite"><pre><span class="n">git</span> <span class="n">tag</span> <span class="o">-</span><span class="n">a</span> $<span class="n">SLIDER_RELEASE</span> <span class="o">-</span><span class="n">m</span> <span class="s">&#39;Slider $SLIDER_RELEASE&#39;</span> $<span class="n">RELEASE_TAG</span>
-<span class="n">git</span> <span class="n">push</span> <span class="n">origin</span> $<span class="n">SLIDER_RELEASE</span>
-<span class="n">git</span> <span class="n">checkout</span> <span class="n">master</span>
-<span class="n">git</span> <span class="n">merge</span> <span class="n">branch</span> <span class="o">-</span><span class="n">X</span> $<span class="n">SLIDER_RELEASE</span>
-</pre></div>
-
-
+<h2 id="update-the-site">Update the site</h2>
+<p>Update documentation in the svn site repo, then 
+<a href="https://cms.apache.org/slider/publish">trigger a site rebuild</a>.</p>
 <h2 id="finish-the-jira">Finish the JIRA</h2>
 <p>Log the time, close the issue. This should normally be the end of a 
 sprint —so wrap that up too.</p>

Modified: websites/staging/slider/trunk/content/release_notes/release-0.70.0.html
==============================================================================
--- websites/staging/slider/trunk/content/release_notes/release-0.70.0.html (original)
+++ websites/staging/slider/trunk/content/release_notes/release-0.70.0.html Mon Feb  2 16:29:57 2015
@@ -194,14 +194,20 @@ functional. </p>
 <h3 id="slider-151-rest-api"><a href="https://issues.apache.org/jira/browse/SLIDER-151">SLIDER-151 REST API</a></h3>
 <p>This is intended to be a full two-way REST API offered by the Slider Application
 Master to clients. The draft design is <a href="http://slider.incubator.apache.org/docs/api">available on the Slider web site</a>.</p>
-<p>The 0.70 release contains the initial read-only view of this API. It is impossible
+<p>The 0.70 release contains the foundational read-only view of this API.
+Look at the code in <code>org.apache.slider.client.rest</code>, in particular
+the API client, <code>SliderApplicationAPI</code>, and <code>RestClientFactory</code> —which
+builds an instance of <code>SliderApplicationAPI</code> bonded to an application located
+in the Zookeeper-based YARN registry.</p>
+<p>It is impossible
 to offer a secure two-way REST API in Hadoop 2.6, due to how authentication and
 security is implemented in the YARN Resource Manager proxy. Therefore even
 though a two-way API is partially implemented in the slider code, it is explicitly
 read only. To enable it, set the property <code>slider.dev.ws.insecure</code> to true in
 the Slider Application Master. This can be done by setting it in the file 
 <code>$SLIDER_CONF_DIR/slider-server.xml</code>. </p>
-<p><em>warning</em> : once set, anyone on the cluster can </p>
+<p><em>warning</em> : once set, anyone on the cluster can issue side-effecting operations
+against the cluster, such as the <code>stop</code> operation. </p>
 <p>To complement the application master, a new class
 <code>org.apache.slider.client.rest.SliderApplicationAPI</code> is being developed to
 provide a Java-API view of the resources. We hope ultimately to switch