当前位置: 首页>>代码示例>>Java>>正文


Java RegionSpecifierType.ENCODED_REGION_NAME属性代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.RegionSpecifier.RegionSpecifierType.ENCODED_REGION_NAME属性的典型用法代码示例。如果您正苦于以下问题:Java RegionSpecifierType.ENCODED_REGION_NAME属性的具体用法?Java RegionSpecifierType.ENCODED_REGION_NAME怎么用?Java RegionSpecifierType.ENCODED_REGION_NAME使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.RegionSpecifier.RegionSpecifierType的用法示例。


在下文中一共展示了RegionSpecifierType.ENCODED_REGION_NAME属性的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: moveRegion

@Override
public MoveRegionResponse moveRegion(RpcController controller,
    MoveRegionRequest req) throws ServiceException {
  final byte [] encodedRegionName = req.getRegion().getValue().toByteArray();
  RegionSpecifierType type = req.getRegion().getType();
  final byte [] destServerName = (req.hasDestServerName())?
    Bytes.toBytes(ProtobufUtil.toServerName(req.getDestServerName()).getServerName()):null;
  MoveRegionResponse mrr = MoveRegionResponse.newBuilder().build();

  if (type != RegionSpecifierType.ENCODED_REGION_NAME) {
    LOG.warn("moveRegion specifier type: expected: " + RegionSpecifierType.ENCODED_REGION_NAME
      + " actual: " + type);
  }

  try {
    master.checkInitialized();
    master.move(encodedRegionName, destServerName);
  } catch (IOException ioe) {
    throw new ServiceException(ioe);
  }
  return mrr;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:22,代码来源:MasterRpcServices.java

示例2: moveRegion

@Override
public MoveRegionResponse moveRegion(RpcController controller, MoveRegionRequest req)
throws ServiceException {
  final byte [] encodedRegionName = req.getRegion().getValue().toByteArray();
  RegionSpecifierType type = req.getRegion().getType();
  final byte [] destServerName = (req.hasDestServerName())?
    Bytes.toBytes(ProtobufUtil.toServerName(req.getDestServerName()).getServerName()):null;
  MoveRegionResponse mrr = MoveRegionResponse.newBuilder().build();

  if (type != RegionSpecifierType.ENCODED_REGION_NAME) {
    LOG.warn("moveRegion specifier type: expected: " + RegionSpecifierType.ENCODED_REGION_NAME
      + " actual: " + type);
  }

  try {
    move(encodedRegionName, destServerName);
  } catch (HBaseIOException ioe) {
    throw new ServiceException(ioe);
  }
  return mrr;
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:21,代码来源:HMaster.java

示例3: dispatchMergingRegions

@Override
public DispatchMergingRegionsResponse dispatchMergingRegions(
    RpcController controller, DispatchMergingRegionsRequest request)
    throws ServiceException {
  final byte[] encodedNameOfRegionA = request.getRegionA().getValue()
      .toByteArray();
  final byte[] encodedNameOfRegionB = request.getRegionB().getValue()
      .toByteArray();
  final boolean forcible = request.getForcible();
  if (request.getRegionA().getType() != RegionSpecifierType.ENCODED_REGION_NAME
      || request.getRegionB().getType() != RegionSpecifierType.ENCODED_REGION_NAME) {
    LOG.warn("mergeRegions specifier type: expected: "
        + RegionSpecifierType.ENCODED_REGION_NAME + " actual: region_a="
        + request.getRegionA().getType() + ", region_b="
        + request.getRegionB().getType());
  }
  RegionState regionStateA = assignmentManager.getRegionStates()
      .getRegionState(Bytes.toString(encodedNameOfRegionA));
  RegionState regionStateB = assignmentManager.getRegionStates()
      .getRegionState(Bytes.toString(encodedNameOfRegionB));
  if (regionStateA == null || regionStateB == null) {
    throw new ServiceException(new UnknownRegionException(
        Bytes.toStringBinary(regionStateA == null ? encodedNameOfRegionA
            : encodedNameOfRegionB)));
  }

  if (!regionStateA.isOpened() || !regionStateB.isOpened()) {
    throw new ServiceException(new MergeRegionException(
      "Unable to merge regions not online " + regionStateA + ", " + regionStateB));
  }

  HRegionInfo regionInfoA = regionStateA.getRegion();
  HRegionInfo regionInfoB = regionStateB.getRegion();
  if (regionInfoA.compareTo(regionInfoB) == 0) {
    throw new ServiceException(new MergeRegionException(
      "Unable to merge a region to itself " + regionInfoA + ", " + regionInfoB));
  }

  if (!forcible && !HRegionInfo.areAdjacent(regionInfoA, regionInfoB)) {
    throw new ServiceException(new MergeRegionException(
      "Unable to merge not adjacent regions "
        + regionInfoA.getRegionNameAsString() + ", "
        + regionInfoB.getRegionNameAsString()
        + " where forcible = " + forcible));
  }

  try {
    dispatchMergingRegions(regionInfoA, regionInfoB, forcible);
  } catch (IOException ioe) {
    throw new ServiceException(ioe);
  }

  return DispatchMergingRegionsResponse.newBuilder().build();
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:54,代码来源:HMaster.java

示例4: moveRegion

@Override
public MoveRegionResponse moveRegion(RpcController controller, MoveRegionRequest req)
throws ServiceException {
  final byte [] encodedRegionName = req.getRegion().getValue().toByteArray();
  RegionSpecifierType type = req.getRegion().getType();
  final byte [] destServerName = (req.hasDestServerName())?
    Bytes.toBytes(ProtobufUtil.toServerName(req.getDestServerName()).getServerName()):null;
  MoveRegionResponse mrr = MoveRegionResponse.newBuilder().build();

  if (type != RegionSpecifierType.ENCODED_REGION_NAME) {
    LOG.warn("moveRegion specifier type: expected: " + RegionSpecifierType.ENCODED_REGION_NAME
      + " actual: " + type);
  }
  RegionState regionState = assignmentManager.getRegionStates().
    getRegionState(Bytes.toString(encodedRegionName));
  if (regionState == null) {
    throw new ServiceException(
      new UnknownRegionException(Bytes.toStringBinary(encodedRegionName)));
  }

  HRegionInfo hri = regionState.getRegion();
  ServerName dest;
  if (destServerName == null || destServerName.length == 0) {
    LOG.info("Passed destination servername is null/empty so " +
      "choosing a server at random");
    final List<ServerName> destServers = this.serverManager.createDestinationServersList(
      regionState.getServerName());
    dest = balancer.randomAssignment(hri, destServers);
  } else {
    dest = new ServerName(Bytes.toString(destServerName));
    if (dest.equals(regionState.getServerName())) {
      LOG.debug("Skipping move of region " + hri.getRegionNameAsString()
        + " because region already assigned to the same server " + dest + ".");
      return mrr;
    }
  }

  // Now we can do the move
  RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), dest);

  try {
    if (this.cpHost != null) {
      if (this.cpHost.preMove(hri, rp.getSource(), rp.getDestination())) {
        return mrr;
      }
    }
    LOG.info("Added move plan " + rp + ", running balancer");
    this.assignmentManager.balance(rp);
    if (this.cpHost != null) {
      this.cpHost.postMove(hri, rp.getSource(), rp.getDestination());
    }
  } catch (IOException ioe) {
    UnknownRegionException ure = new UnknownRegionException(
      Bytes.toStringBinary(encodedRegionName));
    ure.initCause(ioe);
    throw new ServiceException(ure);
  }
  return mrr;
}
 
开发者ID:daidong,项目名称:DominoHBase,代码行数:59,代码来源:HMaster.java


注:本文中的org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.RegionSpecifier.RegionSpecifierType.ENCODED_REGION_NAME属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。