Java 类org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.RegionInfo 实例源码

项目:ditb    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @param info the HRegionInfo to convert
 * @return the converted RegionInfo
 */
public static RegionInfo convert(final HRegionInfo info) {
  if (info == null) return null;
  RegionInfo.Builder builder = RegionInfo.newBuilder();
  builder.setTableName(ProtobufUtil.toProtoTableName(info.getTable()));
  builder.setRegionId(info.getRegionId());
  if (info.getStartKey() != null) {
    builder.setStartKey(ByteStringer.wrap(info.getStartKey()));
  }
  if (info.getEndKey() != null) {
    builder.setEndKey(ByteStringer.wrap(info.getEndKey()));
  }
  builder.setOffline(info.isOffline());
  builder.setSplit(info.isSplit());
  builder.setReplicaId(info.getReplicaId());
  return builder.build();
}
项目:pbase    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @param info the HRegionInfo to convert
 * @return the converted RegionInfo
 */
public static RegionInfo convert(final HRegionInfo info) {
  if (info == null) return null;
  RegionInfo.Builder builder = RegionInfo.newBuilder();
  builder.setTableName(ProtobufUtil.toProtoTableName(info.getTable()));
  builder.setRegionId(info.getRegionId());
  if (info.getStartKey() != null) {
    builder.setStartKey(ByteStringer.wrap(info.getStartKey()));
  }
  if (info.getEndKey() != null) {
    builder.setEndKey(ByteStringer.wrap(info.getEndKey()));
  }
  builder.setOffline(info.isOffline());
  builder.setSplit(info.isSplit());
  builder.setReplicaId(info.getReplicaId());
  return builder.build();
}
项目:HIndex    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @param info the HRegionInfo to convert
 * @return the converted RegionInfo
 */
public static RegionInfo convert(final HRegionInfo info) {
  if (info == null) return null;
  RegionInfo.Builder builder = RegionInfo.newBuilder();
  builder.setTableName(ProtobufUtil.toProtoTableName(info.getTable()));
  builder.setRegionId(info.getRegionId());
  if (info.getStartKey() != null) {
    builder.setStartKey(HBaseZeroCopyByteString.wrap(info.getStartKey()));
  }
  if (info.getEndKey() != null) {
    builder.setEndKey(HBaseZeroCopyByteString.wrap(info.getEndKey()));
  }
  builder.setOffline(info.isOffline());
  builder.setSplit(info.isSplit());
  return builder.build();
}
项目:c5    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @param info the HRegionInfo to convert
 * @return the converted RegionInfo
 */
public static RegionInfo convert(final HRegionInfo info) {
  if (info == null) return null;
  RegionInfo.Builder builder = RegionInfo.newBuilder();
  builder.setTableName(ProtobufUtil.toProtoTableName(info.getTable()));
  builder.setRegionId(info.getRegionId());
  if (info.getStartKey() != null) {
    builder.setStartKey(ZeroCopyLiteralByteString.wrap(info.getStartKey()));
  }
  if (info.getEndKey() != null) {
    builder.setEndKey(ZeroCopyLiteralByteString.wrap(info.getEndKey()));
  }
  builder.setOffline(info.isOffline());
  builder.setSplit(info.isSplit());
  return builder.build();
}
项目:DominoHBase    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @param info the HRegionInfo to convert
 * @return the converted RegionInfo
 */
public static RegionInfo convert(final HRegionInfo info) {
  if (info == null) return null;
  RegionInfo.Builder builder = RegionInfo.newBuilder();
  builder.setTableName(ByteString.copyFrom(info.getTableName()));
  builder.setRegionId(info.getRegionId());
  if (info.getStartKey() != null) {
    builder.setStartKey(ByteString.copyFrom(info.getStartKey()));
  }
  if (info.getEndKey() != null) {
    builder.setEndKey(ByteString.copyFrom(info.getEndKey()));
  }
  builder.setOffline(info.isOffline());
  builder.setSplit(info.isSplit());
  return builder.build();
}
项目:ditb    文件:TestHRegionInfo.java   
@Test
public void testConvert() {
  TableName tableName = TableName.valueOf("ns1:table1");
  byte[] startKey = Bytes.toBytes("startKey");
  byte[] endKey = Bytes.toBytes("endKey");
  boolean split = false;
  long regionId = System.currentTimeMillis();
  int replicaId = 42;


  HRegionInfo hri = new HRegionInfo(tableName, startKey, endKey, split,
    regionId, replicaId);

  // convert two times, compare
  HRegionInfo convertedHri = HRegionInfo.convert(HRegionInfo.convert(hri));

  assertEquals(hri, convertedHri);

  // test convert RegionInfo without replicaId
  RegionInfo info = RegionInfo.newBuilder()
    .setTableName(HBaseProtos.TableName.newBuilder()
      .setQualifier(ByteString.copyFrom(tableName.getQualifier()))
      .setNamespace(ByteString.copyFrom(tableName.getNamespace()))
      .build())
    .setStartKey(ByteString.copyFrom(startKey))
    .setEndKey(ByteString.copyFrom(endKey))
    .setSplit(split)
    .setRegionId(regionId)
    .build();

  convertedHri = HRegionInfo.convert(info);
  HRegionInfo expectedHri = new HRegionInfo(tableName, startKey, endKey, split,
    regionId, 0); // expecting default replicaId

  assertEquals(expectedHri, convertedHri);
}
项目:ditb    文件:ProtobufUtil.java   
/**
 * Get the list of region info from a GetOnlineRegionResponse
 *
 * @param proto the GetOnlineRegionResponse
 * @return the list of region info or null if <code>proto</code> is null
 */
static List<HRegionInfo> getRegionInfos(final GetOnlineRegionResponse proto) {
  if (proto == null) return null;
  List<HRegionInfo> regionInfos = new ArrayList<HRegionInfo>();
  for (RegionInfo regionInfo: proto.getRegionInfoList()) {
    regionInfos.add(HRegionInfo.convert(regionInfo));
  }
  return regionInfos;
}
项目:ditb    文件:HRegionInfo.java   
/**
 * Convert a RegionInfo to a HRegionInfo
 *
 * @param proto the RegionInfo to convert
 * @return the converted HRegionInfho
 */
public static HRegionInfo convert(final RegionInfo proto) {
  if (proto == null) return null;
  TableName tableName =
      ProtobufUtil.toTableName(proto.getTableName());
  if (tableName.equals(TableName.META_TABLE_NAME)) {
    return RegionReplicaUtil.getRegionInfoForReplica(FIRST_META_REGIONINFO,
        proto.getReplicaId());
  }
  long regionId = proto.getRegionId();
  int replicaId = proto.hasReplicaId() ? proto.getReplicaId() : DEFAULT_REPLICA_ID;
  byte[] startKey = null;
  byte[] endKey = null;
  if (proto.hasStartKey()) {
    startKey = proto.getStartKey().toByteArray();
  }
  if (proto.hasEndKey()) {
    endKey = proto.getEndKey().toByteArray();
  }
  boolean split = false;
  if (proto.hasSplit()) {
    split = proto.getSplit();
  }
  HRegionInfo hri = new HRegionInfo(
      tableName,
      startKey,
      endKey, split, regionId, replicaId);
  if (proto.hasOffline()) {
    hri.setOffline(proto.getOffline());
  }
  return hri;
}
项目:pbase    文件:TestHRegionInfo.java   
@Test
public void testConvert() {
  TableName tableName = TableName.valueOf("ns1:table1");
  byte[] startKey = Bytes.toBytes("startKey");
  byte[] endKey = Bytes.toBytes("endKey");
  boolean split = false;
  long regionId = System.currentTimeMillis();
  int replicaId = 42;


  HRegionInfo hri = new HRegionInfo(tableName, startKey, endKey, split,
    regionId, replicaId);

  // convert two times, compare
  HRegionInfo convertedHri = HRegionInfo.convert(HRegionInfo.convert(hri));

  assertEquals(hri, convertedHri);

  // test convert RegionInfo without replicaId
  RegionInfo info = RegionInfo.newBuilder()
    .setTableName(HBaseProtos.TableName.newBuilder()
      .setQualifier(ByteString.copyFrom(tableName.getQualifier()))
      .setNamespace(ByteString.copyFrom(tableName.getNamespace()))
      .build())
    .setStartKey(ByteString.copyFrom(startKey))
    .setEndKey(ByteString.copyFrom(endKey))
    .setSplit(split)
    .setRegionId(regionId)
    .build();

  convertedHri = HRegionInfo.convert(info);
  HRegionInfo expectedHri = new HRegionInfo(tableName, startKey, endKey, split,
    regionId, 0); // expecting default replicaId

  assertEquals(expectedHri, convertedHri);
}
项目:pbase    文件:ProtobufUtil.java   
/**
 * Get the list of region info from a GetOnlineRegionResponse
 *
 * @param proto the GetOnlineRegionResponse
 * @return the list of region info or null if <code>proto</code> is null
 */
static List<HRegionInfo> getRegionInfos(final GetOnlineRegionResponse proto) {
  if (proto == null) return null;
  List<HRegionInfo> regionInfos = new ArrayList<HRegionInfo>();
  for (RegionInfo regionInfo: proto.getRegionInfoList()) {
    regionInfos.add(HRegionInfo.convert(regionInfo));
  }
  return regionInfos;
}
项目:pbase    文件:HRegionInfo.java   
/**
 * Convert a RegionInfo to a HRegionInfo
 *
 * @param proto the RegionInfo to convert
 * @return the converted HRegionInfho
 */
public static HRegionInfo convert(final RegionInfo proto) {
  if (proto == null) return null;
  TableName tableName =
      ProtobufUtil.toTableName(proto.getTableName());
  if (tableName.equals(TableName.META_TABLE_NAME)) {
    return FIRST_META_REGIONINFO;
  }
  long regionId = proto.getRegionId();
  int replicaId = proto.hasReplicaId() ? proto.getReplicaId() : DEFAULT_REPLICA_ID;
  byte[] startKey = null;
  byte[] endKey = null;
  if (proto.hasStartKey()) {
    startKey = proto.getStartKey().toByteArray();
  }
  if (proto.hasEndKey()) {
    endKey = proto.getEndKey().toByteArray();
  }
  boolean split = false;
  if (proto.hasSplit()) {
    split = proto.getSplit();
  }
  HRegionInfo hri = new HRegionInfo(
      tableName,
      startKey,
      endKey, split, regionId, replicaId);
  if (proto.hasOffline()) {
    hri.setOffline(proto.getOffline());
  }
  return hri;
}
项目:HIndex    文件:ProtobufUtil.java   
/**
 * Get the list of region info from a GetOnlineRegionResponse
 *
 * @param proto the GetOnlineRegionResponse
 * @return the list of region info or null if <code>proto</code> is null
 */
static List<HRegionInfo> getRegionInfos(final GetOnlineRegionResponse proto) {
  if (proto == null) return null;
  List<HRegionInfo> regionInfos = new ArrayList<HRegionInfo>();
  for (RegionInfo regionInfo: proto.getRegionInfoList()) {
    regionInfos.add(HRegionInfo.convert(regionInfo));
  }
  return regionInfos;
}
项目:HIndex    文件:HRegionInfo.java   
/**
 * Convert a RegionInfo to a HRegionInfo
 *
 * @param proto the RegionInfo to convert
 * @return the converted HRegionInfho
 */
public static HRegionInfo convert(final RegionInfo proto) {
  if (proto == null) return null;
  TableName tableName =
      ProtobufUtil.toTableName(proto.getTableName());
  if (tableName.equals(TableName.META_TABLE_NAME)) {
    return FIRST_META_REGIONINFO;
  }
  long regionId = proto.getRegionId();
  byte[] startKey = null;
  byte[] endKey = null;
  if (proto.hasStartKey()) {
    startKey = proto.getStartKey().toByteArray();
  }
  if (proto.hasEndKey()) {
    endKey = proto.getEndKey().toByteArray();
  }
  boolean split = false;
  if (proto.hasSplit()) {
    split = proto.getSplit();
  }
  HRegionInfo hri = new HRegionInfo(
      tableName,
      startKey,
      endKey, split, regionId);
  if (proto.hasOffline()) {
    hri.setOffline(proto.getOffline());
  }
  return hri;
}
项目:PyroDB    文件:ProtobufUtil.java   
/**
 * Get the list of region info from a GetOnlineRegionResponse
 *
 * @param proto the GetOnlineRegionResponse
 * @return the list of region info or null if <code>proto</code> is null
 */
static List<HRegionInfo> getRegionInfos(final GetOnlineRegionResponse proto) {
  if (proto == null) return null;
  List<HRegionInfo> regionInfos = new ArrayList<HRegionInfo>();
  for (RegionInfo regionInfo: proto.getRegionInfoList()) {
    regionInfos.add(HRegionInfo.convert(regionInfo));
  }
  return regionInfos;
}
项目:PyroDB    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @param info the HRegionInfo to convert
 * @return the converted RegionInfo
 */
public static RegionInfo convert(final HRegionInfo info) {
  if (info == null) return null;
  RegionInfo.Builder builder = RegionInfo.newBuilder();
  builder.setTableName(ProtobufUtil.toProtoTableName(info.getTable()));
  builder.setRegionId(info.getRegionId());
  if (info.getStartKey() != null) {
    builder.setStartKey(HBaseZeroCopyByteString.wrap(info.getStartKey()));
  }
  if (info.getEndKey() != null) {
    builder.setEndKey(HBaseZeroCopyByteString.wrap(info.getEndKey()));
  }
  builder.setOffline(info.isOffline());
  builder.setSplit(info.isSplit());
  // Shen Li: splitKeys
  if (null != info.splitKeys) {
    for (byte [] splitKey : info.splitKeys) {
      builder.addSplitKey(HBaseZeroCopyByteString.wrap(splitKey));
    }
  }
  if (null != info.replicaGroupIds) {
    for (int rgId : info.replicaGroupIds) {
      builder.addRgId(rgId);
    }
  }
  if (null != info.replicaNamespace)
    builder.setReplicaNamespace(info.replicaNamespace);
  // Shen Li: split-move
  if (null != info.destHostname)
    builder.setDestHostname(info.destHostname);
  return builder.build();
}
项目:c5    文件:ProtobufUtil.java   
/**
 * Get the list of region info from a GetOnlineRegionResponse
 *
 * @param proto the GetOnlineRegionResponse
 * @return the list of region info or null if <code>proto</code> is null
 */
static List<HRegionInfo> getRegionInfos(final GetOnlineRegionResponse proto) {
  if (proto == null) return null;
  List<HRegionInfo> regionInfos = new ArrayList<HRegionInfo>();
  for (RegionInfo regionInfo: proto.getRegionInfoList()) {
    regionInfos.add(HRegionInfo.convert(regionInfo));
  }
  return regionInfos;
}
项目:c5    文件:HRegionInfo.java   
/**
 * Convert a RegionInfo to a HRegionInfo
 *
 * @param proto the RegionInfo to convert
 * @return the converted HRegionInfho
 */
public static HRegionInfo convert(final RegionInfo proto) {
  if (proto == null) return null;
  TableName tableName =
      ProtobufUtil.toTableName(proto.getTableName());
  if (tableName.equals(TableName.META_TABLE_NAME)) {
    return FIRST_META_REGIONINFO;
  }
  long regionId = proto.getRegionId();
  byte[] startKey = null;
  byte[] endKey = null;
  if (proto.hasStartKey()) {
    startKey = proto.getStartKey().toByteArray();
  }
  if (proto.hasEndKey()) {
    endKey = proto.getEndKey().toByteArray();
  }
  boolean split = false;
  if (proto.hasSplit()) {
    split = proto.getSplit();
  }
  HRegionInfo hri = new HRegionInfo(
      tableName,
      startKey,
      endKey, split, regionId);
  if (proto.hasOffline()) {
    hri.setOffline(proto.getOffline());
  }
  return hri;
}
项目:DominoHBase    文件:ProtobufUtil.java   
/**
 * Get the list of region info from a GetOnlineRegionResponse
 *
 * @param proto the GetOnlineRegionResponse
 * @return the list of region info or null if <code>proto</code> is null
 */
static List<HRegionInfo> getRegionInfos(final GetOnlineRegionResponse proto) {
  if (proto == null) return null;
  List<HRegionInfo> regionInfos = new ArrayList<HRegionInfo>();
  for (RegionInfo regionInfo: proto.getRegionInfoList()) {
    regionInfos.add(HRegionInfo.convert(regionInfo));
  }
  return regionInfos;
}
项目:DominoHBase    文件:HRegionInfo.java   
/**
 * Convert a RegionInfo to a HRegionInfo
 *
 * @param proto the RegionInfo to convert
 * @return the converted HRegionInfo
 */
public static HRegionInfo convert(final RegionInfo proto) {
  if (proto == null) return null;
  byte [] tableName = proto.getTableName().toByteArray();
  if (Bytes.equals(tableName, HConstants.ROOT_TABLE_NAME)) {
    return ROOT_REGIONINFO;
  } else if (Bytes.equals(tableName, HConstants.META_TABLE_NAME)) {
    return FIRST_META_REGIONINFO;
  }
  long regionId = proto.getRegionId();
  byte[] startKey = null;
  byte[] endKey = null;
  if (proto.hasStartKey()) {
    startKey = proto.getStartKey().toByteArray();
  }
  if (proto.hasEndKey()) {
    endKey = proto.getEndKey().toByteArray();
  }
  boolean split = false;
  if (proto.hasSplit()) {
    split = proto.getSplit();
  }
  HRegionInfo hri = new HRegionInfo(tableName, startKey, endKey, split, regionId);
  if (proto.hasOffline()) {
    hri.setOffline(proto.getOffline());
  }
  return hri;
}
项目:ditb    文件:RSRpcServices.java   
/**
 *  Wamrmup a region on this server.
 *
 * This method should only be called by Master. It synchrnously opens the region and
 * closes the region bringing the most important pages in cache.
 * <p>
 *
 * @param controller the RPC controller
 * @param request the request
 * @throws ServiceException
 */
@Override
public WarmupRegionResponse warmupRegion(final RpcController controller,
    final WarmupRegionRequest request) throws ServiceException {

  RegionInfo regionInfo = request.getRegionInfo();
  final HRegionInfo region = HRegionInfo.convert(regionInfo);
  HTableDescriptor htd;
  WarmupRegionResponse response = WarmupRegionResponse.getDefaultInstance();

  try {
    checkOpen();
    String encodedName = region.getEncodedName();
    byte[] encodedNameBytes = region.getEncodedNameAsBytes();
    final Region onlineRegion = regionServer.getFromOnlineRegions(encodedName);

    if (onlineRegion != null) {
      LOG.info("Region already online. Skipping warming up " + region);
      return response;
    }

    if (LOG.isDebugEnabled()) {
      LOG.debug("Warming up Region " + region.getRegionNameAsString());
    }

    htd = regionServer.tableDescriptors.get(region.getTable());

    if (regionServer.getRegionsInTransitionInRS().containsKey(encodedNameBytes)) {
      LOG.info("Region is in transition. Skipping warmup " + region);
      return response;
    }

    HRegion.warmupHRegion(region, htd, regionServer.getWAL(region),
        regionServer.getConfiguration(), regionServer, null);

  } catch (IOException ie) {
    LOG.error("Failed warming up region " + region.getRegionNameAsString(), ie);
    throw new ServiceException(ie);
  }

  return response;
}
项目:PyroDB    文件:HRegionInfo.java   
/**
 * Convert a RegionInfo to a HRegionInfo
 *
 * @param proto the RegionInfo to convert
 * @return the converted HRegionInfho
 */
public static HRegionInfo convert(final RegionInfo proto) {
  if (proto == null) return null;
  TableName tableName =
      ProtobufUtil.toTableName(proto.getTableName());
  if (tableName.equals(TableName.META_TABLE_NAME)) {
    return FIRST_META_REGIONINFO;
  }
  long regionId = proto.getRegionId();
  byte[] startKey = null;
  byte[] endKey = null;
  if (proto.hasStartKey()) {
    startKey = proto.getStartKey().toByteArray();
  }
  if (proto.hasEndKey()) {
    endKey = proto.getEndKey().toByteArray();
  }
  boolean split = false;
  if (proto.hasSplit()) {
    split = proto.getSplit();
  }
  // Shen Li: splitKeys
  byte[][] splitKeys = null;
  List<ByteString> splitKeyList = proto.getSplitKeyList();
  if (null != splitKeyList && splitKeyList.size() > 0) {
    splitKeys = new byte[splitKeyList.size() + 2][];
    int index = 0;
    splitKeys[index++] = startKey;
    for (ByteString splitKey: splitKeyList) {
      splitKeys[index++] = splitKey.toByteArray();
    }
    splitKeys[index] = endKey;
  } else {
    splitKeys = new byte[][] {startKey, endKey};
  }

  // Shen Li: replica group id
  int [] replicaGroupIds = null;
  List<Integer> rgIds = proto.getRgIdList();
  if (null != rgIds && rgIds.size() > 0) {
    replicaGroupIds = new int[rgIds.size()];
    for (int i = 0 ; i < replicaGroupIds.length; ++i) {
      replicaGroupIds[i] = rgIds.get(i);
    }
  }

  // Shen Li: replica namespace
  String replicaNamespace = proto.getReplicaNamespace();
  String destHostname = proto.getDestHostname();

  HRegionInfo hri = new HRegionInfo(
      tableName, splitKeys, 0, splitKeys.length - 1, split, regionId,
      replicaNamespace, replicaGroupIds);
  if (null != destHostname) {
    hri.setDestHostname(destHostname);
  }
  if (proto.hasOffline()) {
    hri.setOffline(proto.getOffline());
  }
  return hri;
}
项目:ditb    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to the protobuf RegionInfo
 *
 * @return the converted RegionInfo
 */
RegionInfo convert() {
  return convert(this);
}
项目:pbase    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @return the converted RegionInfo
 */
RegionInfo convert() {
  return convert(this);
}
项目:HIndex    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @return the converted RegionInfo
 */
RegionInfo convert() {
  return convert(this);
}
项目:PyroDB    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @return the converted RegionInfo
 */
RegionInfo convert() {
  return convert(this);
}
项目:c5    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @return the converted RegionInfo
 */
RegionInfo convert() {
  return convert(this);
}
项目:DominoHBase    文件:HRegionInfo.java   
/**
 * Convert a HRegionInfo to a RegionInfo
 *
 * @return the converted RegionInfo
 */
RegionInfo convert() {
  return convert(this);
}