类org.apache.hadoop.hbase.TableName源码实例Demo

下面列出了怎么用org.apache.hadoop.hbase.TableName的API类实例代码及写法,或者点击链接到github查看源代码。

@Test(expected = IllegalArgumentException.class)
public void testScanWithInvalidFilter() throws InitializationException, IOException {
    final String tableName = "nifi";
    final TestRunner runner = TestRunners.newTestRunner(TestProcessor.class);

    // Mock an HBase Table so we can verify the put operations later
    final Table table = Mockito.mock(Table.class);
    when(table.getName()).thenReturn(TableName.valueOf(tableName));

    // create the controller service and link it to the test processor
    final MockHBaseClientService service = configureHBaseClientService(runner, table);
    runner.assertValid(service);

    // perform a scan and verify the four rows were returned
    final CollectingResultHandler handler = new CollectingResultHandler();
    final HBaseClientService hBaseClientService = runner.getProcessContext().getProperty(TestProcessor.HBASE_CLIENT_SERVICE)
            .asControllerService(HBaseClientService.class);

    // this should throw IllegalArgumentException
    final String filter = "this is not a filter";
    hBaseClientService.scan(tableName, new ArrayList<Column>(), filter, System.currentTimeMillis(), handler);
}
 
源代码2 项目: hbase   文件: TestRegionSplitter.java
/**
 * Test creating a pre-split table using the UniformSplit algorithm.
 */
@Test
public void testCreatePresplitTableUniform() throws Exception {
  List<byte[]> expectedBounds = new ArrayList<>(17);
  expectedBounds.add(ArrayUtils.EMPTY_BYTE_ARRAY);
  expectedBounds.add(new byte[] {      0x10, 0, 0, 0, 0, 0, 0, 0});
  expectedBounds.add(new byte[] {      0x20, 0, 0, 0, 0, 0, 0, 0});
  expectedBounds.add(new byte[] {      0x30, 0, 0, 0, 0, 0, 0, 0});
  expectedBounds.add(new byte[] {      0x40, 0, 0, 0, 0, 0, 0, 0});
  expectedBounds.add(new byte[] { 0x50, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] { 0x60, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] { 0x70, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] { (byte) 0x80, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] { (byte) 0x90, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] {(byte)0xa0, 0, 0, 0, 0, 0, 0, 0});
  expectedBounds.add(new byte[] { (byte) 0xb0, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] { (byte) 0xc0, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] { (byte) 0xd0, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(new byte[] {(byte)0xe0, 0, 0, 0, 0, 0, 0, 0});
  expectedBounds.add(new byte[] { (byte) 0xf0, 0, 0, 0, 0, 0, 0, 0 });
  expectedBounds.add(ArrayUtils.EMPTY_BYTE_ARRAY);

  // Do table creation/pre-splitting and verification of region boundaries
  preSplitTableAndVerify(expectedBounds, UniformSplit.class.getSimpleName(),
      TableName.valueOf(name.getMethodName()));
}
 
源代码3 项目: Flink-CEPplus   文件: HBaseRowInputFormat.java
private void connectToTable() {

		if (this.conf == null) {
			this.conf = HBaseConfiguration.create();
		}

		try {
			Connection conn = ConnectionFactory.createConnection(conf);
			super.table = (HTable) conn.getTable(TableName.valueOf(tableName));
		} catch (TableNotFoundException tnfe) {
			LOG.error("The table " + tableName + " not found ", tnfe);
			throw new RuntimeException("HBase table '" + tableName + "' not found.", tnfe);
		} catch (IOException ioe) {
			LOG.error("Exception while creating connection to HBase.", ioe);
			throw new RuntimeException("Cannot create connection to HBase.", ioe);
		}
	}
 
private void createTable(Admin admin, TableName tableName, boolean setVersion,
    boolean acl) throws IOException {
  if (!admin.tableExists(tableName)) {
    TableDescriptorBuilder.ModifyableTableDescriptor tableDescriptor =
      new TableDescriptorBuilder.ModifyableTableDescriptor(tableName);
    ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor familyDescriptor =
      new ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor(FAMILY_NAME);
    if (setVersion) {
      familyDescriptor.setMaxVersions(DEFAULT_TABLES_COUNT);
    }
    tableDescriptor.setColumnFamily(familyDescriptor);
    admin.createTable(tableDescriptor);
    if (acl) {
      LOG.info("Granting permissions for user " + USER.getShortName());
      Permission.Action[] actions = { Permission.Action.READ };
      try {
        AccessControlClient.grant(ConnectionFactory.createConnection(getConf()), tableName,
            USER.getShortName(), null, null, actions);
      } catch (Throwable e) {
        LOG.error(HBaseMarkers.FATAL, "Error in granting permission for the user " +
            USER.getShortName(), e);
        throw new IOException(e);
      }
    }
  }
}
 
源代码5 项目: hbase   文件: HMaster.java
/**
 * Check hbase:namespace table is assigned. If not, startup will hang looking for the ns table
 * <p/>
 * This is for rolling upgrading, later we will migrate the data in ns table to the ns family of
 * meta table. And if this is a new cluster, this method will return immediately as there will be
 * no namespace table/region.
 * @return True if namespace table is up/online.
 */
private boolean waitForNamespaceOnline() throws IOException {
  TableState nsTableState =
    MetaTableAccessor.getTableState(getConnection(), TableName.NAMESPACE_TABLE_NAME);
  if (nsTableState == null || nsTableState.isDisabled()) {
    // this means we have already migrated the data and disabled or deleted the namespace table,
    // or this is a new deploy which does not have a namespace table from the beginning.
    return true;
  }
  List<RegionInfo> ris =
    this.assignmentManager.getRegionStates().getRegionsOfTable(TableName.NAMESPACE_TABLE_NAME);
  if (ris.isEmpty()) {
    // maybe this will not happen any more, but anyway, no harm to add a check here...
    return true;
  }
  // Else there are namespace regions up in meta. Ensure they are assigned before we go on.
  for (RegionInfo ri : ris) {
    if (!isRegionOnline(ri)) {
      return false;
    }
  }
  return true;
}
 
源代码6 项目: phoenix-omid   文件: HBaseSyncPostCommitter.java
private void addShadowCell(HBaseCellId cell, HBaseTransaction tx, SettableFuture<Void> updateSCFuture,
                           Map<TableName,List<Mutation>> mutations) throws IOException, InterruptedException {
    Put put = new Put(cell.getRow());
    put.addColumn(cell.getFamily(),
            CellUtils.addShadowCellSuffixPrefix(cell.getQualifier(), 0, cell.getQualifier().length),
            cell.getTimestamp(),
            Bytes.toBytes(tx.getCommitTimestamp()));

    TableName table = cell.getTable().getHTable().getName();
    List<Mutation> tableMutations = mutations.get(table);
    if (tableMutations == null) {
        ArrayList<Mutation> newList = new ArrayList<>();
        newList.add(put);
        mutations.put(table, newList);
    } else {
        tableMutations.add(put);
        if (tableMutations.size() > MAX_BATCH_SIZE) {
            flushMutations(table, tableMutations);
            mutations.remove(table);
        }
    }
}
 
源代码7 项目: hbase   文件: TestScannersFromClientSide.java
@Test
public void testReadExpiredDataForRawScan() throws IOException {
  TableName tableName = name.getTableName();
  long ts = System.currentTimeMillis() - 10000;
  byte[] value = Bytes.toBytes("expired");
  try (Table table = TEST_UTIL.createTable(tableName, FAMILY)) {
    table.put(new Put(ROW).addColumn(FAMILY, QUALIFIER, ts, value));
    assertArrayEquals(value, table.get(new Get(ROW)).getValue(FAMILY, QUALIFIER));
    TEST_UTIL.getAdmin().modifyColumnFamily(tableName,
      new ColumnFamilyDescriptorBuilder.ModifyableColumnFamilyDescriptor(FAMILY)
        .setTimeToLive(5));
    try (ResultScanner scanner = table.getScanner(FAMILY)) {
      assertNull(scanner.next());
    }
    try (ResultScanner scanner = table.getScanner(new Scan().setRaw(true))) {
      assertArrayEquals(value, scanner.next().getValue(FAMILY, QUALIFIER));
      assertNull(scanner.next());
    }
  }
}
 
源代码8 项目: kylin   文件: StorageCleanJobHbaseUtilTest.java
@Test
public void test() throws IOException {
    HBaseAdmin hBaseAdmin = mock(HBaseAdmin.class);
    HTableDescriptor[] hds = new HTableDescriptor[2];
    HTableDescriptor d1 = mock(HTableDescriptor.class);
    HTableDescriptor d2 = mock(HTableDescriptor.class);
    hds[0] = d1;
    hds[1] = d2;
    when(d1.getValue("KYLIN_HOST")).thenReturn("../examples/test_metadata/");
    when(d2.getValue("KYLIN_HOST")).thenReturn("../examples/test_metadata/");
    when(d1.getTableName()).thenReturn(TableName.valueOf("KYLIN_J9TE08D9IA"));
    String toBeDel = "to-be-del";
    when(d2.getTableName()).thenReturn(TableName.valueOf(toBeDel));
    when(hBaseAdmin.listTables("KYLIN_.*")).thenReturn(hds);

    when(hBaseAdmin.tableExists(toBeDel)).thenReturn(true);
    when(hBaseAdmin.isTableEnabled(toBeDel)).thenReturn(false);
    StorageCleanJobHbaseUtil.cleanUnusedHBaseTables(hBaseAdmin, true, 100000, 1);

    ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class);
    verify(hBaseAdmin).deleteTable(captor.capture());
    assertEquals(Lists.newArrayList(toBeDel), captor.getAllValues());
}
 
源代码9 项目: hbase   文件: SchemaResource.java
private Response update(final TableSchemaModel model, final boolean replace,
    final UriInfo uriInfo) {
  try {
    TableName name = TableName.valueOf(tableResource.getName());
    Admin admin = servlet.getAdmin();
    if (replace || !admin.tableExists(name)) {
      return replace(name, model, uriInfo, admin);
    } else {
      return update(name, model, uriInfo, admin);
    }
  } catch (Exception e) {
    servlet.getMetrics().incrementFailedPutRequests(1);
    // Avoid re-unwrapping the exception
    if (e instanceof WebApplicationException) {
      throw (WebApplicationException) e;
    }
    return processException(e);
  }
}
 
源代码10 项目: hbase   文件: TestRegionReplicasWithModifyTable.java
private static void enableReplicationByModification(final TableName tableName,
    boolean withReplica, int initialReplicaCount, int enableReplicaCount, int splitCount)
    throws IOException, InterruptedException {
  HTableDescriptor htd = new HTableDescriptor(tableName);
  if (withReplica) {
    htd.setRegionReplication(initialReplicaCount);
  }
  if (splitCount > 0) {
    byte[][] splits = getSplits(splitCount);
    table = HTU.createTable(htd, new byte[][] { f }, splits,
      new Configuration(HTU.getConfiguration()));

  } else {
    table = HTU.createTable(htd, new byte[][] { f }, (byte[][]) null,
      new Configuration(HTU.getConfiguration()));
  }
  HBaseTestingUtility.setReplicas(HTU.getAdmin(), table.getName(), enableReplicaCount);
}
 
源代码11 项目: hbase   文件: TestTableInputFormat.java
@Override
public void configure(JobConf job) {
  try {
    Connection connection = ConnectionFactory.createConnection(job);
    Table exampleTable = connection.getTable(TableName.valueOf(("exampleDeprecatedTable")));
    // mandatory
    initializeTable(connection, exampleTable.getName());
    byte[][] inputColumns = new byte [][] { Bytes.toBytes("columnA"),
      Bytes.toBytes("columnB") };
    // optional
    Scan scan = new Scan();
    for (byte[] family : inputColumns) {
      scan.addFamily(family);
    }
    Filter exampleFilter =
      new RowFilter(CompareOperator.EQUAL, new RegexStringComparator("aa.*"));
    scan.setFilter(exampleFilter);
    setScan(scan);
  } catch (IOException exception) {
    throw new RuntimeException("Failed to configure for job.", exception);
  }
}
 
源代码12 项目: phoenix-tephra   文件: DataJanitorStateTest.java
@Before
public void beforeTest() throws Exception {
  pruneStateTable = TableName.valueOf(conf.get(TxConstants.TransactionPruning.PRUNE_STATE_TABLE,
                                               TxConstants.TransactionPruning.DEFAULT_PRUNE_STATE_TABLE));
  HTable table = createTable(pruneStateTable.getName(), new byte[][]{DataJanitorState.FAMILY}, false,
                             // Prune state table is a non-transactional table, hence no transaction co-processor
                             Collections.<String>emptyList());
  table.close();
  connection = HConnectionManager.createConnection(conf);

  dataJanitorState =
    new DataJanitorState(new DataJanitorState.TableSupplier() {
      @Override
      public HTableInterface get() throws IOException {
        return connection.getTable(pruneStateTable);
      }
    });

}
 
源代码13 项目: pinpoint   文件: ParallelResultScanner.java
public ParallelResultScanner(TableName tableName, HbaseAccessor hbaseAccessor, ExecutorService executor, Scan originalScan, AbstractRowKeyDistributor keyDistributor, int numParallelThreads) throws IOException {
    if (hbaseAccessor == null) {
        throw new NullPointerException("hbaseAccessor");
    }
    if (executor == null) {
        throw new NullPointerException("executor");
    }
    if (originalScan == null) {
        throw new NullPointerException("originalScan");
    }
    this.keyDistributor = Objects.requireNonNull(keyDistributor, "keyDistributor");

    final ScanTaskConfig scanTaskConfig = new ScanTaskConfig(tableName, hbaseAccessor, keyDistributor, originalScan.getCaching());
    final Scan[] splitScans = splitScans(originalScan);

    this.scanTasks = createScanTasks(scanTaskConfig, splitScans, numParallelThreads);
    this.nextResults = new Result[scanTasks.size()];
    for (ScanTask scanTask : scanTasks) {
        executor.execute(scanTask);
    }
}
 
源代码14 项目: eagle   文件: HBaseEntitySchemaManager.java
private void createTable(EntityDefinition entityDefinition) throws IOException {
    String tableName = entityDefinition.getTable();
    if (admin.tableExists(tableName)) {
        LOG.info("Table {} already exists", tableName);
    } else {
        HTableDescriptor tableDescriptor = new HTableDescriptor(TableName.valueOf(tableName));

        // Adding column families to table descriptor
        HColumnDescriptor columnDescriptor = new HColumnDescriptor(entityDefinition.getColumnFamily());
        columnDescriptor.setBloomFilterType(BloomType.ROW);
        //columnDescriptor.setCompressionType(Compression.Algorithm.SNAPPY);
        columnDescriptor.setMaxVersions(DEFAULT_MAX_VERSIONS);

        tableDescriptor.addFamily(columnDescriptor);

        // Execute the table through admin
        admin.createTable(tableDescriptor);
        LOG.info("Successfully create Table {}", tableName);
    }
}
 
源代码15 项目: bigdata-tutorial   文件: HBaseSimpleDemo.java
public Boolean createTable(String tableName, String familyName) throws Exception {
	HBaseAdmin admin = new HBaseAdmin(hconn);
	if (admin.tableExists(tableName)) {
		LOGGER.warn(">>>> Table {} exists!", tableName);
		admin.close();
		return false;
	}
	HTableDescriptor tableDesc = new HTableDescriptor(TableName.valueOf(tableName));
	tableDesc.addFamily(new HColumnDescriptor(familyName));
	admin.createTable(tableDesc);
	LOGGER.info(">>>> Table {} create success!", tableName);

	admin.close();
	return true;

}
 
源代码16 项目: hbase   文件: TestReplicaWithCluster.java
@Test
public void testReplicaGetWithPrimaryDown() throws IOException {
  // Create table then get the single region for our new table.
  HTableDescriptor hdt = HTU.createTableDescriptor(TableName.valueOf("testCreateDeleteTable"),
    HColumnDescriptor.DEFAULT_MIN_VERSIONS, 3, HConstants.FOREVER,
    HColumnDescriptor.DEFAULT_KEEP_DELETED);
  hdt.setRegionReplication(NB_SERVERS);
  hdt.addCoprocessor(RegionServerStoppedCopro.class.getName());
  try {
    Table table = HTU.createTable(hdt, new byte[][] { f }, null);

    Put p = new Put(row);
    p.addColumn(f, row, row);
    table.put(p);

    // Flush so it can be picked by the replica refresher thread
    HTU.flush(table.getName());

    // Sleep for some time until data is picked up by replicas
    try {
      Thread.sleep(2 * REFRESH_PERIOD);
    } catch (InterruptedException e1) {
      LOG.error(e1.toString(), e1);
    }

    // But if we ask for stale we will get it
    Get g = new Get(row);
    g.setConsistency(Consistency.TIMELINE);
    Result r = table.get(g);
    Assert.assertTrue(r.isStale());
  } finally {
    HTU.getAdmin().disableTable(hdt.getTableName());
    HTU.deleteTable(hdt.getTableName());
  }
}
 
源代码17 项目: datacollector   文件: HBaseProcessor2_0.java
@Override
public void createTable() throws IOException, InterruptedException {
  hbaseConnectionHelper.getUGI().doAs((PrivilegedExceptionAction<Void>) () -> {
    Connection connection = ConnectionFactory.createConnection(hbaseConnectionHelper.getHBaseConfiguration());
    table = connection.getTable(TableName.valueOf(hBaseLookupConfig.hBaseConnectionConfig.tableName));
    return null;
  });
}
 
源代码18 项目: hbase   文件: RawAsyncHBaseAdmin.java
@Override
public CompletableFuture<Void> truncateTable(TableName tableName, boolean preserveSplits) {
  return this.<TruncateTableRequest, TruncateTableResponse> procedureCall(tableName,
    RequestConverter.buildTruncateTableRequest(tableName, preserveSplits, ng.getNonceGroup(),
      ng.newNonce()), (s, c, req, done) -> s.truncateTable(c, req, done),
    (resp) -> resp.getProcId(), new TruncateTableProcedureBiConsumer(tableName));
}
 
源代码19 项目: BigData   文件: Data2HBase.java
/**
 * 创建表
 *
 * @param admin
 * @param tableNameString
 * @param columnFamily
 * @throws IOException
 */
private static void createTable(Connection connection, String tableNameString, String columnFamily) throws IOException {
    Admin admin = connection.getAdmin();
    TableName tableName = TableName.valueOf(tableNameString); //d2h (data to HBase)
    HTableDescriptor table = new HTableDescriptor(tableName);
    HColumnDescriptor family = new HColumnDescriptor(columnFamily);
    table.addFamily(family);
    //判断表是否已经存在
    if (admin.tableExists(tableName)) {
        admin.disableTable(tableName);
        admin.deleteTable(tableName);
    }
    admin.createTable(table);
}
 
源代码20 项目: hbase   文件: TestAsyncTableRpcPriority.java
@Test
public void testScanSystemTable() throws IOException, InterruptedException {
  try (ResultScanner scanner =
    conn.getTable(TableName.valueOf(SYSTEM_NAMESPACE_NAME_STR, name.getMethodName()))
      .getScanner(new Scan().setCaching(1).setMaxResultSize(1))) {
    assertNotNull(scanner.next());
    Thread.sleep(1000);
  }
  Thread.sleep(1000);
  // open, next, several renew lease, and then close
  verify(stub, atLeast(4)).scan(assertPriority(SYSTEMTABLE_QOS), any(ScanRequest.class), any());
}
 
源代码21 项目: hbase   文件: RegionSplitter.java
static void createPresplitTable(TableName tableName, SplitAlgorithm splitAlgo,
        String[] columnFamilies, Configuration conf)
throws IOException, InterruptedException {
  final int splitCount = conf.getInt("split.count", 0);
  Preconditions.checkArgument(splitCount > 1, "Split count must be > 1");

  Preconditions.checkArgument(columnFamilies.length > 0,
      "Must specify at least one column family. ");
  LOG.debug("Creating table " + tableName + " with " + columnFamilies.length
      + " column families.  Presplitting to " + splitCount + " regions");

  TableDescriptorBuilder builder = TableDescriptorBuilder.newBuilder(tableName);
  for (String cf : columnFamilies) {
    builder.setColumnFamily(ColumnFamilyDescriptorBuilder.of(cf));
  }
  try (Connection connection = ConnectionFactory.createConnection(conf)) {
    Admin admin = connection.getAdmin();
    try {
      Preconditions.checkArgument(!admin.tableExists(tableName),
        "Table already exists: " + tableName);
      admin.createTable(builder.build(), splitAlgo.split(splitCount));
    } finally {
      admin.close();
    }
    LOG.debug("Table created!  Waiting for regions to show online in META...");
    if (!conf.getBoolean("split.verify", true)) {
      // NOTE: createTable is synchronous on the table, but not on the regions
      int onlineRegions = 0;
      while (onlineRegions < splitCount) {
        onlineRegions = MetaTableAccessor.getRegionCount(connection, tableName);
        LOG.debug(onlineRegions + " of " + splitCount + " regions online...");
        if (onlineRegions < splitCount) {
          Thread.sleep(10 * 1000); // sleep
        }
      }
    }
    LOG.debug("Finished creating table with " + splitCount + " regions");
  }
}
 
源代码22 项目: hbase   文件: TestBackupBoundaryTests.java
/**
 * Verify that full backup fails on a single table that does not exist.
 *
 * @throws Exception if doing the full backup fails
 */
@Test(expected = IOException.class)
public void testFullBackupSingleDNE() throws Exception {
  LOG.info("test full backup fails on a single table that does not exist");
  List<TableName> tables = toList("tabledne");
  fullTableBackup(tables);
}
 
源代码23 项目: hbase   文件: TestAdmin2.java
private void createTableWithDefaultConf(TableName TABLENAME) throws IOException {
  TableDescriptorBuilder tableDescriptorBuilder =
    TableDescriptorBuilder.newBuilder(TABLENAME);
  ColumnFamilyDescriptor columnFamilyDescriptor =
    ColumnFamilyDescriptorBuilder.newBuilder(Bytes.toBytes("value")).build();
  tableDescriptorBuilder.setColumnFamily(columnFamilyDescriptor);

  ADMIN.createTable(tableDescriptorBuilder.build());
}
 
源代码24 项目: hbase   文件: ThriftAdmin.java
@Override
public void modifyColumnFamily(TableName tableName, ColumnFamilyDescriptor columnFamily)
    throws IOException {
  TTableName tTableName = ThriftUtilities.tableNameFromHBase(tableName);
  TColumnFamilyDescriptor tColumnFamilyDescriptor = ThriftUtilities
      .columnFamilyDescriptorFromHBase(columnFamily);
  try {
    client.modifyColumnFamily(tTableName, tColumnFamilyDescriptor);
  } catch (TException e) {
    throw new IOException(e);
  }
}
 
源代码25 项目: hbase   文件: TestAddToSerialReplicationPeer.java
@Test
public void testEnablingTable() throws Exception {
  TableName tableName = createTable();
  try (Table table = UTIL.getConnection().getTable(tableName)) {
    for (int i = 0; i < 100; i++) {
      table.put(new Put(Bytes.toBytes(i)).addColumn(CF, CQ, Bytes.toBytes(i)));
    }
  }
  RegionInfo region = UTIL.getAdmin().getRegions(tableName).get(0);
  HRegionServer rs = UTIL.getOtherRegionServer(UTIL.getRSForFirstRegionInTable(tableName));
  moveRegionAndArchiveOldWals(region, rs);
  TableStateManager tsm = UTIL.getMiniHBaseCluster().getMaster().getTableStateManager();
  tsm.setTableState(tableName, TableState.State.ENABLING);
  Thread t = new Thread(() -> {
    try {
      addPeer(true);
    } catch (IOException e) {
      throw new RuntimeException(e);
    }
  });
  t.start();
  Thread.sleep(5000);
  // we will wait on the disabling table so the thread should still be alive.
  assertTrue(t.isAlive());
  tsm.setTableState(tableName, TableState.State.ENABLED);
  t.join();
  try (Table table = UTIL.getConnection().getTable(tableName)) {
    for (int i = 0; i < 100; i++) {
      table.put(new Put(Bytes.toBytes(i)).addColumn(CF, CQ, Bytes.toBytes(i)));
    }
  }
  waitUntilReplicationDone(100);
  checkOrder(100);
}
 
源代码26 项目: hbase   文件: SpaceQuotaHelperForTests.java
/**
 * Removes all quotas defined in the HBase quota table.
 */
void removeAllQuotas(Connection conn) throws IOException {
  // Wait for the quota table to be created
  if (!conn.getAdmin().tableExists(QuotaUtil.QUOTA_TABLE_NAME)) {
    waitForQuotaTable(conn);
  } else {
    // Or, clean up any quotas from previous test runs.
    QuotaRetriever scanner = QuotaRetriever.open(conn.getConfiguration());
    try {
      for (QuotaSettings quotaSettings : scanner) {
        final String namespace = quotaSettings.getNamespace();
        final TableName tableName = quotaSettings.getTableName();
        final String userName = quotaSettings.getUserName();
        if (namespace != null) {
          LOG.debug("Deleting quota for namespace: " + namespace);
          QuotaUtil.deleteNamespaceQuota(conn, namespace);
        } else if (tableName != null) {
          LOG.debug("Deleting quota for table: " + tableName);
          QuotaUtil.deleteTableQuota(conn, tableName);
        } else if (userName != null) {
          LOG.debug("Deleting quota for user: " + userName);
          QuotaUtil.deleteUserQuota(conn, userName);
        }
      }
    } finally {
      if (scanner != null) {
        scanner.close();
      }
    }
  }
}
 
源代码27 项目: hbase   文件: TestAsyncTableRpcPriority.java
@Test
public void testScan() throws IOException, InterruptedException {
  try (ResultScanner scanner = conn.getTable(TableName.valueOf(name.getMethodName()))
    .getScanner(new Scan().setCaching(1).setMaxResultSize(1).setPriority(19))) {
    assertNotNull(scanner.next());
    Thread.sleep(1000);
  }
  Thread.sleep(1000);
  // open, next, several renew lease, and then close
  verify(stub, atLeast(4)).scan(assertPriority(19), any(ScanRequest.class), any());
}
 
源代码28 项目: hbase   文件: TestMultiRowRangeFilter.java
@Test
public void testReverseMultiRowRangeFilterWithinTable() throws IOException {
  tableName = TableName.valueOf(name.getMethodName());
  Table ht = TEST_UTIL.createTable(tableName, family);
  generateRows(numRows, ht, family, qf, value);

  Scan scan = new Scan();
  scan.setReversed(true);
  List<RowRange> ranges = Arrays.asList(
      new RowRange(Bytes.toBytes(20), true, Bytes.toBytes(30), true),
      new RowRange(Bytes.toBytes(50), true, Bytes.toBytes(60), true)
  );
  MultiRowRangeFilter filter = new MultiRowRangeFilter(ranges);
  scan.setFilter(filter);

  List<Integer> expectedResults = new ArrayList<>();
  for (int i = 60; i >= 50; i--) {
    expectedResults.add(i);
  }
  for (int i = 30; i >= 20; i--) {
    expectedResults.add(i);
  }

  List<Cell> results = getResults(ht, scan);
  List<Integer> actualResults = new ArrayList<>();
  StringBuilder sb = new StringBuilder();
  for (Cell result : results) {
    int observedValue = Bytes.toInt(
        result.getRowArray(), result.getRowOffset(), result.getRowLength());
    actualResults.add(observedValue);
    if (sb.length() > 0) {
      sb.append(", ");
    }
    sb.append(observedValue);
  }
  assertEquals("Saw results: " + sb.toString(), 22, results.size());
}
 
源代码29 项目: hbase   文件: MasterCoprocessorHost.java
/**
 * Invoked just before a split
 * @param tableName the table where the region belongs to
 * @param splitRow the split point
 * @param user the user
 * @throws IOException
 */
public void preSplitRegionAction(
    final TableName tableName,
    final byte[] splitRow,
    final User user) throws IOException {
  execOperation(coprocEnvironments.isEmpty() ? null : new MasterObserverOperation(user) {
    @Override
    public void call(MasterObserver observer) throws IOException {
      observer.preSplitRegionAction(this, tableName, splitRow);
    }
  });
}
 
源代码30 项目: phoenix-tephra   文件: InvalidListPruneTest.java
@BeforeClass
public static void startMiniCluster() throws Exception {
  // Setup the configuration to start HBase cluster with the invalid list pruning enabled
  conf = HBaseConfiguration.create();
  conf.setBoolean(TxConstants.TransactionPruning.PRUNE_ENABLE, true);
  // Flush prune data to table quickly, so that tests don't need have to wait long to see updates
  conf.setLong(TxConstants.TransactionPruning.PRUNE_FLUSH_INTERVAL, 0L);
  AbstractHBaseTableTest.startMiniCluster();

  TransactionStateStorage txStateStorage = new InMemoryTransactionStateStorage();
  TransactionManager txManager = new TransactionManager(conf, txStateStorage, new TxMetricsCollector());
  txManager.startAndWait();

  // Do some transactional data operations
  txDataTable1 = TableName.valueOf("invalidListPruneTestTable1");
  HTable hTable = createTable(txDataTable1.getName(), new byte[][]{family}, false,
                              Collections.singletonList(TestTransactionProcessor.class.getName()));
  try (TransactionAwareHTable txTable = new TransactionAwareHTable(hTable, TxConstants.ConflictDetection.ROW)) {
    TransactionContext txContext = new TransactionContext(new InMemoryTxSystemClient(txManager), txTable);
    txContext.start();
    for (int i = 0; i < MAX_ROWS; ++i) {
      txTable.put(new Put(Bytes.toBytes(i)).add(family, qualifier, Bytes.toBytes(i)));
    }
    txContext.finish();
  }

  testUtil.flush(txDataTable1);
  txManager.stopAndWait();

  pruneStateTable = TableName.valueOf(conf.get(TxConstants.TransactionPruning.PRUNE_STATE_TABLE,
                                               TxConstants.TransactionPruning.DEFAULT_PRUNE_STATE_TABLE));
  connection = HConnectionManager.createConnection(conf);
  dataJanitorState =
    new DataJanitorState(new DataJanitorState.TableSupplier() {
      @Override
      public HTableInterface get() throws IOException {
        return connection.getTable(pruneStateTable);
      }
    });
}
 
 类所在包
 同包方法