當前位置: 首頁>>代碼示例>>Java>>正文


Java HBaseTestingUtility.waitFor方法代碼示例

本文整理匯總了Java中org.apache.hadoop.hbase.HBaseTestingUtility.waitFor方法的典型用法代碼示例。如果您正苦於以下問題:Java HBaseTestingUtility.waitFor方法的具體用法?Java HBaseTestingUtility.waitFor怎麽用?Java HBaseTestingUtility.waitFor使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.hadoop.hbase.HBaseTestingUtility的用法示例。


在下文中一共展示了HBaseTestingUtility.waitFor方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: updateACLs

import org.apache.hadoop.hbase.HBaseTestingUtility; //導入方法依賴的package包/類
@SuppressWarnings("rawtypes")
private static void updateACLs(final HBaseTestingUtility util, Callable c) throws Exception {
  // Get the current mtimes for all access controllers
  final Map<AccessController,Long> oldMTimes = getAuthManagerMTimes(util.getHBaseCluster());

  // Run the update action
  c.call();

  // Wait until mtimes for all access controllers have incremented
  util.waitFor(WAIT_TIME, 100, new Predicate<IOException>() {
    @Override
    public boolean evaluate() throws IOException {
      Map<AccessController,Long> mtimes = getAuthManagerMTimes(util.getHBaseCluster());
      for (Map.Entry<AccessController,Long> e: mtimes.entrySet()) {
        if (!oldMTimes.containsKey(e.getKey())) {
          LOG.error("Snapshot of AccessController state does not include instance on region " +
            e.getKey().getRegion().getRegionInfo().getRegionNameAsString());
          // Error out the predicate, we will try again
          return false;
        }
        long old = oldMTimes.get(e.getKey());
        long now = e.getValue();
        if (now <= old) {
          LOG.info("AccessController on region " +
            e.getKey().getRegion().getRegionInfo().getRegionNameAsString() +
            " has not updated: mtime=" + now);
          return false;
        }
      }
      return true;
    }
  });
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:34,代碼來源:SecureTestUtil.java

示例2: waitForTableToBeOnline

import org.apache.hadoop.hbase.HBaseTestingUtility; //導入方法依賴的package包/類
public static void waitForTableToBeOnline(final HBaseTestingUtility util,
                                          final TableName tableName)
    throws IOException, InterruptedException {
  HRegionServer rs = util.getRSForFirstRegionInTable(tableName);
  List<Region> onlineRegions = rs.getOnlineRegions(tableName);
  for (Region region : onlineRegions) {
    region.waitForFlushesAndCompactions();
  }
  // Wait up to 60 seconds for a table to be available.
  util.waitFor(60000, util.predicateTableAvailable(tableName));
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:12,代碼來源:SnapshotTestingUtils.java


注:本文中的org.apache.hadoop.hbase.HBaseTestingUtility.waitFor方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。