@Override
    public ExecuteProceduresResponse sendRequest(ServerName server, ExecuteProceduresRequest req)
      throws IOException {
      switch (ThreadLocalRandom.current().nextInt(5)) {
        case 0:
          throw new ServerNotRunningYetException("wait on server startup");
        case 1:
          throw new SocketTimeoutException("simulate socket timeout");
        case 2:
          throw new RemoteException("java.io.IOException", "unexpected exception");
        default:
          // fall out
      }
      return super.sendRequest(server, req);
    }
Takes open request and then returns nothing so acts like a RS that went zombie. No response (so
proc is stuck/suspended on the Master and won't wake up.). Different with
HangThenRSCrashExecutor, HangThenRSCrashExecutor will create ServerCrashProcedure to handle the
server crash. However, this HangThenRSRestartExecutor will restart RS directly, situation for
RS crashed when SCP is not enabled.
hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerBase.java