Java 类org.apache.hadoop.hbase.protobuf.generated.AdminProtos.ServerInfo 实例源码

项目:ditb    文件:DistributedHBaseCluster.java   
@Override
public ServerName getServerHoldingRegion(TableName tn, byte[] regionName) throws IOException {
  HRegionLocation regionLoc = null;
  try (RegionLocator locator = connection.getRegionLocator(tn)) {
    regionLoc = locator.getRegionLocation(regionName);
  }
  if (regionLoc == null) {
    LOG.warn("Cannot find region server holding region " + Bytes.toString(regionName) +
      ", start key [" + Bytes.toString(HRegionInfo.getStartKey(regionName)) + "]");
    return null;
  }

  AdminProtos.AdminService.BlockingInterface client =
      ((ClusterConnection)this.connection).getAdmin(regionLoc.getServerName());
  ServerInfo info = ProtobufUtil.getServerInfo(null, client);
  return ProtobufUtil.toServerName(info.getServerName());
}
项目:pbase    文件:ServerManager.java   
/**
 * Check if a region server is reachable and has the expected start code
 */
public boolean isServerReachable(ServerName server) {
  if (server == null) throw new NullPointerException("Passed server is null");

  RetryCounter retryCounter = pingRetryCounterFactory.create();
  while (retryCounter.shouldRetry()) {
    try {
      AdminService.BlockingInterface admin = getRsAdmin(server);
      if (admin != null) {
        ServerInfo info = ProtobufUtil.getServerInfo(admin);
        return info != null && info.hasServerName()
          && server.getStartcode() == info.getServerName().getStartCode();
      }
    } catch (IOException ioe) {
      LOG.debug("Couldn't reach " + server + ", try=" + retryCounter.getAttemptTimes()
        + " of " + retryCounter.getMaxAttempts(), ioe);
      try {
        retryCounter.sleepUntilNextRetry();
      } catch(InterruptedException ie) {
        Thread.currentThread().interrupt();
      }
    }
  }
  return false;
}
项目:HIndex    文件:ServerManager.java   
/**
 * Check if a region server is reachable and has the expected start code
 */
public boolean isServerReachable(ServerName server) {
  if (server == null) throw new NullPointerException("Passed server is null");
  int maximumAttempts = Math.max(1, master.getConfiguration().getInt(
    "hbase.master.maximum.ping.server.attempts", 10));
  for (int i = 0; i < maximumAttempts; i++) {
    try {
      AdminService.BlockingInterface admin = getRsAdmin(server);
      if (admin != null) {
        ServerInfo info = ProtobufUtil.getServerInfo(admin);
        return info != null && info.hasServerName()
          && server.getStartcode() == info.getServerName().getStartCode();
      }
    } catch (IOException ioe) {
      LOG.debug("Couldn't reach " + server + ", try=" + i
        + " of " + maximumAttempts, ioe);
    }
  }
  return false;
}
项目:HIndex    文件:DistributedHBaseCluster.java   
@Override
public ServerName getServerHoldingRegion(byte[] regionName) throws IOException {
  HConnection connection = admin.getConnection();
  HRegionLocation regionLoc = connection.locateRegion(regionName);
  if (regionLoc == null) {
    LOG.warn("Cannot find region server holding region " + Bytes.toString(regionName)
        + " for table " + HRegionInfo.getTableName(regionName) + ", start key [" +
        Bytes.toString(HRegionInfo.getStartKey(regionName)) + "]");
    return null;
  }

  AdminProtos.AdminService.BlockingInterface client =
    connection.getAdmin(regionLoc.getServerName());
  ServerInfo info = ProtobufUtil.getServerInfo(client);
  return ProtobufUtil.toServerName(info.getServerName());
}
项目:PyroDB    文件:ServerManager.java   
/**
 * Check if a region server is reachable and has the expected start code
 */
public boolean isServerReachable(ServerName server) {
  if (server == null) throw new NullPointerException("Passed server is null");
  int maximumAttempts = Math.max(1, master.getConfiguration().getInt(
    "hbase.master.maximum.ping.server.attempts", 10));
  for (int i = 0; i < maximumAttempts; i++) {
    try {
      AdminService.BlockingInterface admin = getRsAdmin(server);
      if (admin != null) {
        ServerInfo info = ProtobufUtil.getServerInfo(admin);
        return info != null && info.hasServerName()
          && server.getStartcode() == info.getServerName().getStartCode();
      }
    } catch (IOException ioe) {
      LOG.debug("Couldn't reach " + server + ", try=" + i
        + " of " + maximumAttempts, ioe);
    }
  }
  return false;
}
项目:PyroDB    文件:DistributedHBaseCluster.java   
@Override
public ServerName getServerHoldingRegion(byte[] regionName) throws IOException {
  HConnection connection = admin.getConnection();
  HRegionLocation regionLoc = connection.locateRegion(regionName);
  if (regionLoc == null) {
    LOG.warn("Cannot find region server holding region " + Bytes.toString(regionName)
        + " for table " + HRegionInfo.getTableName(regionName) + ", start key [" +
        Bytes.toString(HRegionInfo.getStartKey(regionName)) + "]");
    return null;
  }

  AdminProtos.AdminService.BlockingInterface client =
    connection.getAdmin(regionLoc.getServerName());
  ServerInfo info = ProtobufUtil.getServerInfo(client);
  return ProtobufUtil.toServerName(info.getServerName());
}
项目:c5    文件:ServerManager.java   
/**
 * Check if a region server is reachable and has the expected start code
 */
public boolean isServerReachable(ServerName server) {
  if (server == null) throw new NullPointerException("Passed server is null");
  int maximumAttempts = Math.max(1, master.getConfiguration().getInt(
    "hbase.master.maximum.ping.server.attempts", 10));
  for (int i = 0; i < maximumAttempts; i++) {
    try {
      AdminService.BlockingInterface admin = getRsAdmin(server);
      if (admin != null) {
        ServerInfo info = ProtobufUtil.getServerInfo(admin);
        return info != null && info.hasServerName()
          && server.getStartcode() == info.getServerName().getStartCode();
      }
    } catch (IOException ioe) {
      LOG.debug("Couldn't reach " + server + ", try=" + i
        + " of " + maximumAttempts, ioe);
    }
  }
  return false;
}
项目:ditb    文件:ServerManager.java   
/**
 * Check if a region server is reachable and has the expected start code
 */
public boolean isServerReachable(ServerName server) {
  if (server == null) throw new NullPointerException("Passed server is null");


  RetryCounter retryCounter = pingRetryCounterFactory.create();
  while (retryCounter.shouldRetry()) {
    synchronized (this.onlineServers) {
      if (this.deadservers.isDeadServer(server)) {
        return false;
      }
    }
    try {
      PayloadCarryingRpcController controller = newRpcController();
      AdminService.BlockingInterface admin = getRsAdmin(server);
      if (admin != null) {
        ServerInfo info = ProtobufUtil.getServerInfo(controller, admin);
        return info != null && info.hasServerName()
          && server.getStartcode() == info.getServerName().getStartCode();
      }
    } catch (IOException ioe) {
      if (LOG.isDebugEnabled()) {
        LOG.debug("Couldn't reach " + server + ", try=" + retryCounter.getAttemptTimes() + " of "
            + retryCounter.getMaxAttempts(), ioe);
      }
      try {
        retryCounter.sleepUntilNextRetry();
      } catch(InterruptedException ie) {
        Thread.currentThread().interrupt();
        break;
      }
    }
  }
  return false;
}
项目:ditb    文件:ResponseConverter.java   
/**
 * A utility to build a GetServerInfoResponse.
 *
 * @param serverName
 * @param webuiPort
 * @return the response
 */
public static GetServerInfoResponse buildGetServerInfoResponse(
    final ServerName serverName, final int webuiPort) {
  GetServerInfoResponse.Builder builder = GetServerInfoResponse.newBuilder();
  ServerInfo.Builder serverInfoBuilder = ServerInfo.newBuilder();
  serverInfoBuilder.setServerName(ProtobufUtil.toServerName(serverName));
  if (webuiPort >= 0) {
    serverInfoBuilder.setWebuiPort(webuiPort);
  }
  builder.setServerInfo(serverInfoBuilder.build());
  return builder.build();
}
项目:ditb    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 * @return the server name
 */
public static ServerInfo getServerInfo(final RpcController controller,
    final AdminService.BlockingInterface admin)
throws IOException {
  GetServerInfoRequest request = RequestConverter.buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(controller, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:pbase    文件:ResponseConverter.java   
/**
 * A utility to build a GetServerInfoResponse.
 *
 * @param serverName
 * @param webuiPort
 * @return the response
 */
public static GetServerInfoResponse buildGetServerInfoResponse(
    final ServerName serverName, final int webuiPort) {
  GetServerInfoResponse.Builder builder = GetServerInfoResponse.newBuilder();
  ServerInfo.Builder serverInfoBuilder = ServerInfo.newBuilder();
  serverInfoBuilder.setServerName(ProtobufUtil.toServerName(serverName));
  if (webuiPort >= 0) {
    serverInfoBuilder.setWebuiPort(webuiPort);
  }
  builder.setServerInfo(serverInfoBuilder.build());
  return builder.build();
}
项目:pbase    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 *
 * @param admin
 * @return the server name
 * @throws IOException
 */
public static ServerInfo getServerInfo(final AdminService.BlockingInterface admin)
throws IOException {
  GetServerInfoRequest request = RequestConverter.buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(null, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:HIndex    文件:ResponseConverter.java   
/**
 * A utility to build a GetServerInfoResponse.
 *
 * @param serverName
 * @param webuiPort
 * @return the response
 */
public static GetServerInfoResponse buildGetServerInfoResponse(
    final ServerName serverName, final int webuiPort) {
  GetServerInfoResponse.Builder builder = GetServerInfoResponse.newBuilder();
  ServerInfo.Builder serverInfoBuilder = ServerInfo.newBuilder();
  serverInfoBuilder.setServerName(ProtobufUtil.toServerName(serverName));
  if (webuiPort >= 0) {
    serverInfoBuilder.setWebuiPort(webuiPort);
  }
  builder.setServerInfo(serverInfoBuilder.build());
  return builder.build();
}
项目:HIndex    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 *
 * @param admin
 * @return the server name
 * @throws IOException
 */
public static ServerInfo getServerInfo(final AdminService.BlockingInterface admin)
throws IOException {
  GetServerInfoRequest request = RequestConverter.buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(null, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:hbase    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 * @return the server name
 */
public static ServerInfo getServerInfo(final RpcController controller,
    final AdminService.BlockingInterface admin)
throws IOException {
  GetServerInfoRequest request = buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(controller, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:PyroDB    文件:ResponseConverter.java   
/**
 * A utility to build a GetServerInfoResponse.
 *
 * @param serverName
 * @param webuiPort
 * @return the response
 */
public static GetServerInfoResponse buildGetServerInfoResponse(
    final ServerName serverName, final int webuiPort) {
  GetServerInfoResponse.Builder builder = GetServerInfoResponse.newBuilder();
  ServerInfo.Builder serverInfoBuilder = ServerInfo.newBuilder();
  serverInfoBuilder.setServerName(ProtobufUtil.toServerName(serverName));
  if (webuiPort >= 0) {
    serverInfoBuilder.setWebuiPort(webuiPort);
  }
  builder.setServerInfo(serverInfoBuilder.build());
  return builder.build();
}
项目:PyroDB    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 *
 * @param admin
 * @return the server name
 * @throws IOException
 */
public static ServerInfo getServerInfo(final AdminService.BlockingInterface admin)
throws IOException {
  GetServerInfoRequest request = RequestConverter.buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(null, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:c5    文件:ResponseConverter.java   
/**
 * A utility to build a GetServerInfoResponse.
 *
 * @param serverName
 * @param webuiPort
 * @return the response
 */
public static GetServerInfoResponse buildGetServerInfoResponse(
    final ServerName serverName, final int webuiPort) {
  GetServerInfoResponse.Builder builder = GetServerInfoResponse.newBuilder();
  ServerInfo.Builder serverInfoBuilder = ServerInfo.newBuilder();
  serverInfoBuilder.setServerName(ProtobufUtil.toServerName(serverName));
  if (webuiPort >= 0) {
    serverInfoBuilder.setWebuiPort(webuiPort);
  }
  builder.setServerInfo(serverInfoBuilder.build());
  return builder.build();
}
项目:c5    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 *
 * @param admin
 * @return the server name
 * @throws IOException
 */
public static ServerInfo getServerInfo(final AdminService.BlockingInterface admin)
throws IOException {
  GetServerInfoRequest request = RequestConverter.buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(null, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:DominoHBase    文件:ResponseConverter.java   
/**
 * A utility to build a GetServerInfoResponse.
 *
 * @param serverName
 * @param webuiPort
 * @return the response
 */
public static GetServerInfoResponse buildGetServerInfoResponse(
    final ServerName serverName, final int webuiPort) {
  GetServerInfoResponse.Builder builder = GetServerInfoResponse.newBuilder();
  ServerInfo.Builder serverInfoBuilder = ServerInfo.newBuilder();
  serverInfoBuilder.setServerName(ProtobufUtil.toServerName(serverName));
  if (webuiPort >= 0) {
    serverInfoBuilder.setWebuiPort(webuiPort);
  }
  builder.setServerInfo(serverInfoBuilder.build());
  return builder.build();
}
项目:DominoHBase    文件:ProtobufUtil.java   
/**
 * A helper to get the info of a region server using admin protocol.
 *
 * @param admin
 * @return the server name
 * @throws IOException
 */
public static ServerInfo getServerInfo(
    final AdminProtocol admin) throws IOException {
  GetServerInfoRequest request = RequestConverter.buildGetServerInfoRequest();
  try {
    GetServerInfoResponse response = admin.getServerInfo(null, request);
    return response.getServerInfo();
  } catch (ServiceException se) {
    throw getRemoteException(se);
  }
}
项目:DominoHBase    文件:DistributedHBaseCluster.java   
@Override
public ServerName getServerHoldingRegion(byte[] regionName) throws IOException {
  HConnection connection = admin.getConnection();
  HRegionLocation regionLoc = connection.locateRegion(regionName);
  if (regionLoc == null) {
    return null;
  }

  AdminProtocol client = connection.getAdmin(regionLoc.getHostname(), regionLoc.getPort());
  ServerInfo info = ProtobufUtil.getServerInfo(client);
  return ProtobufUtil.toServerName(info.getServerName());
}