• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java NameStringPair类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



NameStringPair类属于org.apache.hadoop.hbase.protobuf.generated.HBaseProtos包,在下文中一共展示了NameStringPair类的19个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: toSnapshotDescription

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
private SnapshotDescription toSnapshotDescription(ProcedureDescription desc)
    throws IOException {
  SnapshotDescription.Builder builder = SnapshotDescription.newBuilder();
  if (!desc.hasInstance()) {
    throw new IOException("Snapshot name is not defined: " + desc.toString());
  }
  String snapshotName = desc.getInstance();
  List<NameStringPair> props = desc.getConfigurationList();
  String table = null;
  for (NameStringPair prop : props) {
    if ("table".equalsIgnoreCase(prop.getName())) {
      table = prop.getValue();
    }
  }
  if (table == null) {
    throw new IOException("Snapshot table is not defined: " + desc.toString());
  }
  TableName tableName = TableName.valueOf(table);
  builder.setTable(tableName.getNameAsString());
  builder.setName(snapshotName);
  builder.setType(SnapshotDescription.Type.FLUSH);
  return builder.build();
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:24,代码来源:SnapshotManager.java


示例2: regionServerStartup

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
@Override
public RegionServerStartupResponse regionServerStartup(
    RpcController controller, RegionServerStartupRequest request) throws ServiceException {
  // Register with server manager
  try {
    master.checkServiceStarted();
    InetAddress ia = master.getRemoteInetAddress(
      request.getPort(), request.getServerStartCode());
    // if regionserver passed hostname to use,
    // then use it instead of doing a reverse DNS lookup
    ServerName rs = master.serverManager.regionServerStartup(request, ia);

    // Send back some config info
    RegionServerStartupResponse.Builder resp = createConfigurationSubset();
    NameStringPair.Builder entry = NameStringPair.newBuilder()
      .setName(HConstants.KEY_FOR_HOSTNAME_SEEN_BY_MASTER)
      .setValue(rs.getHostname());
    resp.addMapEntries(entry.build());

    return resp.build();
  } catch (IOException ioe) {
    throw new ServiceException(ioe);
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:25,代码来源:MasterRpcServices.java


示例3: handleReportForDutyResponse

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
@Override
protected void handleReportForDutyResponse(RegionServerStartupResponse c) throws IOException {
  if (firstRS.getAndSet(false)) {
    InetSocketAddress address = super.getRpcServer().getListenerAddress();
    if (address == null) {
      throw new IOException("Listener channel is closed");
    }
    for (NameStringPair e : c.getMapEntriesList()) {
      String key = e.getName();
      // The hostname the master sees us as.
      if (key.equals(HConstants.KEY_FOR_HOSTNAME_SEEN_BY_MASTER)) {
        String hostnameFromMasterPOV = e.getValue();
        assertEquals(address.getHostName(), hostnameFromMasterPOV);
      }
    }
    while (!masterActive) {
      Threads.sleep(100);
    }
    super.kill();
  } else {
    super.handleReportForDutyResponse(c);
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:24,代码来源:TestRSKilledWhenInitializing.java


示例4: isProcedureFinished

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Check the current state of the specified procedure.
 * <p>
 * There are three possible states:
 * <ol>
 * <li>running - returns <tt>false</tt></li>
 * <li>finished - returns <tt>true</tt></li>
 * <li>finished with error - throws the exception that caused the procedure to fail</li>
 * </ol>
 * <p>
 *
 * @param signature The signature that uniquely identifies a procedure
 * @param instance The instance name of the procedure
 * @param props Property/Value pairs of properties passing to the procedure
 * @return true if the specified procedure is finished successfully, false if it is still running
 * @throws IOException if the specified procedure finished with error
 */
@Override
public boolean isProcedureFinished(String signature, String instance, Map<String, String> props)
    throws IOException {
  final ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }
  final ProcedureDescription desc = builder.build();
  return executeCallable(
      new MasterCallable<IsProcedureDoneResponse>(getConnection()) {
        @Override
        public IsProcedureDoneResponse call(int callTimeout) throws ServiceException {
          PayloadCarryingRpcController controller = rpcControllerFactory.newController();
          controller.setCallTimeout(callTimeout);
          return master.isProcedureDone(controller, IsProcedureDoneRequest
              .newBuilder().setProcedure(desc).build());
        }
      }).getDone();
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:40,代码来源:HBaseAdmin.java


示例5: regionServerStartup

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
@Override
public RegionServerStartupResponse regionServerStartup(
    RpcController controller, RegionServerStartupRequest request) throws ServiceException {
  // Register with server manager
  try {
    master.checkServiceStarted();
    InetAddress ia = master.getRemoteInetAddress(
      request.getPort(), request.getServerStartCode());
    ServerName rs = master.serverManager.regionServerStartup(ia, request.getPort(),
      request.getServerStartCode(), request.getServerCurrentTime());

    // Send back some config info
    RegionServerStartupResponse.Builder resp = createConfigurationSubset();
    NameStringPair.Builder entry = NameStringPair.newBuilder()
      .setName(HConstants.KEY_FOR_HOSTNAME_SEEN_BY_MASTER)
      .setValue(rs.getHostname());
    resp.addMapEntries(entry.build());

    return resp.build();
  } catch (IOException ioe) {
    throw new ServiceException(ioe);
  }
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:24,代码来源:MasterRpcServices.java


示例6: handleReportForDutyResponse

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
@Override
protected void handleReportForDutyResponse(RegionServerStartupResponse c) throws IOException {
  if (firstRS.getAndSet(false)) {
    for (NameStringPair e : c.getMapEntriesList()) {
      String key = e.getName();
      // The hostname the master sees us as.
      if (key.equals(HConstants.KEY_FOR_HOSTNAME_SEEN_BY_MASTER)) {
        String hostnameFromMasterPOV = e.getValue();
        assertEquals(super.getRpcServer().getListenerAddress().getHostName(),
          hostnameFromMasterPOV);
      }
    }
    while (!masterActive) {
      Threads.sleep(100);
    }
    super.kill();
  } else {
    super.handleReportForDutyResponse(c);
  }
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:21,代码来源:TestRSKilledWhenInitializing.java


示例7: execProcedureWithRet

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Execute a distributed procedure on a cluster synchronously with return data
 *
 * @param signature A distributed procedure is uniquely identified
 * by its signature (default the root ZK node name of the procedure).
 * @param instance The instance name of the procedure. For some procedures, this parameter is
 * optional.
 * @param props Property/Value pairs of properties passing to the procedure
 * @return data returned after procedure execution. null if no return data.
 * @throws IOException
 */
@Override
public byte[] execProcedureWithRet(String signature, String instance,
    Map<String, String> props) throws IOException {
  ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }

  final ExecProcedureRequest request = ExecProcedureRequest.newBuilder()
      .setProcedure(builder.build()).build();
  // run the procedure on the master
  ExecProcedureResponse response = executeCallable(new MasterCallable<ExecProcedureResponse>(
      getConnection()) {
    @Override
    public ExecProcedureResponse call(int callTimeout) throws ServiceException {
      return master.execProcedureWithRet(null, request);
    }
  });

  return response.hasReturnData() ? response.getReturnData().toByteArray() : null;
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:36,代码来源:HBaseAdmin.java


示例8: isProcedureFinished

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Check the current state of the specified procedure.
 * <p>
 * There are three possible states:
 * <ol>
 * <li>running - returns <tt>false</tt></li>
 * <li>finished - returns <tt>true</tt></li>
 * <li>finished with error - throws the exception that caused the procedure to fail</li>
 * </ol>
 * <p>
 *
 * @param signature The signature that uniquely identifies a procedure
 * @param instance The instance name of the procedure
 * @param props Property/Value pairs of properties passing to the procedure
 * @return true if the specified procedure is finished successfully, false if it is still running
 * @throws IOException if the specified procedure finished with error
 */
@Override
public boolean isProcedureFinished(String signature, String instance, Map<String, String> props)
    throws IOException {
  final ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }
  final ProcedureDescription desc = builder.build();
  return executeCallable(
      new MasterCallable<IsProcedureDoneResponse>(getConnection()) {
        @Override
        public IsProcedureDoneResponse call(int callTimeout) throws ServiceException {
          return master.isProcedureDone(null, IsProcedureDoneRequest
              .newBuilder().setProcedure(desc).build());
        }
      }).getDone();
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:38,代码来源:HBaseAdmin.java


示例9: regionServerStartup

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
@Override
public RegionServerStartupResponse regionServerStartup(
    RpcController controller, RegionServerStartupRequest request) throws ServiceException {
  // Register with server manager
  try {
    InetAddress ia = getRemoteInetAddress(request.getPort(), request.getServerStartCode());
    ServerName rs = this.serverManager.regionServerStartup(ia, request.getPort(),
      request.getServerStartCode(), request.getServerCurrentTime());

    // Send back some config info
    RegionServerStartupResponse.Builder resp = createConfigurationSubset();
    NameStringPair.Builder entry = NameStringPair.newBuilder()
      .setName(HConstants.KEY_FOR_HOSTNAME_SEEN_BY_MASTER)
      .setValue(rs.getHostname());
    resp.addMapEntries(entry.build());

    return resp.build();
  } catch (IOException ioe) {
    throw new ServiceException(ioe);
  }
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:22,代码来源:HMaster.java


示例10: isProcedureFinished

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Check the current state of the specified procedure.
 * <p>
 * There are three possible states:
 * <ol>
 * <li>running - returns <tt>false</tt></li>
 * <li>finished - returns <tt>true</tt></li>
 * <li>finished with error - throws the exception that caused the procedure to fail</li>
 * </ol>
 * <p>
 *
 * @param signature The signature that uniquely identifies a procedure
 * @param instance The instance name of the procedure
 * @param props Property/Value pairs of properties passing to the procedure
 * @return true if the specified procedure is finished successfully, false if it is still running
 * @throws IOException if the specified procedure finished with error
 */
public boolean isProcedureFinished(String signature, String instance, Map<String, String> props)
    throws IOException {
  final ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (String key : props.keySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(key)
        .setValue(props.get(key)).build();
    builder.addConfiguration(pair);
  }
  final ProcedureDescription desc = builder.build();
  return executeCallable(
      new MasterCallable<IsProcedureDoneResponse>(getConnection()) {
        @Override
        public IsProcedureDoneResponse call() throws ServiceException {
          return master.isProcedureDone(null, IsProcedureDoneRequest
              .newBuilder().setProcedure(desc).build());
        }
      }).getDone();
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:37,代码来源:HBaseAdmin.java


示例11: isProcedureFinished

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Check the current state of the specified procedure.
 * <p>
 * There are three possible states:
 * <ol>
 * <li>running - returns <tt>false</tt></li>
 * <li>finished - returns <tt>true</tt></li>
 * <li>finished with error - throws the exception that caused the procedure to fail</li>
 * </ol>
 * <p>
 *
 * @param signature The signature that uniquely identifies a procedure
 * @param instance The instance name of the procedure
 * @param props Property/Value pairs of properties passing to the procedure
 * @return true if the specified procedure is finished successfully, false if it is still running
 * @throws IOException if the specified procedure finished with error
 */
public boolean isProcedureFinished(String signature, String instance, Map<String, String> props)
    throws IOException {
  final ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }
  final ProcedureDescription desc = builder.build();
  return executeCallable(
      new MasterCallable<IsProcedureDoneResponse>(getConnection()) {
        @Override
        public IsProcedureDoneResponse call(int callTimeout) throws ServiceException {
          return master.isProcedureDone(null, IsProcedureDoneRequest
              .newBuilder().setProcedure(desc).build());
        }
      }).getDone();
}
 
开发者ID:shenli-uiuc,项目名称:PyroDB,代码行数:37,代码来源:HBaseAdmin.java


示例12: handleReportForDutyResponse

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
@Override
protected void handleReportForDutyResponse(RegionServerStartupResponse c) throws IOException {
  for (NameStringPair e : c.getMapEntriesList()) {
    String key = e.getName();
    // The hostname the master sees us as.
    if (key.equals(HConstants.KEY_FOR_HOSTNAME_SEEN_BY_MASTER)) {
      String hostnameFromMasterPOV = e.getValue();
      assertEquals(super.getRpcServer().getListenerAddress().getHostName(),
        hostnameFromMasterPOV);
    }
  }
  while (!masterActive) {
    Threads.sleep(100);
  }
  super.kill();
}
 
开发者ID:cloud-software-foundation,项目名称:c5,代码行数:17,代码来源:TestRSKilledWhenInitializing.java


示例13: addConfig

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
private RegionServerStartupResponse.Builder addConfig(
    final RegionServerStartupResponse.Builder resp, final String key) {
  NameStringPair.Builder entry = NameStringPair.newBuilder()
    .setName(key)
    .setValue(master.getConfiguration().get(key));
  resp.addMapEntries(entry.build());
  return resp;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:9,代码来源:MasterRpcServices.java


示例14: execProcedureWithRet

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Execute a distributed procedure on a cluster synchronously with return data
 *
 * @param signature A distributed procedure is uniquely identified
 * by its signature (default the root ZK node name of the procedure).
 * @param instance The instance name of the procedure. For some procedures, this parameter is
 * optional.
 * @param props Property/Value pairs of properties passing to the procedure
 * @return data returned after procedure execution. null if no return data.
 * @throws IOException
 */
@Override
public byte[] execProcedureWithRet(String signature, String instance,
    Map<String, String> props) throws IOException {
  ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }

  final ExecProcedureRequest request = ExecProcedureRequest.newBuilder()
      .setProcedure(builder.build()).build();
  // run the procedure on the master
  ExecProcedureResponse response = executeCallable(new MasterCallable<ExecProcedureResponse>(
      getConnection()) {
    @Override
    public ExecProcedureResponse call(int callTimeout) throws ServiceException {
      PayloadCarryingRpcController controller = rpcControllerFactory.newController();
      controller.setCallTimeout(callTimeout);
      return master.execProcedureWithRet(controller, request);
    }
  });

  return response.hasReturnData() ? response.getReturnData().toByteArray() : null;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:38,代码来源:HBaseAdmin.java


示例15: addConfig

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
private RegionServerStartupResponse.Builder addConfig(
    final RegionServerStartupResponse.Builder resp, final String key) {
  NameStringPair.Builder entry = NameStringPair.newBuilder()
    .setName(key)
    .setValue(this.conf.get(key));
  resp.addMapEntries(entry.build());
  return resp;
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:9,代码来源:HMaster.java


示例16: execProcedure

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Execute a distributed procedure on a cluster.
 *
 * @param signature A distributed procedure is uniquely identified
 * by its signature (default the root ZK node name of the procedure).
 * @param instance The instance name of the procedure. For some procedures, this parameter is
 * optional.
 * @param props Property/Value pairs of properties passing to the procedure
 * @throws IOException
 */
@Override
public void execProcedure(String signature, String instance,
    Map<String, String> props) throws IOException {
  ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }

  final ExecProcedureRequest request = ExecProcedureRequest.newBuilder()
      .setProcedure(builder.build()).build();
  // run the procedure on the master
  ExecProcedureResponse response = executeCallable(new MasterCallable<ExecProcedureResponse>(
      getConnection()) {
    @Override
    public ExecProcedureResponse call(int callTimeout) throws ServiceException {
      PayloadCarryingRpcController controller = rpcControllerFactory.newController();
      controller.setCallTimeout(callTimeout);
      return master.execProcedure(controller, request);
    }
  });

  long start = EnvironmentEdgeManager.currentTime();
  long max = response.getExpectedTimeout();
  long maxPauseTime = max / this.numRetries;
  int tries = 0;
  LOG.debug("Waiting a max of " + max + " ms for procedure '" +
      signature + " : " + instance + "'' to complete. (max " + maxPauseTime + " ms per retry)");
  boolean done = false;
  while (tries == 0
      || ((EnvironmentEdgeManager.currentTime() - start) < max && !done)) {
    try {
      // sleep a backoff <= pauseTime amount
      long sleep = getPauseTime(tries++);
      sleep = sleep > maxPauseTime ? maxPauseTime : sleep;
      LOG.debug("(#" + tries + ") Sleeping: " + sleep +
        "ms while waiting for procedure completion.");
      Thread.sleep(sleep);
    } catch (InterruptedException e) {
      throw (InterruptedIOException)new InterruptedIOException("Interrupted").initCause(e);
    }
    LOG.debug("Getting current status of procedure from master...");
    done = isProcedureFinished(signature, instance, props);
  }
  if (!done) {
    throw new IOException("Procedure '" + signature + " : " + instance
        + "' wasn't completed in expectedTime:" + max + " ms");
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:62,代码来源:HBaseAdmin.java


示例17: execProcedure

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Execute a distributed procedure on a cluster.
 *
 * @param signature A distributed procedure is uniquely identified
 * by its signature (default the root ZK node name of the procedure).
 * @param instance The instance name of the procedure. For some procedures, this parameter is
 * optional.
 * @param props Property/Value pairs of properties passing to the procedure
 * @throws IOException
 */
@Override
public void execProcedure(String signature, String instance,
    Map<String, String> props) throws IOException {
  ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }

  final ExecProcedureRequest request = ExecProcedureRequest.newBuilder()
      .setProcedure(builder.build()).build();
  // run the procedure on the master
  ExecProcedureResponse response = executeCallable(new MasterCallable<ExecProcedureResponse>(
      getConnection()) {
    @Override
    public ExecProcedureResponse call(int callTimeout) throws ServiceException {
      return master.execProcedure(null, request);
    }
  });

  long start = EnvironmentEdgeManager.currentTime();
  long max = response.getExpectedTimeout();
  long maxPauseTime = max / this.numRetries;
  int tries = 0;
  LOG.debug("Waiting a max of " + max + " ms for procedure '" +
      signature + " : " + instance + "'' to complete. (max " + maxPauseTime + " ms per retry)");
  boolean done = false;
  while (tries == 0
      || ((EnvironmentEdgeManager.currentTime() - start) < max && !done)) {
    try {
      // sleep a backoff <= pauseTime amount
      long sleep = getPauseTime(tries++);
      sleep = sleep > maxPauseTime ? maxPauseTime : sleep;
      LOG.debug("(#" + tries + ") Sleeping: " + sleep +
        "ms while waiting for procedure completion.");
      Thread.sleep(sleep);
    } catch (InterruptedException e) {
      throw (InterruptedIOException)new InterruptedIOException("Interrupted").initCause(e);
    }
    LOG.debug("Getting current status of procedure from master...");
    done = isProcedureFinished(signature, instance, props);
  }
  if (!done) {
    throw new IOException("Procedure '" + signature + " : " + instance
        + "' wasn't completed in expectedTime:" + max + " ms");
  }
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:60,代码来源:HBaseAdmin.java


示例18: execProcedure

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Execute a distributed procedure on a cluster.
 *
 * @param signature A distributed procedure is uniquely identified
 * by its signature (default the root ZK node name of the procedure).
 * @param instance The instance name of the procedure. For some procedures, this parameter is
 * optional.
 * @param props Property/Value pairs of properties passing to the procedure
 */
public void execProcedure(String signature, String instance,
    Map<String, String> props) throws IOException {
  ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (String key : props.keySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(key)
        .setValue(props.get(key)).build();
    builder.addConfiguration(pair);
  }

  final ExecProcedureRequest request = ExecProcedureRequest.newBuilder()
      .setProcedure(builder.build()).build();
  // run the procedure on the master
  ExecProcedureResponse response = executeCallable(new MasterCallable<ExecProcedureResponse>(
      getConnection()) {
    @Override
    public ExecProcedureResponse call() throws ServiceException {
      return master.execProcedure(null, request);
    }
  });

  long start = EnvironmentEdgeManager.currentTimeMillis();
  long max = response.getExpectedTimeout();
  long maxPauseTime = max / this.numRetries;
  int tries = 0;
  LOG.debug("Waiting a max of " + max + " ms for procedure '" +
      signature + " : " + instance + "'' to complete. (max " + maxPauseTime + " ms per retry)");
  boolean done = false;
  while (tries == 0
      || ((EnvironmentEdgeManager.currentTimeMillis() - start) < max && !done)) {
    try {
      // sleep a backoff <= pauseTime amount
      long sleep = getPauseTime(tries++);
      sleep = sleep > maxPauseTime ? maxPauseTime : sleep;
      LOG.debug("(#" + tries + ") Sleeping: " + sleep +
        "ms while waiting for procedure completion.");
      Thread.sleep(sleep);

    } catch (InterruptedException e) {
      LOG.debug("Interrupted while waiting for procedure " + signature + " to complete");
      Thread.currentThread().interrupt();
    }
    LOG.debug("Getting current status of procedure from master...");
    done = isProcedureFinished(signature, instance, props);
  }
  if (!done) {
    throw new IOException("Procedure '" + signature + " : " + instance
        + "' wasn't completed in expectedTime:" + max + " ms");
  }
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:60,代码来源:HBaseAdmin.java


示例19: execProcedure

import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair; //导入依赖的package包/类
/**
 * Execute a distributed procedure on a cluster.
 *
 * @param signature A distributed procedure is uniquely identified
 * by its signature (default the root ZK node name of the procedure).
 * @param instance The instance name of the procedure. For some procedures, this parameter is
 * optional.
 * @param props Property/Value pairs of properties passing to the procedure
 */
public void execProcedure(String signature, String instance,
    Map<String, String> props) throws IOException {
  ProcedureDescription.Builder builder = ProcedureDescription.newBuilder();
  builder.setSignature(signature).setInstance(instance);
  for (Entry<String, String> entry : props.entrySet()) {
    NameStringPair pair = NameStringPair.newBuilder().setName(entry.getKey())
        .setValue(entry.getValue()).build();
    builder.addConfiguration(pair);
  }

  final ExecProcedureRequest request = ExecProcedureRequest.newBuilder()
      .setProcedure(builder.build()).build();
  // run the procedure on the master
  ExecProcedureResponse response = executeCallable(new MasterCallable<ExecProcedureResponse>(
      getConnection()) {
    @Override
    public ExecProcedureResponse call(int callTimeout) throws ServiceException {
      return master.execProcedure(null, request);
    }
  });

  long start = EnvironmentEdgeManager.currentTimeMillis();
  long max = response.getExpectedTimeout();
  long maxPauseTime = max / this.numRetries;
  int tries = 0;
  LOG.debug("Waiting a max of " + max + " ms for procedure '" +
      signature + " : " + instance + "'' to complete. (max " + maxPauseTime + " ms per retry)");
  boolean done = false;
  while (tries == 0
      || ((EnvironmentEdgeManager.currentTimeMillis() - start) < max && !done)) {
    try {
      // sleep a backoff <= pauseTime amount
      long sleep = getPauseTime(tries++);
      sleep = sleep > maxPauseTime ? maxPauseTime : sleep;
      LOG.debug("(#" + tries + ") Sleeping: " + sleep +
        "ms while waiting for procedure completion.");
      Thread.sleep(sleep);
    } catch (InterruptedException e) {
      throw (InterruptedIOException)new InterruptedIOException("Interrupted").initCause(e);
    }
    LOG.debug("Getting current status of procedure from master...");
    done = isProcedureFinished(signature, instance, props);
  }
  if (!done) {
    throw new IOException("Procedure '" + signature + " : " + instance
        + "' wasn't completed in expectedTime:" + max + " ms");
  }
}
 
开发者ID:shenli-uiuc,项目名称:PyroDB,代码行数:58,代码来源:HBaseAdmin.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java Request类代码示例发布时间:2022-05-22
下一篇:
Java RunDirectionEnum类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap