You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by gi...@apache.org on 2018/03/08 14:53:58 UTC

[04/25] hbase-site git commit: Published site at a03d09abd72789bbf9364d8a9b2c54d0e9351af9.

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e9a81b89/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.GoodRsExecutor.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.GoodRsExecutor.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.GoodRsExecutor.html
index 507c0cd..d27f392 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.GoodRsExecutor.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.GoodRsExecutor.html
@@ -720,7 +720,7 @@
 <span class="sourceLineNo">712</span>  }<a name="line.712"></a>
 <span class="sourceLineNo">713</span><a name="line.713"></a>
 <span class="sourceLineNo">714</span>  private class HangOnCloseThenRSCrashExecutor extends GoodRsExecutor {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    public static final int TYPES_OF_FAILURE = 7;<a name="line.715"></a>
+<span class="sourceLineNo">715</span>    public static final int TYPES_OF_FAILURE = 6;<a name="line.715"></a>
 <span class="sourceLineNo">716</span>    private int invocations;<a name="line.716"></a>
 <span class="sourceLineNo">717</span><a name="line.717"></a>
 <span class="sourceLineNo">718</span>    @Override<a name="line.718"></a>
@@ -732,129 +732,121 @@
 <span class="sourceLineNo">724</span>      case 2: throw new RegionServerStoppedException("Fake!");<a name="line.724"></a>
 <span class="sourceLineNo">725</span>      case 3: throw new ServerNotRunningYetException("Fake!");<a name="line.725"></a>
 <span class="sourceLineNo">726</span>      case 4:<a name="line.726"></a>
-<span class="sourceLineNo">727</span>        // We will expire the server that we failed to rpc against.<a name="line.727"></a>
-<span class="sourceLineNo">728</span>        throw new FailedRemoteDispatchException("Fake!");<a name="line.728"></a>
-<span class="sourceLineNo">729</span>      case 5:<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        // Mark this regionserver as already expiring so we go different code route; i.e. we<a name="line.730"></a>
-<span class="sourceLineNo">731</span>        // FAIL to expire the remote server and presume ok to move region to CLOSED. HBASE-20137.<a name="line.731"></a>
-<span class="sourceLineNo">732</span>        TestAssignmentManager.this.master.getServerManager().expireServer(server);<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        throw new FailedRemoteDispatchException("Fake!");<a name="line.733"></a>
-<span class="sourceLineNo">734</span>      case 6:<a name="line.734"></a>
-<span class="sourceLineNo">735</span>        LOG.info("Return null response from serverName=" + server + "; means STUCK...TODO timeout");<a name="line.735"></a>
-<span class="sourceLineNo">736</span>        executor.schedule(new Runnable() {<a name="line.736"></a>
-<span class="sourceLineNo">737</span>          @Override<a name="line.737"></a>
-<span class="sourceLineNo">738</span>          public void run() {<a name="line.738"></a>
-<span class="sourceLineNo">739</span>            LOG.info("Sending in CRASH of " + server);<a name="line.739"></a>
-<span class="sourceLineNo">740</span>            doCrash(server);<a name="line.740"></a>
-<span class="sourceLineNo">741</span>          }<a name="line.741"></a>
-<span class="sourceLineNo">742</span>        }, 1, TimeUnit.SECONDS);<a name="line.742"></a>
-<span class="sourceLineNo">743</span>        return null;<a name="line.743"></a>
-<span class="sourceLineNo">744</span>      default:<a name="line.744"></a>
-<span class="sourceLineNo">745</span>        return super.execCloseRegion(server, regionName);<a name="line.745"></a>
-<span class="sourceLineNo">746</span>      }<a name="line.746"></a>
-<span class="sourceLineNo">747</span>    }<a name="line.747"></a>
-<span class="sourceLineNo">748</span>  }<a name="line.748"></a>
-<span class="sourceLineNo">749</span><a name="line.749"></a>
-<span class="sourceLineNo">750</span>  private class RandRsExecutor extends NoopRsExecutor {<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    private final Random rand = new Random();<a name="line.751"></a>
-<span class="sourceLineNo">752</span><a name="line.752"></a>
-<span class="sourceLineNo">753</span>    @Override<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.754"></a>
-<span class="sourceLineNo">755</span>        throws IOException {<a name="line.755"></a>
-<span class="sourceLineNo">756</span>      switch (rand.nextInt(5)) {<a name="line.756"></a>
-<span class="sourceLineNo">757</span>        case 0: throw new ServerNotRunningYetException("wait on server startup");<a name="line.757"></a>
-<span class="sourceLineNo">758</span>        case 1: throw new SocketTimeoutException("simulate socket timeout");<a name="line.758"></a>
-<span class="sourceLineNo">759</span>        case 2: throw new RemoteException("java.io.IOException", "unexpected exception");<a name="line.759"></a>
-<span class="sourceLineNo">760</span>      }<a name="line.760"></a>
-<span class="sourceLineNo">761</span>      return super.sendRequest(server, req);<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    @Override<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    protected RegionOpeningState execOpenRegion(final ServerName server, RegionOpenInfo openReq)<a name="line.765"></a>
-<span class="sourceLineNo">766</span>        throws IOException {<a name="line.766"></a>
-<span class="sourceLineNo">767</span>      switch (rand.nextInt(6)) {<a name="line.767"></a>
-<span class="sourceLineNo">768</span>        case 0:<a name="line.768"></a>
-<span class="sourceLineNo">769</span>          LOG.info("Return OPENED response");<a name="line.769"></a>
-<span class="sourceLineNo">770</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.770"></a>
-<span class="sourceLineNo">771</span>          return OpenRegionResponse.RegionOpeningState.OPENED;<a name="line.771"></a>
-<span class="sourceLineNo">772</span>        case 1:<a name="line.772"></a>
-<span class="sourceLineNo">773</span>          LOG.info("Return transition report that OPENED/ALREADY_OPENED response");<a name="line.773"></a>
-<span class="sourceLineNo">774</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.774"></a>
-<span class="sourceLineNo">775</span>          return OpenRegionResponse.RegionOpeningState.ALREADY_OPENED;<a name="line.775"></a>
-<span class="sourceLineNo">776</span>        case 2:<a name="line.776"></a>
-<span class="sourceLineNo">777</span>          LOG.info("Return transition report that FAILED_OPEN/FAILED_OPENING response");<a name="line.777"></a>
-<span class="sourceLineNo">778</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.FAILED_OPEN);<a name="line.778"></a>
-<span class="sourceLineNo">779</span>          return OpenRegionResponse.RegionOpeningState.FAILED_OPENING;<a name="line.779"></a>
-<span class="sourceLineNo">780</span>      }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>      // The procedure on master will just hang forever because nothing comes back<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      // from the RS in this case.<a name="line.782"></a>
-<span class="sourceLineNo">783</span>      LOG.info("Return null as response; means proc stuck so we send in a crash report after a few seconds...");<a name="line.783"></a>
-<span class="sourceLineNo">784</span>      executor.schedule(new Runnable() {<a name="line.784"></a>
-<span class="sourceLineNo">785</span>        @Override<a name="line.785"></a>
-<span class="sourceLineNo">786</span>        public void run() {<a name="line.786"></a>
-<span class="sourceLineNo">787</span>          LOG.info("Delayed CRASHING of " + server);<a name="line.787"></a>
-<span class="sourceLineNo">788</span>          doCrash(server);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>        }<a name="line.789"></a>
-<span class="sourceLineNo">790</span>      }, 5, TimeUnit.SECONDS);<a name="line.790"></a>
-<span class="sourceLineNo">791</span>      return null;<a name="line.791"></a>
-<span class="sourceLineNo">792</span>    }<a name="line.792"></a>
-<span class="sourceLineNo">793</span><a name="line.793"></a>
-<span class="sourceLineNo">794</span>    @Override<a name="line.794"></a>
-<span class="sourceLineNo">795</span>    protected CloseRegionResponse execCloseRegion(ServerName server, byte[] regionName)<a name="line.795"></a>
-<span class="sourceLineNo">796</span>        throws IOException {<a name="line.796"></a>
-<span class="sourceLineNo">797</span>      CloseRegionResponse.Builder resp = CloseRegionResponse.newBuilder();<a name="line.797"></a>
-<span class="sourceLineNo">798</span>      boolean closed = rand.nextBoolean();<a name="line.798"></a>
-<span class="sourceLineNo">799</span>      if (closed) {<a name="line.799"></a>
-<span class="sourceLineNo">800</span>        RegionInfo hri = am.getRegionInfo(regionName);<a name="line.800"></a>
-<span class="sourceLineNo">801</span>        sendTransitionReport(server, ProtobufUtil.toRegionInfo(hri), TransitionCode.CLOSED);<a name="line.801"></a>
-<span class="sourceLineNo">802</span>      }<a name="line.802"></a>
-<span class="sourceLineNo">803</span>      resp.setClosed(closed);<a name="line.803"></a>
-<span class="sourceLineNo">804</span>      return resp.build();<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    }<a name="line.805"></a>
-<span class="sourceLineNo">806</span>  }<a name="line.806"></a>
+<span class="sourceLineNo">727</span>        LOG.info("Return null response from serverName=" + server + "; means STUCK...TODO timeout");<a name="line.727"></a>
+<span class="sourceLineNo">728</span>        executor.schedule(new Runnable() {<a name="line.728"></a>
+<span class="sourceLineNo">729</span>          @Override<a name="line.729"></a>
+<span class="sourceLineNo">730</span>          public void run() {<a name="line.730"></a>
+<span class="sourceLineNo">731</span>            LOG.info("Sending in CRASH of " + server);<a name="line.731"></a>
+<span class="sourceLineNo">732</span>            doCrash(server);<a name="line.732"></a>
+<span class="sourceLineNo">733</span>          }<a name="line.733"></a>
+<span class="sourceLineNo">734</span>        }, 1, TimeUnit.SECONDS);<a name="line.734"></a>
+<span class="sourceLineNo">735</span>        return null;<a name="line.735"></a>
+<span class="sourceLineNo">736</span>      default:<a name="line.736"></a>
+<span class="sourceLineNo">737</span>        return super.execCloseRegion(server, regionName);<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      }<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>  }<a name="line.740"></a>
+<span class="sourceLineNo">741</span><a name="line.741"></a>
+<span class="sourceLineNo">742</span>  private class RandRsExecutor extends NoopRsExecutor {<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    private final Random rand = new Random();<a name="line.743"></a>
+<span class="sourceLineNo">744</span><a name="line.744"></a>
+<span class="sourceLineNo">745</span>    @Override<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.746"></a>
+<span class="sourceLineNo">747</span>        throws IOException {<a name="line.747"></a>
+<span class="sourceLineNo">748</span>      switch (rand.nextInt(5)) {<a name="line.748"></a>
+<span class="sourceLineNo">749</span>        case 0: throw new ServerNotRunningYetException("wait on server startup");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>        case 1: throw new SocketTimeoutException("simulate socket timeout");<a name="line.750"></a>
+<span class="sourceLineNo">751</span>        case 2: throw new RemoteException("java.io.IOException", "unexpected exception");<a name="line.751"></a>
+<span class="sourceLineNo">752</span>      }<a name="line.752"></a>
+<span class="sourceLineNo">753</span>      return super.sendRequest(server, req);<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
+<span class="sourceLineNo">755</span><a name="line.755"></a>
+<span class="sourceLineNo">756</span>    @Override<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    protected RegionOpeningState execOpenRegion(final ServerName server, RegionOpenInfo openReq)<a name="line.757"></a>
+<span class="sourceLineNo">758</span>        throws IOException {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      switch (rand.nextInt(6)) {<a name="line.759"></a>
+<span class="sourceLineNo">760</span>        case 0:<a name="line.760"></a>
+<span class="sourceLineNo">761</span>          LOG.info("Return OPENED response");<a name="line.761"></a>
+<span class="sourceLineNo">762</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.762"></a>
+<span class="sourceLineNo">763</span>          return OpenRegionResponse.RegionOpeningState.OPENED;<a name="line.763"></a>
+<span class="sourceLineNo">764</span>        case 1:<a name="line.764"></a>
+<span class="sourceLineNo">765</span>          LOG.info("Return transition report that OPENED/ALREADY_OPENED response");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.766"></a>
+<span class="sourceLineNo">767</span>          return OpenRegionResponse.RegionOpeningState.ALREADY_OPENED;<a name="line.767"></a>
+<span class="sourceLineNo">768</span>        case 2:<a name="line.768"></a>
+<span class="sourceLineNo">769</span>          LOG.info("Return transition report that FAILED_OPEN/FAILED_OPENING response");<a name="line.769"></a>
+<span class="sourceLineNo">770</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.FAILED_OPEN);<a name="line.770"></a>
+<span class="sourceLineNo">771</span>          return OpenRegionResponse.RegionOpeningState.FAILED_OPENING;<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      }<a name="line.772"></a>
+<span class="sourceLineNo">773</span>      // The procedure on master will just hang forever because nothing comes back<a name="line.773"></a>
+<span class="sourceLineNo">774</span>      // from the RS in this case.<a name="line.774"></a>
+<span class="sourceLineNo">775</span>      LOG.info("Return null as response; means proc stuck so we send in a crash report after a few seconds...");<a name="line.775"></a>
+<span class="sourceLineNo">776</span>      executor.schedule(new Runnable() {<a name="line.776"></a>
+<span class="sourceLineNo">777</span>        @Override<a name="line.777"></a>
+<span class="sourceLineNo">778</span>        public void run() {<a name="line.778"></a>
+<span class="sourceLineNo">779</span>          LOG.info("Delayed CRASHING of " + server);<a name="line.779"></a>
+<span class="sourceLineNo">780</span>          doCrash(server);<a name="line.780"></a>
+<span class="sourceLineNo">781</span>        }<a name="line.781"></a>
+<span class="sourceLineNo">782</span>      }, 5, TimeUnit.SECONDS);<a name="line.782"></a>
+<span class="sourceLineNo">783</span>      return null;<a name="line.783"></a>
+<span class="sourceLineNo">784</span>    }<a name="line.784"></a>
+<span class="sourceLineNo">785</span><a name="line.785"></a>
+<span class="sourceLineNo">786</span>    @Override<a name="line.786"></a>
+<span class="sourceLineNo">787</span>    protected CloseRegionResponse execCloseRegion(ServerName server, byte[] regionName)<a name="line.787"></a>
+<span class="sourceLineNo">788</span>        throws IOException {<a name="line.788"></a>
+<span class="sourceLineNo">789</span>      CloseRegionResponse.Builder resp = CloseRegionResponse.newBuilder();<a name="line.789"></a>
+<span class="sourceLineNo">790</span>      boolean closed = rand.nextBoolean();<a name="line.790"></a>
+<span class="sourceLineNo">791</span>      if (closed) {<a name="line.791"></a>
+<span class="sourceLineNo">792</span>        RegionInfo hri = am.getRegionInfo(regionName);<a name="line.792"></a>
+<span class="sourceLineNo">793</span>        sendTransitionReport(server, ProtobufUtil.toRegionInfo(hri), TransitionCode.CLOSED);<a name="line.793"></a>
+<span class="sourceLineNo">794</span>      }<a name="line.794"></a>
+<span class="sourceLineNo">795</span>      resp.setClosed(closed);<a name="line.795"></a>
+<span class="sourceLineNo">796</span>      return resp.build();<a name="line.796"></a>
+<span class="sourceLineNo">797</span>    }<a name="line.797"></a>
+<span class="sourceLineNo">798</span>  }<a name="line.798"></a>
+<span class="sourceLineNo">799</span><a name="line.799"></a>
+<span class="sourceLineNo">800</span>  private interface MockRSExecutor {<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.801"></a>
+<span class="sourceLineNo">802</span>        throws IOException;<a name="line.802"></a>
+<span class="sourceLineNo">803</span>  }<a name="line.803"></a>
+<span class="sourceLineNo">804</span><a name="line.804"></a>
+<span class="sourceLineNo">805</span>  private class MockRSProcedureDispatcher extends RSProcedureDispatcher {<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    private MockRSExecutor mockRsExec;<a name="line.806"></a>
 <span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>  private interface MockRSExecutor {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>    ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        throws IOException;<a name="line.810"></a>
-<span class="sourceLineNo">811</span>  }<a name="line.811"></a>
-<span class="sourceLineNo">812</span><a name="line.812"></a>
-<span class="sourceLineNo">813</span>  private class MockRSProcedureDispatcher extends RSProcedureDispatcher {<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    private MockRSExecutor mockRsExec;<a name="line.814"></a>
+<span class="sourceLineNo">808</span>    public MockRSProcedureDispatcher(final MasterServices master) {<a name="line.808"></a>
+<span class="sourceLineNo">809</span>      super(master);<a name="line.809"></a>
+<span class="sourceLineNo">810</span>    }<a name="line.810"></a>
+<span class="sourceLineNo">811</span><a name="line.811"></a>
+<span class="sourceLineNo">812</span>    public void setMockRsExecutor(final MockRSExecutor mockRsExec) {<a name="line.812"></a>
+<span class="sourceLineNo">813</span>      this.mockRsExec = mockRsExec;<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    }<a name="line.814"></a>
 <span class="sourceLineNo">815</span><a name="line.815"></a>
-<span class="sourceLineNo">816</span>    public MockRSProcedureDispatcher(final MasterServices master) {<a name="line.816"></a>
-<span class="sourceLineNo">817</span>      super(master);<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    }<a name="line.818"></a>
-<span class="sourceLineNo">819</span><a name="line.819"></a>
-<span class="sourceLineNo">820</span>    public void setMockRsExecutor(final MockRSExecutor mockRsExec) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      this.mockRsExec = mockRsExec;<a name="line.821"></a>
-<span class="sourceLineNo">822</span>    }<a name="line.822"></a>
-<span class="sourceLineNo">823</span><a name="line.823"></a>
-<span class="sourceLineNo">824</span>    @Override<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    protected void remoteDispatch(ServerName serverName, Set&lt;RemoteProcedure&gt; remoteProcedures) {<a name="line.825"></a>
-<span class="sourceLineNo">826</span>      submitTask(new MockRemoteCall(serverName, remoteProcedures));<a name="line.826"></a>
-<span class="sourceLineNo">827</span>    }<a name="line.827"></a>
-<span class="sourceLineNo">828</span><a name="line.828"></a>
-<span class="sourceLineNo">829</span>    private class MockRemoteCall extends ExecuteProceduresRemoteCall {<a name="line.829"></a>
-<span class="sourceLineNo">830</span>      public MockRemoteCall(final ServerName serverName,<a name="line.830"></a>
-<span class="sourceLineNo">831</span>          final Set&lt;RemoteProcedure&gt; operations) {<a name="line.831"></a>
-<span class="sourceLineNo">832</span>        super(serverName, operations);<a name="line.832"></a>
-<span class="sourceLineNo">833</span>      }<a name="line.833"></a>
+<span class="sourceLineNo">816</span>    @Override<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    protected void remoteDispatch(ServerName serverName, Set&lt;RemoteProcedure&gt; remoteProcedures) {<a name="line.817"></a>
+<span class="sourceLineNo">818</span>      submitTask(new MockRemoteCall(serverName, remoteProcedures));<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    }<a name="line.819"></a>
+<span class="sourceLineNo">820</span><a name="line.820"></a>
+<span class="sourceLineNo">821</span>    private class MockRemoteCall extends ExecuteProceduresRemoteCall {<a name="line.821"></a>
+<span class="sourceLineNo">822</span>      public MockRemoteCall(final ServerName serverName,<a name="line.822"></a>
+<span class="sourceLineNo">823</span>          final Set&lt;RemoteProcedure&gt; operations) {<a name="line.823"></a>
+<span class="sourceLineNo">824</span>        super(serverName, operations);<a name="line.824"></a>
+<span class="sourceLineNo">825</span>      }<a name="line.825"></a>
+<span class="sourceLineNo">826</span><a name="line.826"></a>
+<span class="sourceLineNo">827</span>      @Override<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      protected ExecuteProceduresResponse sendRequest(final ServerName serverName,<a name="line.828"></a>
+<span class="sourceLineNo">829</span>          final ExecuteProceduresRequest request) throws IOException {<a name="line.829"></a>
+<span class="sourceLineNo">830</span>        return mockRsExec.sendRequest(serverName, request);<a name="line.830"></a>
+<span class="sourceLineNo">831</span>      }<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    }<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
 <span class="sourceLineNo">834</span><a name="line.834"></a>
-<span class="sourceLineNo">835</span>      @Override<a name="line.835"></a>
-<span class="sourceLineNo">836</span>      protected ExecuteProceduresResponse sendRequest(final ServerName serverName,<a name="line.836"></a>
-<span class="sourceLineNo">837</span>          final ExecuteProceduresRequest request) throws IOException {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>        return mockRsExec.sendRequest(serverName, request);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      }<a name="line.839"></a>
-<span class="sourceLineNo">840</span>    }<a name="line.840"></a>
-<span class="sourceLineNo">841</span>  }<a name="line.841"></a>
-<span class="sourceLineNo">842</span><a name="line.842"></a>
-<span class="sourceLineNo">843</span>  private void collectAssignmentManagerMetrics() {<a name="line.843"></a>
-<span class="sourceLineNo">844</span>    assignSubmittedCount = assignProcMetrics.getSubmittedCounter().getCount();<a name="line.844"></a>
-<span class="sourceLineNo">845</span>    assignFailedCount = assignProcMetrics.getFailedCounter().getCount();<a name="line.845"></a>
-<span class="sourceLineNo">846</span>    unassignSubmittedCount = unassignProcMetrics.getSubmittedCounter().getCount();<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    unassignFailedCount = unassignProcMetrics.getFailedCounter().getCount();<a name="line.847"></a>
-<span class="sourceLineNo">848</span>  }<a name="line.848"></a>
-<span class="sourceLineNo">849</span>}<a name="line.849"></a>
+<span class="sourceLineNo">835</span>  private void collectAssignmentManagerMetrics() {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    assignSubmittedCount = assignProcMetrics.getSubmittedCounter().getCount();<a name="line.836"></a>
+<span class="sourceLineNo">837</span>    assignFailedCount = assignProcMetrics.getFailedCounter().getCount();<a name="line.837"></a>
+<span class="sourceLineNo">838</span>    unassignSubmittedCount = unassignProcMetrics.getSubmittedCounter().getCount();<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    unassignFailedCount = unassignProcMetrics.getFailedCounter().getCount();<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span>}<a name="line.841"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e9a81b89/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangOnCloseThenRSCrashExecutor.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangOnCloseThenRSCrashExecutor.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangOnCloseThenRSCrashExecutor.html
index 507c0cd..d27f392 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangOnCloseThenRSCrashExecutor.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangOnCloseThenRSCrashExecutor.html
@@ -720,7 +720,7 @@
 <span class="sourceLineNo">712</span>  }<a name="line.712"></a>
 <span class="sourceLineNo">713</span><a name="line.713"></a>
 <span class="sourceLineNo">714</span>  private class HangOnCloseThenRSCrashExecutor extends GoodRsExecutor {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    public static final int TYPES_OF_FAILURE = 7;<a name="line.715"></a>
+<span class="sourceLineNo">715</span>    public static final int TYPES_OF_FAILURE = 6;<a name="line.715"></a>
 <span class="sourceLineNo">716</span>    private int invocations;<a name="line.716"></a>
 <span class="sourceLineNo">717</span><a name="line.717"></a>
 <span class="sourceLineNo">718</span>    @Override<a name="line.718"></a>
@@ -732,129 +732,121 @@
 <span class="sourceLineNo">724</span>      case 2: throw new RegionServerStoppedException("Fake!");<a name="line.724"></a>
 <span class="sourceLineNo">725</span>      case 3: throw new ServerNotRunningYetException("Fake!");<a name="line.725"></a>
 <span class="sourceLineNo">726</span>      case 4:<a name="line.726"></a>
-<span class="sourceLineNo">727</span>        // We will expire the server that we failed to rpc against.<a name="line.727"></a>
-<span class="sourceLineNo">728</span>        throw new FailedRemoteDispatchException("Fake!");<a name="line.728"></a>
-<span class="sourceLineNo">729</span>      case 5:<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        // Mark this regionserver as already expiring so we go different code route; i.e. we<a name="line.730"></a>
-<span class="sourceLineNo">731</span>        // FAIL to expire the remote server and presume ok to move region to CLOSED. HBASE-20137.<a name="line.731"></a>
-<span class="sourceLineNo">732</span>        TestAssignmentManager.this.master.getServerManager().expireServer(server);<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        throw new FailedRemoteDispatchException("Fake!");<a name="line.733"></a>
-<span class="sourceLineNo">734</span>      case 6:<a name="line.734"></a>
-<span class="sourceLineNo">735</span>        LOG.info("Return null response from serverName=" + server + "; means STUCK...TODO timeout");<a name="line.735"></a>
-<span class="sourceLineNo">736</span>        executor.schedule(new Runnable() {<a name="line.736"></a>
-<span class="sourceLineNo">737</span>          @Override<a name="line.737"></a>
-<span class="sourceLineNo">738</span>          public void run() {<a name="line.738"></a>
-<span class="sourceLineNo">739</span>            LOG.info("Sending in CRASH of " + server);<a name="line.739"></a>
-<span class="sourceLineNo">740</span>            doCrash(server);<a name="line.740"></a>
-<span class="sourceLineNo">741</span>          }<a name="line.741"></a>
-<span class="sourceLineNo">742</span>        }, 1, TimeUnit.SECONDS);<a name="line.742"></a>
-<span class="sourceLineNo">743</span>        return null;<a name="line.743"></a>
-<span class="sourceLineNo">744</span>      default:<a name="line.744"></a>
-<span class="sourceLineNo">745</span>        return super.execCloseRegion(server, regionName);<a name="line.745"></a>
-<span class="sourceLineNo">746</span>      }<a name="line.746"></a>
-<span class="sourceLineNo">747</span>    }<a name="line.747"></a>
-<span class="sourceLineNo">748</span>  }<a name="line.748"></a>
-<span class="sourceLineNo">749</span><a name="line.749"></a>
-<span class="sourceLineNo">750</span>  private class RandRsExecutor extends NoopRsExecutor {<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    private final Random rand = new Random();<a name="line.751"></a>
-<span class="sourceLineNo">752</span><a name="line.752"></a>
-<span class="sourceLineNo">753</span>    @Override<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.754"></a>
-<span class="sourceLineNo">755</span>        throws IOException {<a name="line.755"></a>
-<span class="sourceLineNo">756</span>      switch (rand.nextInt(5)) {<a name="line.756"></a>
-<span class="sourceLineNo">757</span>        case 0: throw new ServerNotRunningYetException("wait on server startup");<a name="line.757"></a>
-<span class="sourceLineNo">758</span>        case 1: throw new SocketTimeoutException("simulate socket timeout");<a name="line.758"></a>
-<span class="sourceLineNo">759</span>        case 2: throw new RemoteException("java.io.IOException", "unexpected exception");<a name="line.759"></a>
-<span class="sourceLineNo">760</span>      }<a name="line.760"></a>
-<span class="sourceLineNo">761</span>      return super.sendRequest(server, req);<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    @Override<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    protected RegionOpeningState execOpenRegion(final ServerName server, RegionOpenInfo openReq)<a name="line.765"></a>
-<span class="sourceLineNo">766</span>        throws IOException {<a name="line.766"></a>
-<span class="sourceLineNo">767</span>      switch (rand.nextInt(6)) {<a name="line.767"></a>
-<span class="sourceLineNo">768</span>        case 0:<a name="line.768"></a>
-<span class="sourceLineNo">769</span>          LOG.info("Return OPENED response");<a name="line.769"></a>
-<span class="sourceLineNo">770</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.770"></a>
-<span class="sourceLineNo">771</span>          return OpenRegionResponse.RegionOpeningState.OPENED;<a name="line.771"></a>
-<span class="sourceLineNo">772</span>        case 1:<a name="line.772"></a>
-<span class="sourceLineNo">773</span>          LOG.info("Return transition report that OPENED/ALREADY_OPENED response");<a name="line.773"></a>
-<span class="sourceLineNo">774</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.774"></a>
-<span class="sourceLineNo">775</span>          return OpenRegionResponse.RegionOpeningState.ALREADY_OPENED;<a name="line.775"></a>
-<span class="sourceLineNo">776</span>        case 2:<a name="line.776"></a>
-<span class="sourceLineNo">777</span>          LOG.info("Return transition report that FAILED_OPEN/FAILED_OPENING response");<a name="line.777"></a>
-<span class="sourceLineNo">778</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.FAILED_OPEN);<a name="line.778"></a>
-<span class="sourceLineNo">779</span>          return OpenRegionResponse.RegionOpeningState.FAILED_OPENING;<a name="line.779"></a>
-<span class="sourceLineNo">780</span>      }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>      // The procedure on master will just hang forever because nothing comes back<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      // from the RS in this case.<a name="line.782"></a>
-<span class="sourceLineNo">783</span>      LOG.info("Return null as response; means proc stuck so we send in a crash report after a few seconds...");<a name="line.783"></a>
-<span class="sourceLineNo">784</span>      executor.schedule(new Runnable() {<a name="line.784"></a>
-<span class="sourceLineNo">785</span>        @Override<a name="line.785"></a>
-<span class="sourceLineNo">786</span>        public void run() {<a name="line.786"></a>
-<span class="sourceLineNo">787</span>          LOG.info("Delayed CRASHING of " + server);<a name="line.787"></a>
-<span class="sourceLineNo">788</span>          doCrash(server);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>        }<a name="line.789"></a>
-<span class="sourceLineNo">790</span>      }, 5, TimeUnit.SECONDS);<a name="line.790"></a>
-<span class="sourceLineNo">791</span>      return null;<a name="line.791"></a>
-<span class="sourceLineNo">792</span>    }<a name="line.792"></a>
-<span class="sourceLineNo">793</span><a name="line.793"></a>
-<span class="sourceLineNo">794</span>    @Override<a name="line.794"></a>
-<span class="sourceLineNo">795</span>    protected CloseRegionResponse execCloseRegion(ServerName server, byte[] regionName)<a name="line.795"></a>
-<span class="sourceLineNo">796</span>        throws IOException {<a name="line.796"></a>
-<span class="sourceLineNo">797</span>      CloseRegionResponse.Builder resp = CloseRegionResponse.newBuilder();<a name="line.797"></a>
-<span class="sourceLineNo">798</span>      boolean closed = rand.nextBoolean();<a name="line.798"></a>
-<span class="sourceLineNo">799</span>      if (closed) {<a name="line.799"></a>
-<span class="sourceLineNo">800</span>        RegionInfo hri = am.getRegionInfo(regionName);<a name="line.800"></a>
-<span class="sourceLineNo">801</span>        sendTransitionReport(server, ProtobufUtil.toRegionInfo(hri), TransitionCode.CLOSED);<a name="line.801"></a>
-<span class="sourceLineNo">802</span>      }<a name="line.802"></a>
-<span class="sourceLineNo">803</span>      resp.setClosed(closed);<a name="line.803"></a>
-<span class="sourceLineNo">804</span>      return resp.build();<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    }<a name="line.805"></a>
-<span class="sourceLineNo">806</span>  }<a name="line.806"></a>
+<span class="sourceLineNo">727</span>        LOG.info("Return null response from serverName=" + server + "; means STUCK...TODO timeout");<a name="line.727"></a>
+<span class="sourceLineNo">728</span>        executor.schedule(new Runnable() {<a name="line.728"></a>
+<span class="sourceLineNo">729</span>          @Override<a name="line.729"></a>
+<span class="sourceLineNo">730</span>          public void run() {<a name="line.730"></a>
+<span class="sourceLineNo">731</span>            LOG.info("Sending in CRASH of " + server);<a name="line.731"></a>
+<span class="sourceLineNo">732</span>            doCrash(server);<a name="line.732"></a>
+<span class="sourceLineNo">733</span>          }<a name="line.733"></a>
+<span class="sourceLineNo">734</span>        }, 1, TimeUnit.SECONDS);<a name="line.734"></a>
+<span class="sourceLineNo">735</span>        return null;<a name="line.735"></a>
+<span class="sourceLineNo">736</span>      default:<a name="line.736"></a>
+<span class="sourceLineNo">737</span>        return super.execCloseRegion(server, regionName);<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      }<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>  }<a name="line.740"></a>
+<span class="sourceLineNo">741</span><a name="line.741"></a>
+<span class="sourceLineNo">742</span>  private class RandRsExecutor extends NoopRsExecutor {<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    private final Random rand = new Random();<a name="line.743"></a>
+<span class="sourceLineNo">744</span><a name="line.744"></a>
+<span class="sourceLineNo">745</span>    @Override<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.746"></a>
+<span class="sourceLineNo">747</span>        throws IOException {<a name="line.747"></a>
+<span class="sourceLineNo">748</span>      switch (rand.nextInt(5)) {<a name="line.748"></a>
+<span class="sourceLineNo">749</span>        case 0: throw new ServerNotRunningYetException("wait on server startup");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>        case 1: throw new SocketTimeoutException("simulate socket timeout");<a name="line.750"></a>
+<span class="sourceLineNo">751</span>        case 2: throw new RemoteException("java.io.IOException", "unexpected exception");<a name="line.751"></a>
+<span class="sourceLineNo">752</span>      }<a name="line.752"></a>
+<span class="sourceLineNo">753</span>      return super.sendRequest(server, req);<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
+<span class="sourceLineNo">755</span><a name="line.755"></a>
+<span class="sourceLineNo">756</span>    @Override<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    protected RegionOpeningState execOpenRegion(final ServerName server, RegionOpenInfo openReq)<a name="line.757"></a>
+<span class="sourceLineNo">758</span>        throws IOException {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      switch (rand.nextInt(6)) {<a name="line.759"></a>
+<span class="sourceLineNo">760</span>        case 0:<a name="line.760"></a>
+<span class="sourceLineNo">761</span>          LOG.info("Return OPENED response");<a name="line.761"></a>
+<span class="sourceLineNo">762</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.762"></a>
+<span class="sourceLineNo">763</span>          return OpenRegionResponse.RegionOpeningState.OPENED;<a name="line.763"></a>
+<span class="sourceLineNo">764</span>        case 1:<a name="line.764"></a>
+<span class="sourceLineNo">765</span>          LOG.info("Return transition report that OPENED/ALREADY_OPENED response");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.766"></a>
+<span class="sourceLineNo">767</span>          return OpenRegionResponse.RegionOpeningState.ALREADY_OPENED;<a name="line.767"></a>
+<span class="sourceLineNo">768</span>        case 2:<a name="line.768"></a>
+<span class="sourceLineNo">769</span>          LOG.info("Return transition report that FAILED_OPEN/FAILED_OPENING response");<a name="line.769"></a>
+<span class="sourceLineNo">770</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.FAILED_OPEN);<a name="line.770"></a>
+<span class="sourceLineNo">771</span>          return OpenRegionResponse.RegionOpeningState.FAILED_OPENING;<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      }<a name="line.772"></a>
+<span class="sourceLineNo">773</span>      // The procedure on master will just hang forever because nothing comes back<a name="line.773"></a>
+<span class="sourceLineNo">774</span>      // from the RS in this case.<a name="line.774"></a>
+<span class="sourceLineNo">775</span>      LOG.info("Return null as response; means proc stuck so we send in a crash report after a few seconds...");<a name="line.775"></a>
+<span class="sourceLineNo">776</span>      executor.schedule(new Runnable() {<a name="line.776"></a>
+<span class="sourceLineNo">777</span>        @Override<a name="line.777"></a>
+<span class="sourceLineNo">778</span>        public void run() {<a name="line.778"></a>
+<span class="sourceLineNo">779</span>          LOG.info("Delayed CRASHING of " + server);<a name="line.779"></a>
+<span class="sourceLineNo">780</span>          doCrash(server);<a name="line.780"></a>
+<span class="sourceLineNo">781</span>        }<a name="line.781"></a>
+<span class="sourceLineNo">782</span>      }, 5, TimeUnit.SECONDS);<a name="line.782"></a>
+<span class="sourceLineNo">783</span>      return null;<a name="line.783"></a>
+<span class="sourceLineNo">784</span>    }<a name="line.784"></a>
+<span class="sourceLineNo">785</span><a name="line.785"></a>
+<span class="sourceLineNo">786</span>    @Override<a name="line.786"></a>
+<span class="sourceLineNo">787</span>    protected CloseRegionResponse execCloseRegion(ServerName server, byte[] regionName)<a name="line.787"></a>
+<span class="sourceLineNo">788</span>        throws IOException {<a name="line.788"></a>
+<span class="sourceLineNo">789</span>      CloseRegionResponse.Builder resp = CloseRegionResponse.newBuilder();<a name="line.789"></a>
+<span class="sourceLineNo">790</span>      boolean closed = rand.nextBoolean();<a name="line.790"></a>
+<span class="sourceLineNo">791</span>      if (closed) {<a name="line.791"></a>
+<span class="sourceLineNo">792</span>        RegionInfo hri = am.getRegionInfo(regionName);<a name="line.792"></a>
+<span class="sourceLineNo">793</span>        sendTransitionReport(server, ProtobufUtil.toRegionInfo(hri), TransitionCode.CLOSED);<a name="line.793"></a>
+<span class="sourceLineNo">794</span>      }<a name="line.794"></a>
+<span class="sourceLineNo">795</span>      resp.setClosed(closed);<a name="line.795"></a>
+<span class="sourceLineNo">796</span>      return resp.build();<a name="line.796"></a>
+<span class="sourceLineNo">797</span>    }<a name="line.797"></a>
+<span class="sourceLineNo">798</span>  }<a name="line.798"></a>
+<span class="sourceLineNo">799</span><a name="line.799"></a>
+<span class="sourceLineNo">800</span>  private interface MockRSExecutor {<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.801"></a>
+<span class="sourceLineNo">802</span>        throws IOException;<a name="line.802"></a>
+<span class="sourceLineNo">803</span>  }<a name="line.803"></a>
+<span class="sourceLineNo">804</span><a name="line.804"></a>
+<span class="sourceLineNo">805</span>  private class MockRSProcedureDispatcher extends RSProcedureDispatcher {<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    private MockRSExecutor mockRsExec;<a name="line.806"></a>
 <span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>  private interface MockRSExecutor {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>    ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        throws IOException;<a name="line.810"></a>
-<span class="sourceLineNo">811</span>  }<a name="line.811"></a>
-<span class="sourceLineNo">812</span><a name="line.812"></a>
-<span class="sourceLineNo">813</span>  private class MockRSProcedureDispatcher extends RSProcedureDispatcher {<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    private MockRSExecutor mockRsExec;<a name="line.814"></a>
+<span class="sourceLineNo">808</span>    public MockRSProcedureDispatcher(final MasterServices master) {<a name="line.808"></a>
+<span class="sourceLineNo">809</span>      super(master);<a name="line.809"></a>
+<span class="sourceLineNo">810</span>    }<a name="line.810"></a>
+<span class="sourceLineNo">811</span><a name="line.811"></a>
+<span class="sourceLineNo">812</span>    public void setMockRsExecutor(final MockRSExecutor mockRsExec) {<a name="line.812"></a>
+<span class="sourceLineNo">813</span>      this.mockRsExec = mockRsExec;<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    }<a name="line.814"></a>
 <span class="sourceLineNo">815</span><a name="line.815"></a>
-<span class="sourceLineNo">816</span>    public MockRSProcedureDispatcher(final MasterServices master) {<a name="line.816"></a>
-<span class="sourceLineNo">817</span>      super(master);<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    }<a name="line.818"></a>
-<span class="sourceLineNo">819</span><a name="line.819"></a>
-<span class="sourceLineNo">820</span>    public void setMockRsExecutor(final MockRSExecutor mockRsExec) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      this.mockRsExec = mockRsExec;<a name="line.821"></a>
-<span class="sourceLineNo">822</span>    }<a name="line.822"></a>
-<span class="sourceLineNo">823</span><a name="line.823"></a>
-<span class="sourceLineNo">824</span>    @Override<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    protected void remoteDispatch(ServerName serverName, Set&lt;RemoteProcedure&gt; remoteProcedures) {<a name="line.825"></a>
-<span class="sourceLineNo">826</span>      submitTask(new MockRemoteCall(serverName, remoteProcedures));<a name="line.826"></a>
-<span class="sourceLineNo">827</span>    }<a name="line.827"></a>
-<span class="sourceLineNo">828</span><a name="line.828"></a>
-<span class="sourceLineNo">829</span>    private class MockRemoteCall extends ExecuteProceduresRemoteCall {<a name="line.829"></a>
-<span class="sourceLineNo">830</span>      public MockRemoteCall(final ServerName serverName,<a name="line.830"></a>
-<span class="sourceLineNo">831</span>          final Set&lt;RemoteProcedure&gt; operations) {<a name="line.831"></a>
-<span class="sourceLineNo">832</span>        super(serverName, operations);<a name="line.832"></a>
-<span class="sourceLineNo">833</span>      }<a name="line.833"></a>
+<span class="sourceLineNo">816</span>    @Override<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    protected void remoteDispatch(ServerName serverName, Set&lt;RemoteProcedure&gt; remoteProcedures) {<a name="line.817"></a>
+<span class="sourceLineNo">818</span>      submitTask(new MockRemoteCall(serverName, remoteProcedures));<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    }<a name="line.819"></a>
+<span class="sourceLineNo">820</span><a name="line.820"></a>
+<span class="sourceLineNo">821</span>    private class MockRemoteCall extends ExecuteProceduresRemoteCall {<a name="line.821"></a>
+<span class="sourceLineNo">822</span>      public MockRemoteCall(final ServerName serverName,<a name="line.822"></a>
+<span class="sourceLineNo">823</span>          final Set&lt;RemoteProcedure&gt; operations) {<a name="line.823"></a>
+<span class="sourceLineNo">824</span>        super(serverName, operations);<a name="line.824"></a>
+<span class="sourceLineNo">825</span>      }<a name="line.825"></a>
+<span class="sourceLineNo">826</span><a name="line.826"></a>
+<span class="sourceLineNo">827</span>      @Override<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      protected ExecuteProceduresResponse sendRequest(final ServerName serverName,<a name="line.828"></a>
+<span class="sourceLineNo">829</span>          final ExecuteProceduresRequest request) throws IOException {<a name="line.829"></a>
+<span class="sourceLineNo">830</span>        return mockRsExec.sendRequest(serverName, request);<a name="line.830"></a>
+<span class="sourceLineNo">831</span>      }<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    }<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
 <span class="sourceLineNo">834</span><a name="line.834"></a>
-<span class="sourceLineNo">835</span>      @Override<a name="line.835"></a>
-<span class="sourceLineNo">836</span>      protected ExecuteProceduresResponse sendRequest(final ServerName serverName,<a name="line.836"></a>
-<span class="sourceLineNo">837</span>          final ExecuteProceduresRequest request) throws IOException {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>        return mockRsExec.sendRequest(serverName, request);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      }<a name="line.839"></a>
-<span class="sourceLineNo">840</span>    }<a name="line.840"></a>
-<span class="sourceLineNo">841</span>  }<a name="line.841"></a>
-<span class="sourceLineNo">842</span><a name="line.842"></a>
-<span class="sourceLineNo">843</span>  private void collectAssignmentManagerMetrics() {<a name="line.843"></a>
-<span class="sourceLineNo">844</span>    assignSubmittedCount = assignProcMetrics.getSubmittedCounter().getCount();<a name="line.844"></a>
-<span class="sourceLineNo">845</span>    assignFailedCount = assignProcMetrics.getFailedCounter().getCount();<a name="line.845"></a>
-<span class="sourceLineNo">846</span>    unassignSubmittedCount = unassignProcMetrics.getSubmittedCounter().getCount();<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    unassignFailedCount = unassignProcMetrics.getFailedCounter().getCount();<a name="line.847"></a>
-<span class="sourceLineNo">848</span>  }<a name="line.848"></a>
-<span class="sourceLineNo">849</span>}<a name="line.849"></a>
+<span class="sourceLineNo">835</span>  private void collectAssignmentManagerMetrics() {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    assignSubmittedCount = assignProcMetrics.getSubmittedCounter().getCount();<a name="line.836"></a>
+<span class="sourceLineNo">837</span>    assignFailedCount = assignProcMetrics.getFailedCounter().getCount();<a name="line.837"></a>
+<span class="sourceLineNo">838</span>    unassignSubmittedCount = unassignProcMetrics.getSubmittedCounter().getCount();<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    unassignFailedCount = unassignProcMetrics.getFailedCounter().getCount();<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span>}<a name="line.841"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e9a81b89/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangThenRSCrashExecutor.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangThenRSCrashExecutor.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangThenRSCrashExecutor.html
index 507c0cd..d27f392 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangThenRSCrashExecutor.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/assignment/TestAssignmentManager.HangThenRSCrashExecutor.html
@@ -720,7 +720,7 @@
 <span class="sourceLineNo">712</span>  }<a name="line.712"></a>
 <span class="sourceLineNo">713</span><a name="line.713"></a>
 <span class="sourceLineNo">714</span>  private class HangOnCloseThenRSCrashExecutor extends GoodRsExecutor {<a name="line.714"></a>
-<span class="sourceLineNo">715</span>    public static final int TYPES_OF_FAILURE = 7;<a name="line.715"></a>
+<span class="sourceLineNo">715</span>    public static final int TYPES_OF_FAILURE = 6;<a name="line.715"></a>
 <span class="sourceLineNo">716</span>    private int invocations;<a name="line.716"></a>
 <span class="sourceLineNo">717</span><a name="line.717"></a>
 <span class="sourceLineNo">718</span>    @Override<a name="line.718"></a>
@@ -732,129 +732,121 @@
 <span class="sourceLineNo">724</span>      case 2: throw new RegionServerStoppedException("Fake!");<a name="line.724"></a>
 <span class="sourceLineNo">725</span>      case 3: throw new ServerNotRunningYetException("Fake!");<a name="line.725"></a>
 <span class="sourceLineNo">726</span>      case 4:<a name="line.726"></a>
-<span class="sourceLineNo">727</span>        // We will expire the server that we failed to rpc against.<a name="line.727"></a>
-<span class="sourceLineNo">728</span>        throw new FailedRemoteDispatchException("Fake!");<a name="line.728"></a>
-<span class="sourceLineNo">729</span>      case 5:<a name="line.729"></a>
-<span class="sourceLineNo">730</span>        // Mark this regionserver as already expiring so we go different code route; i.e. we<a name="line.730"></a>
-<span class="sourceLineNo">731</span>        // FAIL to expire the remote server and presume ok to move region to CLOSED. HBASE-20137.<a name="line.731"></a>
-<span class="sourceLineNo">732</span>        TestAssignmentManager.this.master.getServerManager().expireServer(server);<a name="line.732"></a>
-<span class="sourceLineNo">733</span>        throw new FailedRemoteDispatchException("Fake!");<a name="line.733"></a>
-<span class="sourceLineNo">734</span>      case 6:<a name="line.734"></a>
-<span class="sourceLineNo">735</span>        LOG.info("Return null response from serverName=" + server + "; means STUCK...TODO timeout");<a name="line.735"></a>
-<span class="sourceLineNo">736</span>        executor.schedule(new Runnable() {<a name="line.736"></a>
-<span class="sourceLineNo">737</span>          @Override<a name="line.737"></a>
-<span class="sourceLineNo">738</span>          public void run() {<a name="line.738"></a>
-<span class="sourceLineNo">739</span>            LOG.info("Sending in CRASH of " + server);<a name="line.739"></a>
-<span class="sourceLineNo">740</span>            doCrash(server);<a name="line.740"></a>
-<span class="sourceLineNo">741</span>          }<a name="line.741"></a>
-<span class="sourceLineNo">742</span>        }, 1, TimeUnit.SECONDS);<a name="line.742"></a>
-<span class="sourceLineNo">743</span>        return null;<a name="line.743"></a>
-<span class="sourceLineNo">744</span>      default:<a name="line.744"></a>
-<span class="sourceLineNo">745</span>        return super.execCloseRegion(server, regionName);<a name="line.745"></a>
-<span class="sourceLineNo">746</span>      }<a name="line.746"></a>
-<span class="sourceLineNo">747</span>    }<a name="line.747"></a>
-<span class="sourceLineNo">748</span>  }<a name="line.748"></a>
-<span class="sourceLineNo">749</span><a name="line.749"></a>
-<span class="sourceLineNo">750</span>  private class RandRsExecutor extends NoopRsExecutor {<a name="line.750"></a>
-<span class="sourceLineNo">751</span>    private final Random rand = new Random();<a name="line.751"></a>
-<span class="sourceLineNo">752</span><a name="line.752"></a>
-<span class="sourceLineNo">753</span>    @Override<a name="line.753"></a>
-<span class="sourceLineNo">754</span>    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.754"></a>
-<span class="sourceLineNo">755</span>        throws IOException {<a name="line.755"></a>
-<span class="sourceLineNo">756</span>      switch (rand.nextInt(5)) {<a name="line.756"></a>
-<span class="sourceLineNo">757</span>        case 0: throw new ServerNotRunningYetException("wait on server startup");<a name="line.757"></a>
-<span class="sourceLineNo">758</span>        case 1: throw new SocketTimeoutException("simulate socket timeout");<a name="line.758"></a>
-<span class="sourceLineNo">759</span>        case 2: throw new RemoteException("java.io.IOException", "unexpected exception");<a name="line.759"></a>
-<span class="sourceLineNo">760</span>      }<a name="line.760"></a>
-<span class="sourceLineNo">761</span>      return super.sendRequest(server, req);<a name="line.761"></a>
-<span class="sourceLineNo">762</span>    }<a name="line.762"></a>
-<span class="sourceLineNo">763</span><a name="line.763"></a>
-<span class="sourceLineNo">764</span>    @Override<a name="line.764"></a>
-<span class="sourceLineNo">765</span>    protected RegionOpeningState execOpenRegion(final ServerName server, RegionOpenInfo openReq)<a name="line.765"></a>
-<span class="sourceLineNo">766</span>        throws IOException {<a name="line.766"></a>
-<span class="sourceLineNo">767</span>      switch (rand.nextInt(6)) {<a name="line.767"></a>
-<span class="sourceLineNo">768</span>        case 0:<a name="line.768"></a>
-<span class="sourceLineNo">769</span>          LOG.info("Return OPENED response");<a name="line.769"></a>
-<span class="sourceLineNo">770</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.770"></a>
-<span class="sourceLineNo">771</span>          return OpenRegionResponse.RegionOpeningState.OPENED;<a name="line.771"></a>
-<span class="sourceLineNo">772</span>        case 1:<a name="line.772"></a>
-<span class="sourceLineNo">773</span>          LOG.info("Return transition report that OPENED/ALREADY_OPENED response");<a name="line.773"></a>
-<span class="sourceLineNo">774</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.774"></a>
-<span class="sourceLineNo">775</span>          return OpenRegionResponse.RegionOpeningState.ALREADY_OPENED;<a name="line.775"></a>
-<span class="sourceLineNo">776</span>        case 2:<a name="line.776"></a>
-<span class="sourceLineNo">777</span>          LOG.info("Return transition report that FAILED_OPEN/FAILED_OPENING response");<a name="line.777"></a>
-<span class="sourceLineNo">778</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.FAILED_OPEN);<a name="line.778"></a>
-<span class="sourceLineNo">779</span>          return OpenRegionResponse.RegionOpeningState.FAILED_OPENING;<a name="line.779"></a>
-<span class="sourceLineNo">780</span>      }<a name="line.780"></a>
-<span class="sourceLineNo">781</span>      // The procedure on master will just hang forever because nothing comes back<a name="line.781"></a>
-<span class="sourceLineNo">782</span>      // from the RS in this case.<a name="line.782"></a>
-<span class="sourceLineNo">783</span>      LOG.info("Return null as response; means proc stuck so we send in a crash report after a few seconds...");<a name="line.783"></a>
-<span class="sourceLineNo">784</span>      executor.schedule(new Runnable() {<a name="line.784"></a>
-<span class="sourceLineNo">785</span>        @Override<a name="line.785"></a>
-<span class="sourceLineNo">786</span>        public void run() {<a name="line.786"></a>
-<span class="sourceLineNo">787</span>          LOG.info("Delayed CRASHING of " + server);<a name="line.787"></a>
-<span class="sourceLineNo">788</span>          doCrash(server);<a name="line.788"></a>
-<span class="sourceLineNo">789</span>        }<a name="line.789"></a>
-<span class="sourceLineNo">790</span>      }, 5, TimeUnit.SECONDS);<a name="line.790"></a>
-<span class="sourceLineNo">791</span>      return null;<a name="line.791"></a>
-<span class="sourceLineNo">792</span>    }<a name="line.792"></a>
-<span class="sourceLineNo">793</span><a name="line.793"></a>
-<span class="sourceLineNo">794</span>    @Override<a name="line.794"></a>
-<span class="sourceLineNo">795</span>    protected CloseRegionResponse execCloseRegion(ServerName server, byte[] regionName)<a name="line.795"></a>
-<span class="sourceLineNo">796</span>        throws IOException {<a name="line.796"></a>
-<span class="sourceLineNo">797</span>      CloseRegionResponse.Builder resp = CloseRegionResponse.newBuilder();<a name="line.797"></a>
-<span class="sourceLineNo">798</span>      boolean closed = rand.nextBoolean();<a name="line.798"></a>
-<span class="sourceLineNo">799</span>      if (closed) {<a name="line.799"></a>
-<span class="sourceLineNo">800</span>        RegionInfo hri = am.getRegionInfo(regionName);<a name="line.800"></a>
-<span class="sourceLineNo">801</span>        sendTransitionReport(server, ProtobufUtil.toRegionInfo(hri), TransitionCode.CLOSED);<a name="line.801"></a>
-<span class="sourceLineNo">802</span>      }<a name="line.802"></a>
-<span class="sourceLineNo">803</span>      resp.setClosed(closed);<a name="line.803"></a>
-<span class="sourceLineNo">804</span>      return resp.build();<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    }<a name="line.805"></a>
-<span class="sourceLineNo">806</span>  }<a name="line.806"></a>
+<span class="sourceLineNo">727</span>        LOG.info("Return null response from serverName=" + server + "; means STUCK...TODO timeout");<a name="line.727"></a>
+<span class="sourceLineNo">728</span>        executor.schedule(new Runnable() {<a name="line.728"></a>
+<span class="sourceLineNo">729</span>          @Override<a name="line.729"></a>
+<span class="sourceLineNo">730</span>          public void run() {<a name="line.730"></a>
+<span class="sourceLineNo">731</span>            LOG.info("Sending in CRASH of " + server);<a name="line.731"></a>
+<span class="sourceLineNo">732</span>            doCrash(server);<a name="line.732"></a>
+<span class="sourceLineNo">733</span>          }<a name="line.733"></a>
+<span class="sourceLineNo">734</span>        }, 1, TimeUnit.SECONDS);<a name="line.734"></a>
+<span class="sourceLineNo">735</span>        return null;<a name="line.735"></a>
+<span class="sourceLineNo">736</span>      default:<a name="line.736"></a>
+<span class="sourceLineNo">737</span>        return super.execCloseRegion(server, regionName);<a name="line.737"></a>
+<span class="sourceLineNo">738</span>      }<a name="line.738"></a>
+<span class="sourceLineNo">739</span>    }<a name="line.739"></a>
+<span class="sourceLineNo">740</span>  }<a name="line.740"></a>
+<span class="sourceLineNo">741</span><a name="line.741"></a>
+<span class="sourceLineNo">742</span>  private class RandRsExecutor extends NoopRsExecutor {<a name="line.742"></a>
+<span class="sourceLineNo">743</span>    private final Random rand = new Random();<a name="line.743"></a>
+<span class="sourceLineNo">744</span><a name="line.744"></a>
+<span class="sourceLineNo">745</span>    @Override<a name="line.745"></a>
+<span class="sourceLineNo">746</span>    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.746"></a>
+<span class="sourceLineNo">747</span>        throws IOException {<a name="line.747"></a>
+<span class="sourceLineNo">748</span>      switch (rand.nextInt(5)) {<a name="line.748"></a>
+<span class="sourceLineNo">749</span>        case 0: throw new ServerNotRunningYetException("wait on server startup");<a name="line.749"></a>
+<span class="sourceLineNo">750</span>        case 1: throw new SocketTimeoutException("simulate socket timeout");<a name="line.750"></a>
+<span class="sourceLineNo">751</span>        case 2: throw new RemoteException("java.io.IOException", "unexpected exception");<a name="line.751"></a>
+<span class="sourceLineNo">752</span>      }<a name="line.752"></a>
+<span class="sourceLineNo">753</span>      return super.sendRequest(server, req);<a name="line.753"></a>
+<span class="sourceLineNo">754</span>    }<a name="line.754"></a>
+<span class="sourceLineNo">755</span><a name="line.755"></a>
+<span class="sourceLineNo">756</span>    @Override<a name="line.756"></a>
+<span class="sourceLineNo">757</span>    protected RegionOpeningState execOpenRegion(final ServerName server, RegionOpenInfo openReq)<a name="line.757"></a>
+<span class="sourceLineNo">758</span>        throws IOException {<a name="line.758"></a>
+<span class="sourceLineNo">759</span>      switch (rand.nextInt(6)) {<a name="line.759"></a>
+<span class="sourceLineNo">760</span>        case 0:<a name="line.760"></a>
+<span class="sourceLineNo">761</span>          LOG.info("Return OPENED response");<a name="line.761"></a>
+<span class="sourceLineNo">762</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.762"></a>
+<span class="sourceLineNo">763</span>          return OpenRegionResponse.RegionOpeningState.OPENED;<a name="line.763"></a>
+<span class="sourceLineNo">764</span>        case 1:<a name="line.764"></a>
+<span class="sourceLineNo">765</span>          LOG.info("Return transition report that OPENED/ALREADY_OPENED response");<a name="line.765"></a>
+<span class="sourceLineNo">766</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.OPENED);<a name="line.766"></a>
+<span class="sourceLineNo">767</span>          return OpenRegionResponse.RegionOpeningState.ALREADY_OPENED;<a name="line.767"></a>
+<span class="sourceLineNo">768</span>        case 2:<a name="line.768"></a>
+<span class="sourceLineNo">769</span>          LOG.info("Return transition report that FAILED_OPEN/FAILED_OPENING response");<a name="line.769"></a>
+<span class="sourceLineNo">770</span>          sendTransitionReport(server, openReq.getRegion(), TransitionCode.FAILED_OPEN);<a name="line.770"></a>
+<span class="sourceLineNo">771</span>          return OpenRegionResponse.RegionOpeningState.FAILED_OPENING;<a name="line.771"></a>
+<span class="sourceLineNo">772</span>      }<a name="line.772"></a>
+<span class="sourceLineNo">773</span>      // The procedure on master will just hang forever because nothing comes back<a name="line.773"></a>
+<span class="sourceLineNo">774</span>      // from the RS in this case.<a name="line.774"></a>
+<span class="sourceLineNo">775</span>      LOG.info("Return null as response; means proc stuck so we send in a crash report after a few seconds...");<a name="line.775"></a>
+<span class="sourceLineNo">776</span>      executor.schedule(new Runnable() {<a name="line.776"></a>
+<span class="sourceLineNo">777</span>        @Override<a name="line.777"></a>
+<span class="sourceLineNo">778</span>        public void run() {<a name="line.778"></a>
+<span class="sourceLineNo">779</span>          LOG.info("Delayed CRASHING of " + server);<a name="line.779"></a>
+<span class="sourceLineNo">780</span>          doCrash(server);<a name="line.780"></a>
+<span class="sourceLineNo">781</span>        }<a name="line.781"></a>
+<span class="sourceLineNo">782</span>      }, 5, TimeUnit.SECONDS);<a name="line.782"></a>
+<span class="sourceLineNo">783</span>      return null;<a name="line.783"></a>
+<span class="sourceLineNo">784</span>    }<a name="line.784"></a>
+<span class="sourceLineNo">785</span><a name="line.785"></a>
+<span class="sourceLineNo">786</span>    @Override<a name="line.786"></a>
+<span class="sourceLineNo">787</span>    protected CloseRegionResponse execCloseRegion(ServerName server, byte[] regionName)<a name="line.787"></a>
+<span class="sourceLineNo">788</span>        throws IOException {<a name="line.788"></a>
+<span class="sourceLineNo">789</span>      CloseRegionResponse.Builder resp = CloseRegionResponse.newBuilder();<a name="line.789"></a>
+<span class="sourceLineNo">790</span>      boolean closed = rand.nextBoolean();<a name="line.790"></a>
+<span class="sourceLineNo">791</span>      if (closed) {<a name="line.791"></a>
+<span class="sourceLineNo">792</span>        RegionInfo hri = am.getRegionInfo(regionName);<a name="line.792"></a>
+<span class="sourceLineNo">793</span>        sendTransitionReport(server, ProtobufUtil.toRegionInfo(hri), TransitionCode.CLOSED);<a name="line.793"></a>
+<span class="sourceLineNo">794</span>      }<a name="line.794"></a>
+<span class="sourceLineNo">795</span>      resp.setClosed(closed);<a name="line.795"></a>
+<span class="sourceLineNo">796</span>      return resp.build();<a name="line.796"></a>
+<span class="sourceLineNo">797</span>    }<a name="line.797"></a>
+<span class="sourceLineNo">798</span>  }<a name="line.798"></a>
+<span class="sourceLineNo">799</span><a name="line.799"></a>
+<span class="sourceLineNo">800</span>  private interface MockRSExecutor {<a name="line.800"></a>
+<span class="sourceLineNo">801</span>    ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.801"></a>
+<span class="sourceLineNo">802</span>        throws IOException;<a name="line.802"></a>
+<span class="sourceLineNo">803</span>  }<a name="line.803"></a>
+<span class="sourceLineNo">804</span><a name="line.804"></a>
+<span class="sourceLineNo">805</span>  private class MockRSProcedureDispatcher extends RSProcedureDispatcher {<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    private MockRSExecutor mockRsExec;<a name="line.806"></a>
 <span class="sourceLineNo">807</span><a name="line.807"></a>
-<span class="sourceLineNo">808</span>  private interface MockRSExecutor {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>    ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        throws IOException;<a name="line.810"></a>
-<span class="sourceLineNo">811</span>  }<a name="line.811"></a>
-<span class="sourceLineNo">812</span><a name="line.812"></a>
-<span class="sourceLineNo">813</span>  private class MockRSProcedureDispatcher extends RSProcedureDispatcher {<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    private MockRSExecutor mockRsExec;<a name="line.814"></a>
+<span class="sourceLineNo">808</span>    public MockRSProcedureDispatcher(final MasterServices master) {<a name="line.808"></a>
+<span class="sourceLineNo">809</span>      super(master);<a name="line.809"></a>
+<span class="sourceLineNo">810</span>    }<a name="line.810"></a>
+<span class="sourceLineNo">811</span><a name="line.811"></a>
+<span class="sourceLineNo">812</span>    public void setMockRsExecutor(final MockRSExecutor mockRsExec) {<a name="line.812"></a>
+<span class="sourceLineNo">813</span>      this.mockRsExec = mockRsExec;<a name="line.813"></a>
+<span class="sourceLineNo">814</span>    }<a name="line.814"></a>
 <span class="sourceLineNo">815</span><a name="line.815"></a>
-<span class="sourceLineNo">816</span>    public MockRSProcedureDispatcher(final MasterServices master) {<a name="line.816"></a>
-<span class="sourceLineNo">817</span>      super(master);<a name="line.817"></a>
-<span class="sourceLineNo">818</span>    }<a name="line.818"></a>
-<span class="sourceLineNo">819</span><a name="line.819"></a>
-<span class="sourceLineNo">820</span>    public void setMockRsExecutor(final MockRSExecutor mockRsExec) {<a name="line.820"></a>
-<span class="sourceLineNo">821</span>      this.mockRsExec = mockRsExec;<a name="line.821"></a>
-<span class="sourceLineNo">822</span>    }<a name="line.822"></a>
-<span class="sourceLineNo">823</span><a name="line.823"></a>
-<span class="sourceLineNo">824</span>    @Override<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    protected void remoteDispatch(ServerName serverName, Set&lt;RemoteProcedure&gt; remoteProcedures) {<a name="line.825"></a>
-<span class="sourceLineNo">826</span>      submitTask(new MockRemoteCall(serverName, remoteProcedures));<a name="line.826"></a>
-<span class="sourceLineNo">827</span>    }<a name="line.827"></a>
-<span class="sourceLineNo">828</span><a name="line.828"></a>
-<span class="sourceLineNo">829</span>    private class MockRemoteCall extends ExecuteProceduresRemoteCall {<a name="line.829"></a>
-<span class="sourceLineNo">830</span>      public MockRemoteCall(final ServerName serverName,<a name="line.830"></a>
-<span class="sourceLineNo">831</span>          final Set&lt;RemoteProcedure&gt; operations) {<a name="line.831"></a>
-<span class="sourceLineNo">832</span>        super(serverName, operations);<a name="line.832"></a>
-<span class="sourceLineNo">833</span>      }<a name="line.833"></a>
+<span class="sourceLineNo">816</span>    @Override<a name="line.816"></a>
+<span class="sourceLineNo">817</span>    protected void remoteDispatch(ServerName serverName, Set&lt;RemoteProcedure&gt; remoteProcedures) {<a name="line.817"></a>
+<span class="sourceLineNo">818</span>      submitTask(new MockRemoteCall(serverName, remoteProcedures));<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    }<a name="line.819"></a>
+<span class="sourceLineNo">820</span><a name="line.820"></a>
+<span class="sourceLineNo">821</span>    private class MockRemoteCall extends ExecuteProceduresRemoteCall {<a name="line.821"></a>
+<span class="sourceLineNo">822</span>      public MockRemoteCall(final ServerName serverName,<a name="line.822"></a>
+<span class="sourceLineNo">823</span>          final Set&lt;RemoteProcedure&gt; operations) {<a name="line.823"></a>
+<span class="sourceLineNo">824</span>        super(serverName, operations);<a name="line.824"></a>
+<span class="sourceLineNo">825</span>      }<a name="line.825"></a>
+<span class="sourceLineNo">826</span><a name="line.826"></a>
+<span class="sourceLineNo">827</span>      @Override<a name="line.827"></a>
+<span class="sourceLineNo">828</span>      protected ExecuteProceduresResponse sendRequest(final ServerName serverName,<a name="line.828"></a>
+<span class="sourceLineNo">829</span>          final ExecuteProceduresRequest request) throws IOException {<a name="line.829"></a>
+<span class="sourceLineNo">830</span>        return mockRsExec.sendRequest(serverName, request);<a name="line.830"></a>
+<span class="sourceLineNo">831</span>      }<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    }<a name="line.832"></a>
+<span class="sourceLineNo">833</span>  }<a name="line.833"></a>
 <span class="sourceLineNo">834</span><a name="line.834"></a>
-<span class="sourceLineNo">835</span>      @Override<a name="line.835"></a>
-<span class="sourceLineNo">836</span>      protected ExecuteProceduresResponse sendRequest(final ServerName serverName,<a name="line.836"></a>
-<span class="sourceLineNo">837</span>          final ExecuteProceduresRequest request) throws IOException {<a name="line.837"></a>
-<span class="sourceLineNo">838</span>        return mockRsExec.sendRequest(serverName, request);<a name="line.838"></a>
-<span class="sourceLineNo">839</span>      }<a name="line.839"></a>
-<span class="sourceLineNo">840</span>    }<a name="line.840"></a>
-<span class="sourceLineNo">841</span>  }<a name="line.841"></a>
-<span class="sourceLineNo">842</span><a name="line.842"></a>
-<span class="sourceLineNo">843</span>  private void collectAssignmentManagerMetrics() {<a name="line.843"></a>
-<span class="sourceLineNo">844</span>    assignSubmittedCount = assignProcMetrics.getSubmittedCounter().getCount();<a name="line.844"></a>
-<span class="sourceLineNo">845</span>    assignFailedCount = assignProcMetrics.getFailedCounter().getCount();<a name="line.845"></a>
-<span class="sourceLineNo">846</span>    unassignSubmittedCount = unassignProcMetrics.getSubmittedCounter().getCount();<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    unassignFailedCount = unassignProcMetrics.getFailedCounter().getCount();<a name="line.847"></a>
-<span class="sourceLineNo">848</span>  }<a name="line.848"></a>
-<span class="sourceLineNo">849</span>}<a name="line.849"></a>
+<span class="sourceLineNo">835</span>  private void collectAssignmentManagerMetrics() {<a name="line.835"></a>
+<span class="sourceLineNo">836</span>    assignSubmittedCount = assignProcMetrics.getSubmittedCounter().getCount();<a name="line.836"></a>
+<span class="sourceLineNo">837</span>    assignFailedCount = assignProcMetrics.getFailedCounter().getCount();<a name="line.837"></a>
+<span class="sourceLineNo">838</span>    unassignSubmittedCount = unassignProcMetrics.getSubmittedCounter().getCount();<a name="line.838"></a>
+<span class="sourceLineNo">839</span>    unassignFailedCount = unassignProcMetrics.getFailedCounter().getCount();<a name="line.839"></a>
+<span class="sourceLineNo">840</span>  }<a name="line.840"></a>
+<span class="sourceLineNo">841</span>}<a name="line.841"></a>