http://git-wip-us.apache.org/repos/asf/hbase-site/blob/346adc37/devapidocs/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html b/devapidocs/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html index cda5289..9f98479 100644 --- a/devapidocs/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html +++ b/devapidocs/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html @@ -123,7 +123,7 @@ var activeTableTab = "activeTableTab"; <hr> <br> <pre><a href="../../../../../../org/apache/hadoop/hbase/classification/InterfaceAudience.Private.html" title="annotation in org.apache.hadoop.hbase.classification">@InterfaceAudience.Private</a> -public abstract class <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.86">RegionTransitionProcedure</a> +public abstract class <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.82">RegionTransitionProcedure</a> extends <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a><<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>> implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html" title="interface in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface</a>, <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteProcedure.html" title="interface in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteProcedure</a><<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>,<a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></pre> <div class="block">Base class for the Assign and Unassign Procedure. @@ -134,6 +134,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T The AssignmentManager will notify this procedure when the RS completes the operation and reports the transitioned state (see the Assign and Unassign class for more detail). + <p>Procedures move from the REGION_TRANSITION_QUEUE state when they are first submitted, to the REGION_TRANSITION_DISPATCH state when the request to remote server is sent and the Procedure is suspended waiting on external @@ -153,20 +154,15 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T assignment to a different target server by setting <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#forceNewPlan"><code>AssignProcedure.forceNewPlan</code></a>. When the number of attempts reach hreshold configuration 'hbase.assignment.maximum.attempts', the procedure is aborted. For <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>UnassignProcedure</code></a>, similar re-attempts are - intentionally not implemented. It is a 'one shot' procedure. + intentionally not implemented. It is a 'one shot' procedure. See its class doc for how it + handles failure. </li> </ul> <p>TODO: Considering it is a priority doing all we can to get make a region available as soon as possible, re-attempting with any target makes sense if specified target fails in case of - <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>AssignProcedure</code></a>. For <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>UnassignProcedure</code></a>, if communication with RS fails, - similar re-attempt makes little sense (what should be different from previous attempt?). Also it - could be complex with current implementation of - <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#execute-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-"><code>execute(MasterProcedureEnv)</code></a> and <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>UnassignProcedure</code></a>. - We have made a choice of keeping <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>UnassignProcedure</code></a> simple, where the procedure either - succeeds or fails depending on communication with RS. As parent will have broader context, parent - can better handle the failed instance of <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>UnassignProcedure</code></a>. Similar simplicity for - <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>AssignProcedure</code></a> is desired and should be explored/ discussed further.</div> + <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>AssignProcedure</code></a>. For <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment"><code>UnassignProcedure</code></a>, our concern is preventing data loss + on failed unassign. See class doc for explanation.</div> </li> </ul> </div> @@ -373,7 +369,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a> response)</code> </td> </tr> <tr id="i19" class="rowColor"> -<td class="colFirst"><code>protected abstract void</code></td> +<td class="colFirst"><code>protected abstract boolean</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</code> </td> @@ -486,7 +482,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>LOG</h4> -<pre>private static final org.apache.commons.logging.Log <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.90">LOG</a></pre> +<pre>private static final org.apache.commons.logging.Log <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.86">LOG</a></pre> </li> </ul> <a name="aborted"> @@ -495,7 +491,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>aborted</h4> -<pre>protected final <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.92">aborted</a></pre> +<pre>protected final <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.88">aborted</a></pre> </li> </ul> <a name="transitionState"> @@ -504,7 +500,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>transitionState</h4> -<pre>private org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.94">transitionState</a></pre> +<pre>private org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.90">transitionState</a></pre> </li> </ul> <a name="regionInfo"> @@ -513,7 +509,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>regionInfo</h4> -<pre>private <a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.96">regionInfo</a></pre> +<pre>private <a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.92">regionInfo</a></pre> </li> </ul> <a name="lock"> @@ -522,7 +518,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockListLast"> <li class="blockList"> <h4>lock</h4> -<pre>private volatile boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.97">lock</a></pre> +<pre>private volatile boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.93">lock</a></pre> </li> </ul> </li> @@ -539,7 +535,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>RegionTransitionProcedure</h4> -<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.99">RegionTransitionProcedure</a>()</pre> +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.95">RegionTransitionProcedure</a>()</pre> </li> </ul> <a name="RegionTransitionProcedure-org.apache.hadoop.hbase.HRegionInfo-"> @@ -548,7 +544,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockListLast"> <li class="blockList"> <h4>RegionTransitionProcedure</h4> -<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.104">RegionTransitionProcedure</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo)</pre> +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.100">RegionTransitionProcedure</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo)</pre> </li> </ul> </li> @@ -565,7 +561,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>getRegionInfo</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.108">getRegionInfo</a>()</pre> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.104">getRegionInfo</a>()</pre> </li> </ul> <a name="setRegionInfo-org.apache.hadoop.hbase.HRegionInfo-"> @@ -574,7 +570,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>setRegionInfo</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.112">setRegionInfo</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo)</pre> +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.108">setRegionInfo</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo)</pre> </li> </ul> <a name="getTableName--"> @@ -583,7 +579,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>getTableName</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.118">getTableName</a>()</pre> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.114">getTableName</a>()</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> <dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html#getTableName--">getTableName</a></code> in interface <code><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html" title="interface in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface</a></code></dd> @@ -598,7 +594,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>isMeta</h4> -<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.123">isMeta</a>()</pre> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.119">isMeta</a>()</pre> </li> </ul> <a name="toStringClassDetails-java.lang.StringBuilder-"> @@ -607,7 +603,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>toStringClassDetails</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.128">toStringClassDetails</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a> sb)</pre> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.124">toStringClassDetails</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a> sb)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#toStringClassDetails-java.lang.StringBuilder-">Procedure</a></code></span></div> <div class="block">Extend the toString() information with the procedure details e.g. className and parameters</div> @@ -625,7 +621,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>getRegionState</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.136">getRegionState</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.132">getRegionState</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> </li> </ul> <a name="setTransitionState-org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState-"> @@ -634,7 +630,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>setTransitionState</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.141">setTransitionState</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState state)</pre> +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.137">setTransitionState</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState state)</pre> </li> </ul> <a name="getTransitionState--"> @@ -643,7 +639,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>getTransitionState</h4> -<pre>protected org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.145">getTransitionState</a>()</pre> +<pre>protected org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.141">getTransitionState</a>()</pre> </li> </ul> <a name="startTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-"> @@ -652,7 +648,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>startTransition</h4> -<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.149">startTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.145">startTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>, <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureSuspendedException.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureSuspendedException</a></pre> @@ -669,7 +665,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>updateTransition</h4> -<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.158">updateTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.154">updateTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>, <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureSuspendedException.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureSuspendedException</a></pre> @@ -690,7 +686,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>finishTransition</h4> -<pre>protected abstract void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.161">finishTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected abstract void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.157">finishTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>, <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureSuspendedException.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureSuspendedException</a></pre> @@ -707,7 +703,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>reportTransition</h4> -<pre>protected abstract void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.164">reportTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected abstract void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.160">reportTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode code, long seqId) @@ -724,7 +720,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>remoteCallBuild</h4> -<pre>public abstract <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.167">remoteCallBuild</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>public abstract <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.163">remoteCallBuild</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName)</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> @@ -738,9 +734,15 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>remoteCallFailed</h4> -<pre>protected abstract void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.168">remoteCallFailed</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, - <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, - <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</pre> +<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.170">remoteCallFailed</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, + <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, + <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</pre> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>True if processing of fail is complete; the procedure will be woken from its suspend + and we'll go back to running through procedure steps: + otherwise if false we leave the procedure in suspended state.</dd> +</dl> </li> </ul> <a name="remoteCallCompleted-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.ServerName-org.apache.hadoop.hbase.procedure2.RemoteProcedureDispatcher.RemoteOperation-"> @@ -749,7 +751,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>remoteCallCompleted</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.172">remoteCallCompleted</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.174">remoteCallCompleted</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName, <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a> response)</pre> <dl> @@ -764,7 +766,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>remoteCallFailed</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.178">remoteCallFailed</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.180">remoteCallFailed</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</pre> <dl> @@ -779,7 +781,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>addToRemoteDispatcher</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.201">addToRemoteDispatcher</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.206">addToRemoteDispatcher</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> targetServer)</pre> <div class="block">Be careful! At the end of this method, the procedure has either succeeded and this procedure has been set into a suspended state OR, we failed and @@ -799,7 +801,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>reportTransition</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.224">reportTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.230">reportTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName, org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode code, long seqId) @@ -816,7 +818,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>isServerOnline</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.252">isServerOnline</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.258">isServerOnline</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode)</pre> </li> </ul> @@ -826,7 +828,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>isServerOnline</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.256">isServerOnline</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.262">isServerOnline</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName)</pre> </li> </ul> @@ -836,7 +838,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>toStringState</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.261">toStringState</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a> builder)</pre> +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.267">toStringState</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a> builder)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#toStringState-java.lang.StringBuilder-">Procedure</a></code></span></div> <div class="block">Called from <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#toString--"><code>Procedure.toString()</code></a> when interpolating <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2"><code>Procedure</code></a> State. Allows decorating generic Procedure State with Procedure particulars.</div> @@ -854,7 +856,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>execute</h4> -<pre>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.270">execute</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env) +<pre>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.276">execute</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env) throws <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureSuspendedException.html" title="class in org.apache.hadoop.hbase.procedure2">ProcedureSuspendedException</a></pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#execute-TEnvironment-">Procedure</a></code></span></div> <div class="block">The main code of the procedure. It must be idempotent since execute() @@ -880,7 +882,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>rollback</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.332">rollback</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.338">rollback</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#rollback-TEnvironment-">Procedure</a></code></span></div> <div class="block">The code to undo what was done by the execute() code. It is called when the procedure or one of the sub-procedures failed or an @@ -902,7 +904,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>isRollbackSupported</h4> -<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.347">isRollbackSupported</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState state)</pre> +<pre>protected abstract boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.353">isRollbackSupported</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState state)</pre> </li> </ul> <a name="abort-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-"> @@ -911,7 +913,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>abort</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.350">abort</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.356">abort</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#abort-TEnvironment-">Procedure</a></code></span></div> <div class="block">The abort() call is asynchronous and each procedure must decide how to deal with it, if they want to be abortable. The simplest implementation @@ -934,7 +936,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>acquireLock</h4> -<pre>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.359">acquireLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2">Procedure.LockState</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.365">acquireLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#acquireLock-TEnvironment-">Procedure</a></code></span></div> <div class="block">The user should override this method if they need a lock on an Entity. A lock can be anything, and it is up to the implementor. The Procedure @@ -971,7 +973,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>releaseLock</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.382">releaseLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.388">releaseLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#releaseLock-TEnvironment-">Procedure</a></code></span></div> <div class="block">The user should override this method, and release lock if necessary.</div> <dl> @@ -986,7 +988,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>holdLock</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.388">holdLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.394">holdLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#holdLock-TEnvironment-">Procedure</a></code></span></div> <div class="block">Used to keep the procedure lock even when the procedure is yielding or suspended. Must implement <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#hasLock-TEnvironment-"><code>Procedure.hasLock(Object)</code></a> if you want to hold the lock for life @@ -1007,7 +1009,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>hasLock</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.393">hasLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.399">hasLock</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#hasLock-TEnvironment-">Procedure</a></code></span></div> <div class="block">This is used in conjunction with <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#holdLock-TEnvironment-"><code>Procedure.holdLock(Object)</code></a>. If <a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#holdLock-TEnvironment-"><code>Procedure.holdLock(Object)</code></a> returns true, the procedure executor will call acquireLock() once and thereafter @@ -1029,7 +1031,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockList"> <li class="blockList"> <h4>shouldWaitClientAck</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.398">shouldWaitClientAck</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.404">shouldWaitClientAck</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#shouldWaitClientAck-TEnvironment-">Procedure</a></code></span></div> <div class="block">By default, the executor will keep the procedure result around util the eviction TTL is expired. The client can cut down the waiting time @@ -1052,7 +1054,7 @@ implements <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/T <ul class="blockListLast"> <li class="blockList"> <h4>getServer</h4> -<pre>public abstract <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.408">getServer</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>public abstract <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#line.414">getServer</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block">Used by ServerCrashProcedure to see if this Assign/Unassign needs processing.</div> <dl> <dt><span class="returnLabel">Returns:</span></dt>
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/346adc37/devapidocs/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html b/devapidocs/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html index 737db72..dcc639e 100644 --- a/devapidocs/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html +++ b/devapidocs/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html @@ -124,20 +124,30 @@ var activeTableTab = "activeTableTab"; <hr> <br> <pre><a href="../../../../../../org/apache/hadoop/hbase/classification/InterfaceAudience.Private.html" title="annotation in org.apache.hadoop.hbase.classification">@InterfaceAudience.Private</a> -public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.66">UnassignProcedure</a> +public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.77">UnassignProcedure</a> extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionTransitionProcedure</a></pre> -<div class="block">Procedure that describe the unassignment of a single region. - There can only be one RegionTransitionProcedure per region running at the time, - since each procedure takes a lock on the region. +<div class="block">Procedure that describes the unassignment of a single region. + There can only be one RegionTransitionProcedure -- i.e. an assign or an unassign -- per region + running at a time, since each procedure takes a lock on the region. <p>The Unassign starts by placing a "close region" request in the Remote Dispatcher - queue, and the procedure will then go into a "waiting state". + queue, and the procedure will then go into a "waiting state" (suspend). The Remote Dispatcher will batch the various requests for that server and they will be sent to the RS for execution. The RS will complete the open operation by calling master.reportRegionStateTransition(). - The AM will intercept the transition report, and notify the procedure. - The procedure will finish the unassign by publishing its new state on meta - or it will retry the unassign.</div> + The AM will intercept the transition report, and notify this procedure. + The procedure will wakeup and finish the unassign by publishing its new state on meta. + <p>If we are unable to contact the remote regionserver whether because of ConnectException + or socket timeout, we will call expire on the server we were trying to contact. We will remain + in suspended state waiting for a wake up from the ServerCrashProcedure that is processing the + failed server. The basic idea is that if we notice a crashed server, then we have a + responsibility; i.e. we should not let go of the region until we are sure the server that was + hosting has had its crash processed. If we let go of the region before then, an assign might + run before the logs have been split which would make for data loss. + + <p>TODO: Rather than this tricky coordination between SCP and this Procedure, instead, work on + returning a SCP as our subprocedure; probably needs work on the framework to do this, + especially if the SCP already created.</div> </li> </ul> </div> @@ -198,10 +208,6 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <td class="colFirst"><code>private static org.apache.commons.logging.Log</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#LOG">LOG</a></span></code> </td> </tr> -<tr class="altColor"> -<td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a></code></td> -<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#serverCrashed">serverCrashed</a></span></code> </td> -</tr> </table> <ul class="blockList"> <li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.master.assignment.RegionTransitionProcedure"> @@ -300,7 +306,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName)</code> </td> </tr> <tr id="i7" class="rowColor"> -<td class="colFirst"><code>protected void</code></td> +<td class="colFirst"><code>protected boolean</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</code> </td> @@ -380,7 +386,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>LOG</h4> -<pre>private static final org.apache.commons.logging.Log <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.67">LOG</a></pre> +<pre>private static final org.apache.commons.logging.Log <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.78">LOG</a></pre> </li> </ul> <a name="hostingServer"> @@ -389,7 +395,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>hostingServer</h4> -<pre>protected volatile <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.72">hostingServer</a></pre> +<pre>protected volatile <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.83">hostingServer</a></pre> <div class="block">Where to send the unassign RPC.</div> </li> </ul> @@ -399,26 +405,17 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>destinationServer</h4> -<pre>protected volatile <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.76">destinationServer</a></pre> +<pre>protected volatile <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.87">destinationServer</a></pre> <div class="block">The Server we will subsequently assign the region too (can be null).</div> </li> </ul> -<a name="serverCrashed"> -<!-- --> -</a> -<ul class="blockList"> -<li class="blockList"> -<h4>serverCrashed</h4> -<pre>protected final <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.78">serverCrashed</a></pre> -</li> -</ul> <a name="force"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>force</h4> -<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.82">force</a></pre> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.91">force</a></pre> </li> </ul> </li> @@ -435,7 +432,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>UnassignProcedure</h4> -<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.84">UnassignProcedure</a>()</pre> +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.93">UnassignProcedure</a>()</pre> </li> </ul> <a name="UnassignProcedure-org.apache.hadoop.hbase.HRegionInfo-org.apache.hadoop.hbase.ServerName-boolean-"> @@ -444,7 +441,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>UnassignProcedure</h4> -<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.89">UnassignProcedure</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo, +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.98">UnassignProcedure</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> hostingServer, boolean force)</pre> </li> @@ -455,7 +452,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockListLast"> <li class="blockList"> <h4>UnassignProcedure</h4> -<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.94">UnassignProcedure</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo, +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.103">UnassignProcedure</a>(<a href="../../../../../../org/apache/hadoop/hbase/HRegionInfo.html" title="class in org.apache.hadoop.hbase">HRegionInfo</a> regionInfo, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> hostingServer, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> destinationServer, boolean force)</pre> @@ -475,7 +472,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>getTableOperationType</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.106">getTableOperationType</a>()</pre> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.115">getTableOperationType</a>()</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html#getTableOperationType--">TableProcedureInterface</a></code></span></div> <div class="block">Given an operation type we can take decisions about what to do with pending operations. e.g. if we get a delete and we have some table operation pending (e.g. add column) @@ -492,7 +489,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>isRollbackSupported</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.111">isRollbackSupported</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState state)</pre> +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.120">isRollbackSupported</a>(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState state)</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> <dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#isRollbackSupported-org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState-">isRollbackSupported</a></code> in class <code><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionTransitionProcedure</a></code></dd> @@ -505,7 +502,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>serializeStateData</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.122">serializeStateData</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a> stream) +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.131">serializeStateData</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a> stream) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#serializeStateData-java.io.OutputStream-">Procedure</a></code></span></div> <div class="block">The user-level code of the procedure may have some state to @@ -527,7 +524,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>deserializeStateData</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.137">deserializeStateData</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a> stream) +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.146">deserializeStateData</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a> stream) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#deserializeStateData-java.io.InputStream-">Procedure</a></code></span></div> <div class="block">Called on store load to allow the user to decode the previously serialized @@ -548,7 +545,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>startTransition</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.149">startTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.158">startTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode)</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> @@ -562,7 +559,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>updateTransition</h4> -<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.156">updateTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.165">updateTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#updateTransition-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-">RegionTransitionProcedure</a></code></span></div> @@ -584,7 +581,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>finishTransition</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.195">finishTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.192">finishTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode) throws <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> <dl> @@ -601,7 +598,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>remoteCallBuild</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.201">remoteCallBuild</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteOperation.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteOperation</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.198">remoteCallBuild</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> serverName)</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> @@ -617,7 +614,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>reportTransition</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.207">reportTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.204">reportTransition</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode code, long seqId) @@ -636,12 +633,16 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>remoteCallFailed</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.221">remoteCallFailed</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, - <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, - <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</pre> +<pre>protected boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.218">remoteCallFailed</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, + <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, + <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> <dd><code><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-java.io.IOException-">remoteCallFailed</a></code> in class <code><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionTransitionProcedure</a></code></dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>True if processing of fail is complete; the procedure will be woken from its suspend + and we'll go back to running through procedure steps: + otherwise if false we leave the procedure in suspended state.</dd> </dl> </li> </ul> @@ -651,7 +652,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>toStringClassDetails</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.256">toStringClassDetails</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a> sb)</pre> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.258">toStringClassDetails</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a> sb)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#toStringClassDetails-java.lang.StringBuilder-">Procedure</a></code></span></div> <div class="block">Extend the toString() information with the procedure details e.g. className and parameters</div> @@ -669,7 +670,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockList"> <li class="blockList"> <h4>getServer</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.262">getServer</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.264">getServer</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#getServer-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-">RegionTransitionProcedure</a></code></span></div> <div class="block">Used by ServerCrashProcedure to see if this Assign/Unassign needs processing.</div> <dl> @@ -686,7 +687,7 @@ extends <a href="../../../../../../org/apache/hadoop/hbase/master/assignment/Reg <ul class="blockListLast"> <li class="blockList"> <h4>getProcedureMetrics</h4> -<pre>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.267">getProcedureMetrics</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> +<pre>protected <a href="../../../../../../org/apache/hadoop/hbase/procedure2/ProcedureMetrics.html" title="interface in org.apache.hadoop.hbase.procedure2">ProcedureMetrics</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#line.269">getProcedureMetrics</a>(<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env)</pre> <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html#getProcedureMetrics-TEnvironment-">Procedure</a></code></span></div> <div class="block">Override this method to provide procedure specific counters for submitted count, failed count and time histogram.</div> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/346adc37/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStates.RegionStateNode.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStates.RegionStateNode.html b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStates.RegionStateNode.html index e8dcd1b..b6634ac 100644 --- a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStates.RegionStateNode.html +++ b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionStates.RegionStateNode.html @@ -315,19 +315,19 @@ </td> </tr> <tr class="altColor"> -<td class="colFirst"><code>protected void</code></td> +<td class="colFirst"><code>protected boolean</code></td> <td class="colLast"><span class="typeNameLabel">UnassignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</code> </td> </tr> <tr class="rowColor"> -<td class="colFirst"><code>protected abstract void</code></td> +<td class="colFirst"><code>protected abstract boolean</code></td> <td class="colLast"><span class="typeNameLabel">RegionTransitionProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</code> </td> </tr> <tr class="altColor"> -<td class="colFirst"><code>protected void</code></td> +<td class="colFirst"><code>protected boolean</code></td> <td class="colLast"><span class="typeNameLabel">AssignProcedure.</span><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/AssignProcedure.html#remoteCallFailed-org.apache.hadoop.hbase.master.procedure.MasterProcedureEnv-org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateNode-java.io.IOException-">remoteCallFailed</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a> env, <a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/RegionStates.RegionStateNode.html" title="class in org.apache.hadoop.hbase.master.assignment">RegionStates.RegionStateNode</a> regionNode, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> exception)</code> </td> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/346adc37/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionTransitionProcedure.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionTransitionProcedure.html b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionTransitionProcedure.html index 8bdc2f0..e1db7db 100644 --- a/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionTransitionProcedure.html +++ b/devapidocs/org/apache/hadoop/hbase/master/assignment/class-use/RegionTransitionProcedure.html @@ -111,7 +111,7 @@ <tr class="rowColor"> <td class="colFirst"><code>class </code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">UnassignProcedure</a></span></code> -<div class="block">Procedure that describe the unassignment of a single region.</div> +<div class="block">Procedure that describes the unassignment of a single region.</div> </td> </tr> </tbody>
