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


Java HRegionInfo.FIRST_META_REGIONINFO屬性代碼示例

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


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

示例1: bootstrap

private static void bootstrap(final Path rd, final Configuration c)
throws IOException {
  LOG.info("BOOTSTRAP: creating hbase:meta region");
  try {
    // Bootstrapping, make sure blockcache is off.  Else, one will be
    // created here in bootstrap and it'll need to be cleaned up.  Better to
    // not make it in first place.  Turn off block caching for bootstrap.
    // Enable after.
    HRegionInfo metaHRI = new HRegionInfo(HRegionInfo.FIRST_META_REGIONINFO);
    HTableDescriptor metaDescriptor = new FSTableDescriptors(c).get(TableName.META_TABLE_NAME);
    setInfoFamilyCachingForMeta(metaDescriptor, false);
    HRegion meta = HRegion.createHRegion(metaHRI, rd, c, metaDescriptor, null, true, true);
    setInfoFamilyCachingForMeta(metaDescriptor, true);
    HRegion.closeHRegion(meta);
  } catch (IOException e) {
    e = RemoteExceptionHandler.checkIOException(e);
    LOG.error("bootstrap", e);
    throw e;
  }
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:20,代碼來源:MasterFileSystem.java

示例2: getMockedConnection

@SuppressWarnings("deprecation")
private HConnection getMockedConnection(final Configuration conf)
throws IOException, ServiceException {
  HConnection c = Mockito.mock(HConnection.class);
  Mockito.when(c.getConfiguration()).thenReturn(conf);
  Mockito.doNothing().when(c).close();
  // Make it so we return a particular location when asked.
  final HRegionLocation loc = new HRegionLocation(HRegionInfo.FIRST_META_REGIONINFO,
      ServerName.valueOf("example.org", 1234, 0));
  Mockito.when(c.getRegionLocation((TableName) Mockito.any(),
      (byte[]) Mockito.any(), Mockito.anyBoolean())).
    thenReturn(loc);
  Mockito.when(c.locateRegion((TableName) Mockito.any(), (byte[]) Mockito.any())).
    thenReturn(loc);
  ClientProtos.ClientService.BlockingInterface hri =
    Mockito.mock(ClientProtos.ClientService.BlockingInterface.class);
  Mockito.when(hri.bulkLoadHFile((RpcController)Mockito.any(), (BulkLoadHFileRequest)Mockito.any())).
    thenThrow(new ServiceException(new IOException("injecting bulk load error")));
  Mockito.when(c.getClient(Mockito.any(ServerName.class))).
    thenReturn(hri);
  return c;
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:22,代碼來源:TestLoadIncrementalHFilesSplitRecovery.java

示例3: testReadAndWriteHRegionInfoFile

@Test
public void testReadAndWriteHRegionInfoFile() throws IOException, InterruptedException {
  HBaseTestingUtility htu = new HBaseTestingUtility();
  HRegionInfo hri = HRegionInfo.FIRST_META_REGIONINFO;
  Path basedir = htu.getDataTestDir();
  FSTableDescriptors fsTableDescriptors = new FSTableDescriptors(htu.getConfiguration());
  // Create a region.  That'll write the .regioninfo file.
  HRegion r = HRegion.createHRegion(hri, basedir, htu.getConfiguration(),
    fsTableDescriptors.get(TableName.META_TABLE_NAME));
  // Get modtime on the file.
  long modtime = getModTime(r);
  HRegion.closeHRegion(r);
  Thread.sleep(1001);
  r = HRegion.openHRegion(basedir, hri, fsTableDescriptors.get(TableName.META_TABLE_NAME),
    null, htu.getConfiguration());
  // Ensure the file is not written for a second time.
  long modtime2 = getModTime(r);
  assertEquals(modtime, modtime2);
  // Now load the file.
  HRegionInfo deserializedHri = HRegionFileSystem.loadRegionInfoFileContent(
      r.getRegionFileSystem().getFileSystem(), r.getRegionFileSystem().getRegionDir());
  assertTrue(hri.equals(deserializedHri));
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:23,代碼來源:TestHRegionInfo.java

示例4: createNewMeta

/**
 * This borrows code from MasterFileSystem.bootstrap()
 *
 * @return an open hbase:meta HRegion
 */
private HRegion createNewMeta() throws IOException {
    Path rootdir = FSUtils.getRootDir(getConf());
  Configuration c = getConf();
  HRegionInfo metaHRI = new HRegionInfo(HRegionInfo.FIRST_META_REGIONINFO);
  HTableDescriptor metaDescriptor = new FSTableDescriptors(c).get(TableName.META_TABLE_NAME);
  MasterFileSystem.setInfoFamilyCachingForMeta(metaDescriptor, false);
  HRegion meta = HRegion.createHRegion(metaHRI, rootdir, c, metaDescriptor);
  MasterFileSystem.setInfoFamilyCachingForMeta(metaDescriptor, true);
  return meta;
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:15,代碼來源:HBaseFsck.java

示例5: testMoveRegionWhenNotInitialized

@Test
public void testMoveRegionWhenNotInitialized() {
  MiniHBaseCluster cluster = TEST_UTIL.getHBaseCluster();
  HMaster m = cluster.getMaster();
  try {
    m.setInitialized(false); // fake it, set back later
    HRegionInfo meta = HRegionInfo.FIRST_META_REGIONINFO;
    m.move(meta.getEncodedNameAsBytes(), null);
    fail("Region should not be moved since master is not initialized");
  } catch (IOException ioe) {
    assertTrue(ioe instanceof PleaseHoldException);
  } finally {
    m.setInitialized(true);
  }
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:15,代碼來源:TestMaster.java

示例6: testPb

@Test
public void testPb() throws DeserializationException {
  HRegionInfo hri = HRegionInfo.FIRST_META_REGIONINFO;
  byte [] bytes = hri.toByteArray();
  HRegionInfo pbhri = HRegionInfo.parseFrom(bytes);
  assertTrue(hri.equals(pbhri));
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:7,代碼來源:TestHRegionInfo.java

示例7: processMeta

/**
 * @param env
 * @return False if we fail to assign and split logs on meta ('process').
 * @throws IOException
 * @throws InterruptedException
 */
private boolean processMeta(final MasterProcedureEnv env)
throws IOException {
  if (LOG.isDebugEnabled()) LOG.debug("Processing hbase:meta that was on " + this.serverName);
  MasterServices services = env.getMasterServices();
  MasterFileSystem mfs = services.getMasterFileSystem();
  AssignmentManager am = services.getAssignmentManager();
  HRegionInfo metaHRI = HRegionInfo.FIRST_META_REGIONINFO;
  if (this.shouldSplitWal) {
    if (this.distributedLogReplay) {
      prepareLogReplay(env, META_REGION_SET);
    } else {
      // TODO: Matteo. We BLOCK here but most important thing to be doing at this moment.
      mfs.splitMetaLog(serverName);
      am.getRegionStates().logSplit(metaHRI);
    }
  }

  // Assign meta if still carrying it. Check again: region may be assigned because of RIT timeout
  boolean processed = true;
  boolean shouldAssignMeta = false;
  AssignmentManager.ServerHostRegion rsCarryingMetaRegion = am.isCarryingMeta(serverName);
    switch (rsCarryingMetaRegion) {
      case HOSTING_REGION:
        LOG.info("Server " + serverName + " was carrying META. Trying to assign.");
        am.regionOffline(HRegionInfo.FIRST_META_REGIONINFO);
        shouldAssignMeta = true;
        break;
      case UNKNOWN:
        if (!services.getMetaTableLocator().isLocationAvailable(services.getZooKeeper())) {
          // the meta location as per master is null. This could happen in case when meta
          // assignment in previous run failed, while meta znode has been updated to null.
          // We should try to assign the meta again.
          shouldAssignMeta = true;
          break;
        }
        // fall through
      case NOT_HOSTING_REGION:
        LOG.info("META has been assigned to otherwhere, skip assigning.");
        break;
      default:
        throw new IOException("Unsupported action in MetaServerShutdownHandler");
  }
  if (shouldAssignMeta) {
    // TODO: May block here if hard time figuring state of meta.
    verifyAndAssignMetaWithRetries(env);
    if (this.shouldSplitWal && distributedLogReplay) {
      int timeout = env.getMasterConfiguration().getInt(KEY_WAIT_ON_RIT, DEFAULT_WAIT_ON_RIT);
      if (!waitOnRegionToClearRegionsInTransition(am, metaHRI, timeout)) {
        processed = false;
      } else {
        // TODO: Matteo. We BLOCK here but most important thing to be doing at this moment.
        mfs.splitMetaLog(serverName);
      }
    }
  }
  return processed;
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:63,代碼來源:ServerCrashProcedure.java

示例8: getMetaRegionLocation

@Override
public RegionLocations getMetaRegionLocation() throws IOException {
  return new RegionLocations(
    new HRegionLocation(HRegionInfo.FIRST_META_REGIONINFO, META_HOST));
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:5,代碼來源:TestClientNoCluster.java


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