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


Java ModifyRegionUtils.createRegionInfos方法代码示例

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


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

示例1: createSystemTable

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
@Override
public long createSystemTable(final TableDescriptor tableDescriptor) throws IOException {
  if (isStopped()) {
    throw new MasterNotRunningException();
  }

  TableName tableName = tableDescriptor.getTableName();
  if (!(tableName.isSystemTable())) {
    throw new IllegalArgumentException(
      "Only system table creation can use this createSystemTable API");
  }

  RegionInfo[] newRegions = ModifyRegionUtils.createRegionInfos(tableDescriptor, null);

  LOG.info(getClientIdAuditPrefix() + " create " + tableDescriptor);

  // This special create table is called locally to master.  Therefore, no RPC means no need
  // to use nonce to detect duplicated RPC call.
  long procId = this.procedureExecutor.submitProcedure(
    new CreateTableProcedure(procedureExecutor.getEnvironment(), tableDescriptor, newRegions));

  return procId;
}
 
开发者ID:apache,项目名称:hbase,代码行数:24,代码来源:HMaster.java

示例2: testCreateWithFailoverAtStep

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
private void testCreateWithFailoverAtStep(final int step) throws Exception {
  final TableName tableName = TableName.valueOf("testCreateWithFailoverAtStep" + step);

  // create the table
  ProcedureExecutor<MasterProcedureEnv> procExec = getMasterProcedureExecutor();
  ProcedureTestingUtility.setKillBeforeStoreUpdate(procExec, true);
  ProcedureTestingUtility.setToggleKillBeforeStoreUpdate(procExec, true);

  // Start the Create procedure && kill the executor
  byte[][] splitKeys = null;
  TableDescriptor htd = MasterProcedureTestingUtility.createHTD(tableName, "f1", "f2");
  RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, splitKeys);
  long procId = procExec.submitProcedure(
      new CreateTableProcedure(procExec.getEnvironment(), htd, regions));
  testRecoveryAndDoubleExecution(UTIL, procId, step);

  MasterProcedureTestingUtility.validateTableCreation(
      UTIL.getHBaseCluster().getMaster(), tableName, regions, "f1", "f2");
}
 
开发者ID:apache,项目名称:hbase,代码行数:20,代码来源:TestMasterFailoverWithProcedures.java

示例3: testCreateWithoutColumnFamily

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
@Test
public void testCreateWithoutColumnFamily() throws Exception {
  final ProcedureExecutor<MasterProcedureEnv> procExec = getMasterProcedureExecutor();
  final TableName tableName = TableName.valueOf(name.getMethodName());
  // create table with 0 families will fail
  final TableDescriptorBuilder builder = TableDescriptorBuilder.newBuilder(MasterProcedureTestingUtility.createHTD(tableName));

  // disable sanity check
  builder.setValue("hbase.table.sanity.checks", Boolean.FALSE.toString());
  TableDescriptor htd = builder.build();
  final RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, null);

  long procId =
      ProcedureTestingUtility.submitAndWait(procExec,
          new CreateTableProcedure(procExec.getEnvironment(), htd, regions));
  final Procedure<?> result = procExec.getResult(procId);
  assertEquals(true, result.isFailed());
  Throwable cause = ProcedureTestingUtility.getExceptionCause(result);
  assertTrue("expected DoNotRetryIOException, got " + cause,
      cause instanceof DoNotRetryIOException);
}
 
开发者ID:apache,项目名称:hbase,代码行数:22,代码来源:TestCreateTableProcedure.java

示例4: testCreateExisting

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
@Test(expected=TableExistsException.class)
public void testCreateExisting() throws Exception {
  final TableName tableName = TableName.valueOf(name.getMethodName());
  final ProcedureExecutor<MasterProcedureEnv> procExec = getMasterProcedureExecutor();
  final TableDescriptor htd = MasterProcedureTestingUtility.createHTD(tableName, "f");
  final RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, null);

  // create the table
  long procId1 = procExec.submitProcedure(
    new CreateTableProcedure(procExec.getEnvironment(), htd, regions));

  // create another with the same name
  ProcedurePrepareLatch latch2 = new ProcedurePrepareLatch.CompatibilityLatch();
  long procId2 = procExec.submitProcedure(
    new CreateTableProcedure(procExec.getEnvironment(), htd, regions, latch2));

  ProcedureTestingUtility.waitProcedure(procExec, procId1);
  ProcedureTestingUtility.assertProcNotFailed(procExec.getResult(procId1));

  ProcedureTestingUtility.waitProcedure(procExec, procId2);
  latch2.await();
}
 
开发者ID:apache,项目名称:hbase,代码行数:23,代码来源:TestCreateTableProcedure.java

示例5: testRecoveryAndDoubleExecution

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
@Test
public void testRecoveryAndDoubleExecution() throws Exception {
  final TableName tableName = TableName.valueOf(name.getMethodName());

  // create the table
  final ProcedureExecutor<MasterProcedureEnv> procExec = getMasterProcedureExecutor();
  ProcedureTestingUtility.setKillAndToggleBeforeStoreUpdate(procExec, true);

  // Start the Create procedure && kill the executor
  byte[][] splitKeys = null;
  TableDescriptor htd = MasterProcedureTestingUtility.createHTD(tableName, "f1", "f2");
  RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, splitKeys);
  long procId = procExec.submitProcedure(
    new CreateTableProcedure(procExec.getEnvironment(), htd, regions));

  // Restart the executor and execute the step twice
  MasterProcedureTestingUtility.testRecoveryAndDoubleExecution(procExec, procId);
  MasterProcedureTestingUtility.validateTableCreation(getMaster(), tableName, regions, F1, F2);
}
 
开发者ID:apache,项目名称:hbase,代码行数:20,代码来源:TestCreateTableProcedure.java

示例6: testRollbackAndDoubleExecution

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
private void testRollbackAndDoubleExecution(TableDescriptorBuilder builder) throws Exception {
  // create the table
  final ProcedureExecutor<MasterProcedureEnv> procExec = getMasterProcedureExecutor();
  ProcedureTestingUtility.setKillAndToggleBeforeStoreUpdate(procExec, true);

  // Start the Create procedure && kill the executor
  final byte[][] splitKeys = new byte[][] {
    Bytes.toBytes("a"), Bytes.toBytes("b"), Bytes.toBytes("c")
  };
  builder.setRegionReplication(3);
  TableDescriptor htd = builder.build();
  RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, splitKeys);
  long procId = procExec.submitProcedure(
    new CreateTableProcedure(procExec.getEnvironment(), htd, regions));

  int numberOfSteps = 0; // failing at pre operation
  MasterProcedureTestingUtility.testRollbackAndDoubleExecution(procExec, procId, numberOfSteps);

  TableName tableName = htd.getTableName();
  MasterProcedureTestingUtility.validateTableDeletion(getMaster(), tableName);

  // are we able to create the table after a rollback?
  resetProcExecutorTestingKillFlag();
  testSimpleCreate(tableName, splitKeys);
}
 
开发者ID:apache,项目名称:hbase,代码行数:26,代码来源:TestCreateTableProcedure.java

示例7: createTable

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
@Override
public long createTable(
    final TableDescriptor tableDescriptor,
    final byte [][] splitKeys,
    final long nonceGroup,
    final long nonce) throws IOException {
  checkInitialized();

  String namespace = tableDescriptor.getTableName().getNamespaceAsString();
  this.clusterSchemaService.getNamespace(namespace);

  RegionInfo[] newRegions = ModifyRegionUtils.createRegionInfos(tableDescriptor, splitKeys);
  sanityCheckTableDescriptor(tableDescriptor);

  return MasterProcedureUtil.submitProcedure(
      new MasterProcedureUtil.NonceProcedureRunnable(this, nonceGroup, nonce) {
    @Override
    protected void run() throws IOException {
      getMaster().getMasterCoprocessorHost().preCreateTable(tableDescriptor, newRegions);

      LOG.info(getClientIdAuditPrefix() + " create " + tableDescriptor);

      // TODO: We can handle/merge duplicate requests, and differentiate the case of
      //       TableExistsException by saying if the schema is the same or not.
      ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch();
      submitProcedure(new CreateTableProcedure(
          procedureExecutor.getEnvironment(), tableDescriptor, newRegions, latch));
      latch.await();

      getMaster().getMasterCoprocessorHost().postCreateTable(tableDescriptor, newRegions);
    }

    @Override
    protected String getDescription() {
      return "CreateTableProcedure";
    }
  });
}
 
开发者ID:apache,项目名称:hbase,代码行数:39,代码来源:HMaster.java

示例8: createTable

import org.apache.hadoop.hbase.util.ModifyRegionUtils; //导入方法依赖的package包/类
public static RegionInfo[] createTable(final ProcedureExecutor<MasterProcedureEnv> procExec,
    final TableName tableName, final byte[][] splitKeys, String... family) throws IOException {
  TableDescriptor htd = createHTD(tableName, family);
  RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, splitKeys);
  long procId = ProcedureTestingUtility.submitAndWait(procExec,
    new CreateTableProcedure(procExec.getEnvironment(), htd, regions));
  ProcedureTestingUtility.assertProcNotFailed(procExec.getResult(procId));
  return regions;
}
 
开发者ID:apache,项目名称:hbase,代码行数:10,代码来源:MasterProcedureTestingUtility.java


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