@InterfaceAudience.LimitedPrivate(value="Configuration") public class VisibilityController extends Object implements MasterCoprocessor, RegionCoprocessor, org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsService.Interface, MasterObserver, RegionObserver
org.apache.hadoop.hbase.Coprocessor.StateRegionObserver.MutationType| Constructor and Description |
|---|
VisibilityController() |
| Modifier and Type | Method and Description |
|---|---|
void |
addLabels(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsResponse> done)
VisibilityEndpoint service related methods
|
void |
clearAuths(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.SetAuthsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsResponse> done) |
void |
getAuths(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.GetAuthsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.GetAuthsResponse> done) |
Optional<MasterObserver> |
getMasterObserver() |
Optional<RegionObserver> |
getRegionObserver()
Observer/Service Getters
|
Iterable<com.google.protobuf.Service> |
getServices() |
static boolean |
isCellAuthorizationSupported(org.apache.hadoop.conf.Configuration conf) |
void |
listLabels(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.ListLabelsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.ListLabelsResponse> done) |
DeleteTracker |
postInstantiateDeleteTracker(ObserverContext<RegionCoprocessorEnvironment> ctx,
DeleteTracker delTracker)
Called after the ScanQueryMatcher creates ScanDeleteTracker.
|
org.apache.hadoop.hbase.Cell |
postMutationBeforeWAL(ObserverContext<RegionCoprocessorEnvironment> ctx,
RegionObserver.MutationType opType,
org.apache.hadoop.hbase.client.Mutation mutation,
org.apache.hadoop.hbase.Cell oldCell,
org.apache.hadoop.hbase.Cell newCell)
Called after a new cell has been created during an increment operation, but before
it is committed to the WAL or memstore.
|
void |
postOpen(ObserverContext<RegionCoprocessorEnvironment> e)
Region related hooks
|
void |
postScannerClose(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s)
Called after the client closes a scanner.
|
boolean |
postScannerFilterRow(ObserverContext<RegionCoprocessorEnvironment> e,
InternalScanner s,
org.apache.hadoop.hbase.Cell curRowCell,
boolean hasMore)
This will be called by the scan flow when the current scanned row is being filtered out by the
filter.
|
RegionScanner |
postScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c,
org.apache.hadoop.hbase.client.Scan scan,
RegionScanner s)
Called after the client opens a new scanner.
|
void |
postSetSplitOrMergeEnabled(ObserverContext<MasterCoprocessorEnvironment> ctx,
boolean newValue,
org.apache.hadoop.hbase.client.MasterSwitchType switchType)
Called after setting split / merge switch
|
void |
postStartMaster(ObserverContext<MasterCoprocessorEnvironment> ctx)
Master related hooks
|
org.apache.hadoop.hbase.client.Result |
preAppend(ObserverContext<RegionCoprocessorEnvironment> e,
org.apache.hadoop.hbase.client.Append append)
Called before Append.
|
void |
preBatchMutate(ObserverContext<RegionCoprocessorEnvironment> c,
MiniBatchOperationInProgress<org.apache.hadoop.hbase.client.Mutation> miniBatchOp)
This will be called for every batch mutation operation happening at the server.
|
void |
preDisableTable(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.TableName tableName)
Called prior to disabling a table.
|
void |
preGetOp(ObserverContext<RegionCoprocessorEnvironment> e,
org.apache.hadoop.hbase.client.Get get,
List<org.apache.hadoop.hbase.Cell> results)
Called before the client performs a Get
|
org.apache.hadoop.hbase.client.Result |
preIncrement(ObserverContext<RegionCoprocessorEnvironment> e,
org.apache.hadoop.hbase.client.Increment increment)
Called before Increment.
|
void |
preModifyTable(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.TableName tableName,
org.apache.hadoop.hbase.client.TableDescriptor htd)
Called prior to modifying a table's properties.
|
void |
prePrepareTimeStampForDeleteVersion(ObserverContext<RegionCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.client.Mutation delete,
org.apache.hadoop.hbase.Cell cell,
byte[] byteNow,
org.apache.hadoop.hbase.client.Get get)
Called before the server updates the timestamp for version delete with latest timestamp.
|
void |
preScannerClose(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s)
Called before the client closes a scanner.
|
boolean |
preScannerNext(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s,
List<org.apache.hadoop.hbase.client.Result> result,
int limit,
boolean hasNext)
Called before the client asks for the next row on a scanner.
|
void |
preScannerOpen(ObserverContext<RegionCoprocessorEnvironment> e,
org.apache.hadoop.hbase.client.Scan scan)
Called before the client opens a new scanner.
|
void |
setAuths(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.SetAuthsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsResponse> done) |
void |
start(org.apache.hadoop.hbase.CoprocessorEnvironment env) |
void |
stop(org.apache.hadoop.hbase.CoprocessorEnvironment env) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetBulkLoadObserver, getEndpointObserverpostAbortProcedure, postAddReplicationPeer, postAddRSGroup, postAssign, postBalance, postBalanceRSGroup, postBalanceSwitch, postClearDeadServers, postCloneSnapshot, postCompletedCreateTableAction, postCompletedDeleteTableAction, postCompletedDisableTableAction, postCompletedEnableTableAction, postCompletedMergeRegionsAction, postCompletedModifyTableAction, postCompletedModifyTableAction, postCompletedSplitRegionAction, postCompletedTruncateTableAction, postCreateNamespace, postCreateTable, postDecommissionRegionServers, postDeleteNamespace, postDeleteSnapshot, postDeleteTable, postDisableReplicationPeer, postDisableTable, postEnableReplicationPeer, postEnableTable, postGetClusterMetrics, postGetLocks, postGetNamespaceDescriptor, postGetProcedures, postGetReplicationPeerConfig, postGetTableDescriptors, postGetTableNames, postListDecommissionedRegionServers, postListNamespaceDescriptors, postListReplicationPeers, postListSnapshot, postLockHeartbeat, postMergeRegions, postMergeRegionsCommitAction, postModifyNamespace, postModifyNamespace, postModifyTable, postModifyTable, postMove, postMoveServers, postMoveServersAndTables, postMoveTables, postRecommissionRegionServer, postRegionOffline, postRemoveReplicationPeer, postRemoveRSGroup, postRemoveServers, postRequestLock, postRestoreSnapshot, postRollBackMergeRegionsAction, postRollBackSplitRegionAction, postSetNamespaceQuota, postSetTableQuota, postSetUserQuota, postSetUserQuota, postSetUserQuota, postSnapshot, postTableFlush, postTruncateTable, postUnassign, postUpdateReplicationPeerConfig, preAbortProcedure, preAddReplicationPeer, preAddRSGroup, preAssign, preBalance, preBalanceRSGroup, preBalanceSwitch, preClearDeadServers, preCloneSnapshot, preCreateNamespace, preCreateTable, preCreateTableAction, preDecommissionRegionServers, preDeleteNamespace, preDeleteSnapshot, preDeleteTable, preDeleteTableAction, preDisableReplicationPeer, preDisableTableAction, preEnableReplicationPeer, preEnableTable, preEnableTableAction, preGetClusterMetrics, preGetLocks, preGetNamespaceDescriptor, preGetProcedures, preGetReplicationPeerConfig, preGetTableDescriptors, preGetTableNames, preListDecommissionedRegionServers, preListNamespaceDescriptors, preListReplicationPeers, preListSnapshot, preLockHeartbeat, preMasterInitialization, preMergeRegions, preMergeRegionsAction, preMergeRegionsCommitAction, preModifyNamespace, preModifyNamespace, preModifyTable, preModifyTableAction, preModifyTableAction, preMove, preMoveServers, preMoveServersAndTables, preMoveTables, preRecommissionRegionServer, preRegionOffline, preRemoveReplicationPeer, preRemoveRSGroup, preRemoveServers, preRequestLock, preRestoreSnapshot, preSetNamespaceQuota, preSetSplitOrMergeEnabled, preSetTableQuota, preSetUserQuota, preSetUserQuota, preSetUserQuota, preShutdown, preSnapshot, preSplitRegion, preSplitRegionAction, preSplitRegionAfterMETAAction, preSplitRegionBeforeMETAAction, preStopMaster, preTableFlush, preTruncateTable, preTruncateTableAction, preUnassign, preUpdateReplicationPeerConfigpostAppend, postBatchMutate, postBatchMutateIndispensably, postBulkLoadHFile, postCheckAndDelete, postCheckAndPut, postClose, postCloseRegionOperation, postCommitStoreFile, postCompact, postCompactSelection, postDelete, postExists, postFlush, postFlush, postGetOp, postIncrement, postMemStoreCompaction, postPut, postReplayWALs, postScannerNext, postStartRegionOperation, postStoreFileReaderOpen, postWALRestore, preAppendAfterRowLock, preBulkLoadHFile, preCheckAndDelete, preCheckAndDeleteAfterRowLock, preCheckAndPut, preCheckAndPutAfterRowLock, preClose, preCommitStoreFile, preCompact, preCompactScannerOpen, preCompactSelection, preDelete, preExists, preFlush, preFlush, preFlushScannerOpen, preIncrementAfterRowLock, preMemStoreCompaction, preMemStoreCompactionCompact, preMemStoreCompactionCompactScannerOpen, preOpen, prePut, preReplayWALs, preStoreFileReaderOpen, preStoreScannerOpen, preWALRestorepublic static boolean isCellAuthorizationSupported(org.apache.hadoop.conf.Configuration conf)
public void start(org.apache.hadoop.hbase.CoprocessorEnvironment env)
throws IOException
start in interface org.apache.hadoop.hbase.CoprocessorIOExceptionpublic void stop(org.apache.hadoop.hbase.CoprocessorEnvironment env)
throws IOException
stop in interface org.apache.hadoop.hbase.CoprocessorIOExceptionpublic Optional<RegionObserver> getRegionObserver()
getRegionObserver in interface RegionCoprocessorpublic Optional<MasterObserver> getMasterObserver()
getMasterObserver in interface MasterCoprocessorpublic Iterable<com.google.protobuf.Service> getServices()
getServices in interface org.apache.hadoop.hbase.Coprocessorpublic void postStartMaster(ObserverContext<MasterCoprocessorEnvironment> ctx) throws IOException
postStartMaster in interface MasterObserverIOExceptionpublic void preModifyTable(ObserverContext<MasterCoprocessorEnvironment> ctx, org.apache.hadoop.hbase.TableName tableName, org.apache.hadoop.hbase.client.TableDescriptor htd) throws IOException
MasterObserverpreModifyTable in interface MasterObserverctx - the environment to interact with the framework and mastertableName - the name of the tablehtd - after modify operation, table will have this descriptorIOExceptionpublic void preDisableTable(ObserverContext<MasterCoprocessorEnvironment> ctx, org.apache.hadoop.hbase.TableName tableName) throws IOException
MasterObserverpreDisableTable in interface MasterObserverctx - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postOpen(ObserverContext<RegionCoprocessorEnvironment> e)
postOpen in interface RegionObservere - the environment provided by the region serverpublic void postSetSplitOrMergeEnabled(ObserverContext<MasterCoprocessorEnvironment> ctx, boolean newValue, org.apache.hadoop.hbase.client.MasterSwitchType switchType) throws IOException
MasterObserverpostSetSplitOrMergeEnabled in interface MasterObserverctx - the coprocessor instance's environmentnewValue - the new value submitted in the callswitchType - type of switchIOExceptionpublic void preBatchMutate(ObserverContext<RegionCoprocessorEnvironment> c, MiniBatchOperationInProgress<org.apache.hadoop.hbase.client.Mutation> miniBatchOp) throws IOException
RegionObserverMiniBatchOperationInProgress.setOperationStatus(int, OperationStatus)),
RegionObserver can make Region to skip these Mutations.
Note: Do not retain references to any Cells in Mutations beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
preBatchMutate in interface RegionObserverc - the environment provided by the region serverminiBatchOp - batch of Mutations getting applied to region.IOExceptionpublic void prePrepareTimeStampForDeleteVersion(ObserverContext<RegionCoprocessorEnvironment> ctx, org.apache.hadoop.hbase.client.Mutation delete, org.apache.hadoop.hbase.Cell cell, byte[] byteNow, org.apache.hadoop.hbase.client.Get get) throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions. If 'bypass' is set, we skip out on calling any subsequent chained coprocessors.
prePrepareTimeStampForDeleteVersion in interface RegionObserverctx - the environment provided by the region serverdelete - - the parent mutation associated with this delete cellcell - - The deleteColumn with latest version cellbyteNow - - timestamp bytesget - - the get formed using the current cell's row. Note that the get does not specify
the family and qualifierIOExceptionpublic void preScannerOpen(ObserverContext<RegionCoprocessorEnvironment> e, org.apache.hadoop.hbase.client.Scan scan) throws IOException
RegionObserverNote: Do not retain references to any Cells returned by scanner, beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
preScannerOpen in interface RegionObservere - the environment provided by the region serverscan - the Scan specificationIOExceptionpublic DeleteTracker postInstantiateDeleteTracker(ObserverContext<RegionCoprocessorEnvironment> ctx, DeleteTracker delTracker) throws IOException
RegionObserverWarn: This is used by internal coprocessors. Should not be implemented by user coprocessors
postInstantiateDeleteTracker in interface RegionObserverctx - the environment provided by the region serverdelTracker - the deleteTracker that is created by the QueryMatcherIOExceptionpublic RegionScanner postScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c, org.apache.hadoop.hbase.client.Scan scan, RegionScanner s) throws IOException
RegionObserverNote: Do not retain references to any Cells returned by scanner, beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
postScannerOpen in interface RegionObserverc - the environment provided by the region serverscan - the Scan specifications - if not null, the base scannerIOExceptionpublic boolean preScannerNext(ObserverContext<RegionCoprocessorEnvironment> c, InternalScanner s, List<org.apache.hadoop.hbase.client.Result> result, int limit, boolean hasNext) throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions. If 'bypass' is set, we skip out on calling any subsequent chained coprocessors.
Note: Do not retain references to any Cells returned by scanner, beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
preScannerNext in interface RegionObserverc - the environment provided by the region servers - the scannerresult - The result to return to the client if default processing
is bypassed. Can be modified. Will not be returned if default processing
is not bypassed.limit - the maximum number of results to returnhasNext - the 'has more' indicationIOExceptionpublic void preScannerClose(ObserverContext<RegionCoprocessorEnvironment> c, InternalScanner s) throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions. If 'bypass' is set, we skip out on calling any subsequent chained coprocessors.
preScannerClose in interface RegionObserverc - the environment provided by the region servers - the scannerIOExceptionpublic void postScannerClose(ObserverContext<RegionCoprocessorEnvironment> c, InternalScanner s) throws IOException
RegionObserverpostScannerClose in interface RegionObserverc - the environment provided by the region servers - the scannerIOExceptionpublic void preGetOp(ObserverContext<RegionCoprocessorEnvironment> e, org.apache.hadoop.hbase.client.Get get, List<org.apache.hadoop.hbase.Cell> results) throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions. If 'bypass' is set, we skip out on calling any subsequent chained coprocessors.
preGetOp in interface RegionObservere - the environment provided by the region serverget - the Get requestresults - The result to return to the client if default processing
is bypassed. Can be modified. Will not be used if default processing
is not bypassed.IOExceptionpublic org.apache.hadoop.hbase.client.Result preAppend(ObserverContext<RegionCoprocessorEnvironment> e, org.apache.hadoop.hbase.client.Append append) throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions. If 'bypass' is set, we skip out on calling any subsequent chained coprocessors.
Note: Do not retain references to any Cells in 'append' beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
preAppend in interface RegionObservere - the environment provided by the region serverappend - Append objectIOExceptionpublic org.apache.hadoop.hbase.client.Result preIncrement(ObserverContext<RegionCoprocessorEnvironment> e, org.apache.hadoop.hbase.client.Increment increment) throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions. If 'bypass' is set, we skip out on calling any subsequent chained coprocessors.
Note: Do not retain references to any Cells in 'increment' beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
preIncrement in interface RegionObservere - the environment provided by the region serverincrement - increment objectIOExceptionpublic org.apache.hadoop.hbase.Cell postMutationBeforeWAL(ObserverContext<RegionCoprocessorEnvironment> ctx, RegionObserver.MutationType opType, org.apache.hadoop.hbase.client.Mutation mutation, org.apache.hadoop.hbase.Cell oldCell, org.apache.hadoop.hbase.Cell newCell) throws IOException
RegionObserverObserverContext.bypass() has no
effect in this hook.postMutationBeforeWAL in interface RegionObserverctx - the environment provided by the region serveropType - the operation typemutation - the current mutationoldCell - old cell containing previous valuenewCell - the new cell containing the computed valueIOExceptionpublic boolean postScannerFilterRow(ObserverContext<RegionCoprocessorEnvironment> e, InternalScanner s, org.apache.hadoop.hbase.Cell curRowCell, boolean hasMore) throws IOException
RegionObserverboolean filterRowKey(byte [] buffer, int offset, int length) returning trueboolean filterRow() returning truedefault void filterRow(List<KeyValue> kvs) removing all the kvs from
the passed ListNote: Do not retain references to any Cells returned by scanner, beyond the life of this invocation. If need a Cell reference for later use, copy the cell and use that.
postScannerFilterRow in interface RegionObservere - the environment provided by the region servers - the scannercurRowCell - The cell in the current row which got filtered outhasMore - the 'has more' indicationIOExceptionpublic void addLabels(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsResponse> done)
addLabels in interface org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsService.Interfacepublic void setAuths(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.SetAuthsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsResponse> done)
setAuths in interface org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsService.Interfacepublic void getAuths(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.GetAuthsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.GetAuthsResponse> done)
getAuths in interface org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsService.Interfacepublic void clearAuths(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.SetAuthsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsResponse> done)
clearAuths in interface org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsService.Interfacepublic void listLabels(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.ListLabelsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.ListLabelsResponse> done)
listLabels in interface org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos.VisibilityLabelsService.InterfaceCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.