org.apache.hadoop.hbase.regionserver.Region.getTableDescriptor()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(110)

本文整理了Java中org.apache.hadoop.hbase.regionserver.Region.getTableDescriptor方法的一些代码示例,展示了Region.getTableDescriptor的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Region.getTableDescriptor方法的具体详情如下:
包路径:org.apache.hadoop.hbase.regionserver.Region
类名称:Region
方法名:getTableDescriptor

Region.getTableDescriptor介绍

暂无

代码示例

代码示例来源:origin: apache/hbase

@Override
public TableDescriptor getDescriptor() throws IOException {
 return this.region.getTableDescriptor();
}

代码示例来源:origin: apache/hbase

/**
 * Gets the online tables in this RS.
 * This method looks at the in-memory onlineRegions.
 * @return all the online tables in this RS
 */
public Set<TableName> getOnlineTables() {
 Set<TableName> tables = new HashSet<>();
 synchronized (this.onlineRegions) {
  for (Region region: this.onlineRegions.values()) {
   tables.add(region.getTableDescriptor().getTableName());
  }
 }
 return tables;
}

代码示例来源:origin: apache/hbase

/**
 * Returns the proper {@link SpaceViolationPolicyEnforcement} implementation for the given table.
 * If the given table does not have a violation policy enforced, a "no-op" policy will
 * be returned which always allows an action.
 *
 * @see #getPolicyEnforcement(TableName)
 */
public SpaceViolationPolicyEnforcement getPolicyEnforcement(Region r) {
 return getPolicyEnforcement(Objects.requireNonNull(r).getTableDescriptor().getTableName());
}

代码示例来源:origin: apache/hbase

@Override
@Deprecated
public HTableDescriptor getTableDescriptor() throws IOException {
 return new HTableDescriptor(this.region.getTableDescriptor());
}

代码示例来源:origin: apache/hbase

/**
 * Returns {@code true} if the given region is part of the {@code _acl_}
 * metadata table.
 */
static boolean isAclRegion(Region region) {
 return ACL_TABLE_NAME.equals(region.getTableDescriptor().getTableName());
}

代码示例来源:origin: apache/hbase

@Override
public void start(CoprocessorEnvironment environment) {
 // make sure we are on a region server
 if (!(environment instanceof RegionCoprocessorEnvironment)) {
  throw new IllegalArgumentException(
    "Constraints only act on regions - started in an environment that was not a region");
 }
 RegionCoprocessorEnvironment env = (RegionCoprocessorEnvironment) environment;
 TableDescriptor desc = env.getRegion().getTableDescriptor();
 // load all the constraints from the HTD
 try {
  this.constraints = Constraints.getConstraints(desc, classloader);
 } catch (IOException e) {
  throw new IllegalArgumentException(e);
 }
 if (LOG.isInfoEnabled()) {
  LOG.info("Finished loading " + constraints.size()
    + " user Constraints on table: " + desc.getTableName());
 }
}

代码示例来源:origin: apache/hbase

private boolean isTooManyStoreFiles(Region region) {
 // When compaction is disabled, the region is flushable
 if (!region.getTableDescriptor().isCompactionEnabled()) {
  return false;
 }
 for (Store store : region.getStores()) {
  if (store.hasTooManyStoreFiles()) {
   return true;
  }
 }
 return false;
}

代码示例来源:origin: apache/hbase

@Override
public TableName getName() {
 return this.region.getTableDescriptor().getTableName();
}

代码示例来源:origin: apache/hbase

/**
 * Authorization check for
 * SecureBulkLoadProtocol.prepareBulkLoad()
 * @param ctx the context
 * @throws IOException
 */
@Override
public void prePrepareBulkLoad(ObserverContext<RegionCoprocessorEnvironment> ctx)
throws IOException {
 requireAccess(ctx, "prePrepareBulkLoad",
   ctx.getEnvironment().getRegion().getTableDescriptor().getTableName(), Action.CREATE);
}

代码示例来源:origin: apache/hbase

/**
 * Authorization security check for
 * SecureBulkLoadProtocol.cleanupBulkLoad()
 * @param ctx the context
 * @throws IOException
 */
@Override
public void preCleanupBulkLoad(ObserverContext<RegionCoprocessorEnvironment> ctx)
throws IOException {
 requireAccess(ctx, "preCleanupBulkLoad",
   ctx.getEnvironment().getRegion().getTableDescriptor().getTableName(), Action.CREATE);
}

代码示例来源:origin: apache/hbase

public static Filter createVisibilityLabelFilter(Region region, Authorizations authorizations)
  throws IOException {
 Map<ByteRange, Integer> cfVsMaxVersions = new HashMap<>();
 for (ColumnFamilyDescriptor hcd : region.getTableDescriptor().getColumnFamilies()) {
  cfVsMaxVersions.put(new SimpleMutableByteRange(hcd.getName()), hcd.getMaxVersions());
 }
 VisibilityLabelService vls = VisibilityLabelServiceManager.getInstance()
   .getVisibilityLabelService();
 Filter visibilityLabelFilter = new VisibilityLabelFilter(
   vls.getVisibilityExpEvaluator(authorizations), cfVsMaxVersions);
 return visibilityLabelFilter;
}

代码示例来源:origin: apache/hbase

public List<HRegion> getRegions(TableName tableName) {
 List<HRegion> ret = new ArrayList<>();
 for (JVMClusterUtil.RegionServerThread rst : getRegionServerThreads()) {
  HRegionServer hrs = rst.getRegionServer();
  for (Region region : hrs.getOnlineRegionsLocalContext()) {
   if (region.getTableDescriptor().getTableName().equals(tableName)) {
    ret.add((HRegion)region);
   }
  }
 }
 return ret;
}

代码示例来源:origin: apache/hbase

/**
 * Verifies user has CREATE privileges on
 * the Column Families involved in the bulkLoadHFile
 * request. Specific Column Write privileges are presently
 * ignored.
 */
@Override
public void preBulkLoadHFile(ObserverContext<RegionCoprocessorEnvironment> ctx,
  List<Pair<byte[], String>> familyPaths) throws IOException {
 User user = getActiveUser(ctx);
 for(Pair<byte[],String> el : familyPaths) {
  accessChecker.requirePermission(user, "preBulkLoadHFile",
   ctx.getEnvironment().getRegion().getTableDescriptor().getTableName(), el.getFirst(), null,
   null, Action.CREATE);
 }
}

代码示例来源:origin: apache/hbase

public List<HRegion> findRegionsForTable(TableName tableName) {
 ArrayList<HRegion> ret = new ArrayList<>();
 for (JVMClusterUtil.RegionServerThread rst : getRegionServerThreads()) {
  HRegionServer hrs = rst.getRegionServer();
  for (Region region : hrs.getRegions(tableName)) {
   if (region.getTableDescriptor().getTableName().equals(tableName)) {
    ret.add((HRegion)region);
   }
  }
 }
 return ret;
}

代码示例来源:origin: apache/hbase

@Override
public void preBulkLoadHFile(ObserverContext<RegionCoprocessorEnvironment> ctx,
               List<Pair<byte[], String>> familyPaths) throws IOException {
 RegionCoprocessorEnvironment e = ctx.getEnvironment();
 assertNotNull(e);
 assertNotNull(e.getRegion());
 if (e.getRegion().getTableDescriptor().getTableName().equals(
   TestRegionObserverInterface.TEST_TABLE)) {
  assertNotNull(familyPaths);
  assertEquals(1,familyPaths.size());
  assertArrayEquals(TestRegionObserverInterface.A, familyPaths.get(0).getFirst());
  String familyPath = familyPaths.get(0).getSecond();
  String familyName = Bytes.toString(TestRegionObserverInterface.A);
  assertEquals(familyPath.substring(familyPath.length()-familyName.length()-1),"/"+familyName);
 }
 ctPreBulkLoadHFile.incrementAndGet();
}

代码示例来源:origin: apache/hbase

@Override
public void postBulkLoadHFile(ObserverContext<RegionCoprocessorEnvironment> ctx,
  List<Pair<byte[], String>> familyPaths, Map<byte[], List<Path>> map)
    throws IOException {
 RegionCoprocessorEnvironment e = ctx.getEnvironment();
 assertNotNull(e);
 assertNotNull(e.getRegion());
 if (e.getRegion().getTableDescriptor().getTableName().equals(
   TestRegionObserverInterface.TEST_TABLE)) {
  assertNotNull(familyPaths);
  assertEquals(1,familyPaths.size());
  assertArrayEquals(TestRegionObserverInterface.A, familyPaths.get(0).getFirst());
  String familyPath = familyPaths.get(0).getSecond();
  String familyName = Bytes.toString(TestRegionObserverInterface.A);
  assertEquals(familyPath.substring(familyPath.length()-familyName.length()-1),"/"+familyName);
 }
 ctPostBulkLoadHFile.incrementAndGet();
}

代码示例来源:origin: apache/hbase

@Override
public void preGetOp(ObserverContext<RegionCoprocessorEnvironment> c, Get get,
  List<Cell> result) throws IOException {
 TableName tableName = c.getEnvironment().getRegion().getTableDescriptor().getTableName();
 Long ttl = this.ttls.get(tableName);
 if (ttl != null) {
  get.setTimeRange(EnvironmentEdgeManager.currentTime() - ttl, get.getTimeRange().getMax());
 }
 Integer version = this.versions.get(tableName);
 if (version != null) {
  get.readVersions(version);
 }
}

代码示例来源:origin: apache/hbase

private static Region setMobThreshold(Region region, byte[] cfName, long modThreshold) {
 ColumnFamilyDescriptor cfd = ColumnFamilyDescriptorBuilder
     .newBuilder(region.getTableDescriptor().getColumnFamily(cfName))
     .setMobThreshold(modThreshold)
     .build();
 TableDescriptor td = TableDescriptorBuilder
     .newBuilder(region.getTableDescriptor())
     .removeColumnFamily(cfName)
     .setColumnFamily(cfd)
     .build();
 ((HRegion)region).setTableDescriptor(td);
 return region;
}

代码示例来源:origin: apache/hbase

@Override
 public void preScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Scan scan)
   throws IOException {
  Region region = c.getEnvironment().getRegion();
  TableName tableName = region.getTableDescriptor().getTableName();
  Long ttl = this.ttls.get(tableName);
  if (ttl != null) {
   scan.setTimeRange(EnvironmentEdgeManager.currentTime() - ttl, scan.getTimeRange().getMax());
  }
  Integer version = this.versions.get(tableName);
  if (version != null) {
   scan.readVersions(version);
  }
 }
}

代码示例来源:origin: apache/hbase

@Override
public void postGetOp(final ObserverContext<RegionCoprocessorEnvironment> c, final Get get,
  final List<Cell> results) {
 RegionCoprocessorEnvironment e = c.getEnvironment();
 assertNotNull(e);
 assertNotNull(e.getRegion());
 assertNotNull(get);
 assertNotNull(results);
 if (e.getRegion().getTableDescriptor().getTableName().equals(
   TestRegionObserverInterface.TEST_TABLE)) {
  boolean foundA = false;
  boolean foundB = false;
  boolean foundC = false;
  for (Cell kv: results) {
   if (CellUtil.matchingFamily(kv, TestRegionObserverInterface.A)) {
    foundA = true;
   }
   if (CellUtil.matchingFamily(kv, TestRegionObserverInterface.B)) {
    foundB = true;
   }
   if (CellUtil.matchingFamily(kv, TestRegionObserverInterface.C)) {
    foundC = true;
   }
  }
  assertTrue(foundA);
  assertTrue(foundB);
  assertTrue(foundC);
 }
 ctPostGet.incrementAndGet();
}

相关文章