类org.apache.hadoop.hbase.regionserver.ScanOptions源码实例Demo

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

源代码1 项目: phoenix-tephra   文件: TransactionProcessor.java
@Override
public void preFlushScannerOpen(
    org.apache.hadoop.hbase.coprocessor.ObserverContext<RegionCoprocessorEnvironment> c,
    Store store, org.apache.hadoop.hbase.regionserver.ScanOptions options,
    org.apache.hadoop.hbase.regionserver.FlushLifeCycleTracker tracker) throws IOException {
  if (cache.getLatestState() != null) {
    options.readAllVersions();
  }
}
 
源代码2 项目: phoenix-tephra   文件: TransactionProcessor.java
@Override
public void preCompactScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanType scanType, ScanOptions options, CompactionLifeCycleTracker tracker,
    CompactionRequest request) throws IOException {
  if (cache.getLatestState() != null) {
    options.readAllVersions();
  }
}
 
源代码3 项目: hbase   文件: SimpleRegionObserver.java
@Override
public void preStoreScannerOpen(ObserverContext<RegionCoprocessorEnvironment> ctx,
  Store store, ScanOptions options) throws IOException {
  if (options.getScan().getTimeRange().isAllTime()) {
    setScanOptions(options);
  }
}
 
源代码4 项目: hbase   文件: ZooKeeperScanPolicyObserver.java
private void resetTTL(ScanOptions options) {
  OptionalLong expireBefore = getExpireBefore();
  if (!expireBefore.isPresent()) {
    return;
  }
  options.setTTL(EnvironmentEdgeManager.currentTime() - expireBefore.getAsLong());
}
 
源代码5 项目: hbase   文件: SimpleRegionObserver.java
@Override
public void preCompactScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
  ScanType scanType, ScanOptions options, CompactionLifeCycleTracker tracker,
  CompactionRequest request) throws IOException {
  setScanOptions(options);
}
 
源代码6 项目: hbase   文件: SimpleRegionObserver.java
public void preFlushScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
  ScanOptions options,FlushLifeCycleTracker tracker) throws IOException {
  setScanOptions(options);
}
 
源代码7 项目: hbase   文件: SimpleRegionObserver.java
public void preMemStoreCompactionCompactScannerOpen(
  ObserverContext<RegionCoprocessorEnvironment> c, Store store, ScanOptions options)
  throws IOException {
  setScanOptions(options);
}
 
源代码8 项目: hbase   文件: SimpleRegionObserver.java
private void setScanOptions(ScanOptions options) {
  options.setMaxVersions(TestRegionCoprocessorHost.MAX_VERSIONS);
  options.setMinVersions(TestRegionCoprocessorHost.MIN_VERSIONS);
  options.setKeepDeletedCells(KeepDeletedCells.TRUE);
  options.setTTL(TestRegionCoprocessorHost.TTL);
}
 
源代码9 项目: hbase   文件: WriteHeavyIncrementObserver.java
@Override
public void preFlushScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanOptions options, FlushLifeCycleTracker tracker) throws IOException {
  options.readAllVersions();
}
 
源代码10 项目: hbase   文件: WriteHeavyIncrementObserver.java
@Override
public void preCompactScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanType scanType, ScanOptions options, CompactionLifeCycleTracker tracker,
    CompactionRequest request) throws IOException {
  options.readAllVersions();
}
 
源代码11 项目: hbase   文件: WriteHeavyIncrementObserver.java
@Override
public void preMemStoreCompactionCompactScannerOpen(
    ObserverContext<RegionCoprocessorEnvironment> c, Store store, ScanOptions options)
    throws IOException {
  options.readAllVersions();
}
 
源代码12 项目: hbase   文件: WriteHeavyIncrementObserver.java
@Override
public void preStoreScannerOpen(ObserverContext<RegionCoprocessorEnvironment> ctx, Store store,
    ScanOptions options) throws IOException {
  options.readAllVersions();
}
 
源代码13 项目: hbase   文件: ZooKeeperScanPolicyObserver.java
@Override
public void preFlushScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanOptions options, FlushLifeCycleTracker tracker) throws IOException {
  resetTTL(options);
}
 
源代码14 项目: hbase   文件: ZooKeeperScanPolicyObserver.java
@Override
public void preCompactScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanType scanType, ScanOptions options, CompactionLifeCycleTracker tracker,
    CompactionRequest request) throws IOException {
  resetTTL(options);
}
 
源代码15 项目: phoenix   文件: UngroupedAggregateRegionObserver.java
@Override
public void preCompactScannerOpen(final ObserverContext<RegionCoprocessorEnvironment> c, final Store store,
        ScanType scanType, ScanOptions options, CompactionLifeCycleTracker tracker,
        final CompactionRequest request) throws IOException {
    // Compaction and split upcalls run with the effective user context of the requesting user.
    // This will lead to failure of cross cluster RPC if the effective user is not
    // the login user. Switch to the login user context to ensure we have the expected
    // security context.
    final String fullTableName = c.getEnvironment().getRegion().getRegionInfo().getTable().getNameAsString();
    // since we will make a call to syscat, do nothing if we are compacting syscat itself
    if (request.isMajor() && !PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME.equals(fullTableName)) {
        User.runAsLoginUser(new PrivilegedExceptionAction<Void>() {
            @Override
            public Void run() throws Exception {
                // If the index is disabled, keep the deleted cells so the rebuild doesn't corrupt the index
                try (PhoenixConnection conn =
                        QueryUtil.getConnectionOnServer(compactionConfig).unwrap(PhoenixConnection.class)) {
                    PTable table = PhoenixRuntime.getTableNoCache(conn, fullTableName);
                    List<PTable> indexes = PTableType.INDEX.equals(table.getType()) ? Lists.newArrayList(table) : table.getIndexes();
                    // FIXME need to handle views and indexes on views as well
                    for (PTable index : indexes) {
                        if (index.getIndexDisableTimestamp() != 0) {
                            LOGGER.info(
                                "Modifying major compaction scanner to retain deleted cells for a table with disabled index: "
                                        + fullTableName);
                            options.setKeepDeletedCells(KeepDeletedCells.TRUE);
                            options.readAllVersions();
                            options.setTTL(Long.MAX_VALUE);
                        }
                    }
                } catch (Exception e) {
                    if (e instanceof TableNotFoundException) {
                        LOGGER.debug("Ignoring HBase table that is not a Phoenix table: " + fullTableName);
                        // non-Phoenix HBase tables won't be found, do nothing
                    } else {
                        LOGGER.error("Unable to modify compaction scanner to retain deleted cells for a table with disabled Index; "
                                + fullTableName,
                                e);
                    }
                }
                return null;
            }
        });
    }
}
 
源代码16 项目: hbase   文件: RegionObserver.java
/**
 * Called before we open store scanner for flush. You can use the {@code options} to change max
 * versions and TTL for the scanner being opened.
 * @param c the environment provided by the region server
 * @param store the store where flush is being requested
 * @param options used to change max versions and TTL for the scanner being opened
 */
default void preFlushScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanOptions options,FlushLifeCycleTracker tracker) throws IOException {}
 
源代码17 项目: hbase   文件: RegionObserver.java
/**
 * Called before we open store scanner for in memory compaction. You can use the {@code options}
 * to change max versions and TTL for the scanner being opened. Notice that this method will only
 * be called when you use {@code eager} mode. For {@code basic} mode we will not drop any cells
 * thus we do not open a store scanner.
 * @param c the environment provided by the region server
 * @param store the store where in memory compaction is being requested
 * @param options used to change max versions and TTL for the scanner being opened
 */
default void preMemStoreCompactionCompactScannerOpen(
    ObserverContext<RegionCoprocessorEnvironment> c, Store store, ScanOptions options)
    throws IOException {}
 
源代码18 项目: hbase   文件: RegionObserver.java
/**
 * Called before we open store scanner for compaction. You can use the {@code options} to change max
 * versions and TTL for the scanner being opened.
 * @param c the environment provided by the region server
 * @param store the store being compacted
 * @param scanType type of Scan
 * @param options used to change max versions and TTL for the scanner being opened
 * @param tracker tracker used to track the life cycle of a compaction
 * @param request the requested compaction
 */
default void preCompactScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, Store store,
    ScanType scanType, ScanOptions options, CompactionLifeCycleTracker tracker,
    CompactionRequest request) throws IOException {}
 
源代码19 项目: hbase   文件: RegionObserver.java
/**
 * Called before a store opens a new scanner.
 * <p>
 * This hook is called when a "user" scanner is opened. Use {@code preFlushScannerOpen} and
 * {@code preCompactScannerOpen} to inject flush/compaction.
 * <p>
 * Notice that, this method is used to change the inherent max versions and TTL for a Store. For
 * example, you can change the max versions option for a {@link Scan} object to 10 in
 * {@code preScannerOpen}, but if the max versions config on the Store is 1, then you still can
 * only read 1 version. You need also to inject here to change the max versions to 10 if you want
 * to get more versions.
 * @param ctx the environment provided by the region server
 * @param store the store which we want to get scanner from
 * @param options used to change max versions and TTL for the scanner being opened
 * @see #preFlushScannerOpen(ObserverContext, Store, ScanOptions, FlushLifeCycleTracker)
 * @see #preCompactScannerOpen(ObserverContext, Store, ScanType, ScanOptions,
 *      CompactionLifeCycleTracker, CompactionRequest)
 */
default void preStoreScannerOpen(ObserverContext<RegionCoprocessorEnvironment> ctx, Store store,
    ScanOptions options) throws IOException {}
 
 类所在包
 类方法
 同包方法