|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.hadoop.hbase.coprocessor.BaseRegionObserver
org.apache.hadoop.hbase.coprocessor.BaseMasterAndRegionObserver
org.apache.hadoop.hbase.security.access.AccessController
@InterfaceAudience.LimitedPrivate(value="Configuration") public class AccessController
Provides basic authorization checks for data access and administrative operations.
AccessController performs authorization checks for HBase operations
based on:
Permission.Action values)AccessDeniedException
will be thrown for the operation.
To perform authorization checks, AccessController relies on the
RpcServerEngine being loaded to provide
the user identities for remote requests.
The access control lists used for authorization can be manipulated via the
exposed AccessControlProtos.AccessControlService Interface implementation, and the associated
grant, revoke, and user_permission HBase shell
commands.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.apache.hadoop.hbase.Coprocessor |
|---|
Coprocessor.State |
| Nested classes/interfaces inherited from interface org.apache.hadoop.hbase.coprocessor.RegionObserver |
|---|
RegionObserver.MutationType |
| Field Summary | |
|---|---|
static org.apache.commons.logging.Log |
LOG
|
| Fields inherited from interface org.apache.hadoop.hbase.Coprocessor |
|---|
PRIORITY_HIGHEST, PRIORITY_LOWEST, PRIORITY_SYSTEM, PRIORITY_USER, VERSION |
| Constructor Summary | |
|---|---|
AccessController()
|
|
| Method Summary | |
|---|---|
void |
checkPermissions(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.CheckPermissionsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.CheckPermissionsResponse> done)
|
TableAuthManager |
getAuthManager()
|
HRegion |
getRegion()
|
com.google.protobuf.Service |
getService()
|
void |
getUserPermissions(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GetUserPermissionsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GetUserPermissionsResponse> done)
|
void |
grant(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GrantRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GrantResponse> done)
|
static boolean |
isAuthorizationSupported(org.apache.hadoop.conf.Configuration conf)
|
static boolean |
isCellAuthorizationSupported(org.apache.hadoop.conf.Configuration conf)
|
ReplicationEndpoint |
postCreateReplicationEndPoint(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
ReplicationEndpoint endpoint)
This will be called after the replication endpoint is instantiated. |
void |
postCreateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
HTableDescriptor desc,
HRegionInfo[] regions)
Called after the createTable operation has been requested. |
void |
postDelete(ObserverContext<RegionCoprocessorEnvironment> c,
Delete delete,
WALEdit edit,
Durability durability)
Called after the client deletes a value. |
void |
postDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
byte[] col)
Called after the column family has been deleted. |
void |
postDeleteNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
String namespace)
Called after the deleteNamespace operation has been requested. |
void |
postDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after the deleteTable operation has been requested. |
void |
postEndpointInvocation(ObserverContext<RegionCoprocessorEnvironment> ctx,
com.google.protobuf.Service service,
String methodName,
com.google.protobuf.Message request,
com.google.protobuf.Message.Builder responseBuilder)
Called after an Endpoint service method is invoked. |
void |
postLogReplay(ObserverContext<RegionCoprocessorEnvironment> c)
Called after the log replay on the region is over. |
void |
postMerge(ObserverContext<RegionServerCoprocessorEnvironment> c,
HRegion regionA,
HRegion regionB,
HRegion mergedRegion)
called after the regions merge. |
void |
postMergeCommit(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB,
HRegion mergedRegion)
This will be called after PONR step as part of regions merge transaction. |
void |
postModifyTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HTableDescriptor htd)
Called after the modifyTable operation has been requested. |
Cell |
postMutationBeforeWAL(ObserverContext<RegionCoprocessorEnvironment> ctx,
RegionObserver.MutationType opType,
Mutation mutation,
Cell oldCell,
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> c)
Called after the region is reported as open to the master. |
void |
postPut(ObserverContext<RegionCoprocessorEnvironment> c,
Put put,
WALEdit edit,
Durability durability)
Called after the client stores a value. |
void |
postReplicateLogEntries(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
List<org.apache.hadoop.hbase.protobuf.generated.AdminProtos.WALEntry> entries,
CellScanner cells)
This will be called after executing replication request to shipping log entries. |
void |
postRollBackMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB)
This will be called after the roll back of the regions merge. |
void |
postRollWALWriterRequest(ObserverContext<RegionServerCoprocessorEnvironment> ctx)
This will be called after executing user request to roll a region server WAL. |
void |
postScannerClose(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s)
Called after the client closes a scanner. |
RegionScanner |
postScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c,
Scan scan,
RegionScanner s)
Called after the client opens a new scanner. |
void |
postStartMaster(ObserverContext<MasterCoprocessorEnvironment> ctx)
Called immediately after an active master instance has completed initialization. |
void |
postTruncateTable(ObserverContext<MasterCoprocessorEnvironment> ctx,
TableName tableName)
Called after the truncateTable operation has been requested. |
void |
postTruncateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after HMaster truncates a
table. |
void |
preAddColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor column)
Called prior to adding a new column family to the table. |
Result |
preAppend(ObserverContext<RegionCoprocessorEnvironment> c,
Append append)
Called before Append. |
Result |
preAppendAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
Append append)
Called before Append but after acquiring rowlock. |
void |
preAssign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo)
Called prior to assigning a specific region. |
void |
preBalance(ObserverContext<MasterCoprocessorEnvironment> c)
Called prior to requesting rebalancing of the cluster regions, though after the initial checks for regions in transition and the balance switch flag. |
boolean |
preBalanceSwitch(ObserverContext<MasterCoprocessorEnvironment> c,
boolean newValue)
Called prior to modifying the flag used to enable/disable region balancing. |
void |
preBatchMutate(ObserverContext<RegionCoprocessorEnvironment> c,
MiniBatchOperationInProgress<Mutation> miniBatchOp)
This will be called for every batch mutation operation happening at the server. |
void |
preBulkLoadHFile(ObserverContext<RegionCoprocessorEnvironment> ctx,
List<Pair<byte[],String>> familyPaths)
Verifies user has CREATE privileges on the Column Families involved in the bulkLoadHFile request. |
boolean |
preCheckAndDelete(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Delete delete,
boolean result)
Called before checkAndDelete. |
boolean |
preCheckAndDeleteAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Delete delete,
boolean result)
Called before checkAndDelete but after acquiring rowock. |
boolean |
preCheckAndPut(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Put put,
boolean result)
Called before checkAndPut. |
boolean |
preCheckAndPutAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Put put,
boolean result)
Called before checkAndPut but after acquiring rowlock. |
void |
preCleanupBulkLoad(ObserverContext<RegionCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.SecureBulkLoadProtos.CleanupBulkLoadRequest request)
Authorization security check for SecureBulkLoadProtocol.cleanupBulkLoad() |
void |
preCloneSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called before a snapshot is cloned. |
void |
preClose(ObserverContext<RegionCoprocessorEnvironment> e,
boolean abortRequested)
Called before the region is reported as closed to the master. |
InternalScanner |
preCompact(ObserverContext<RegionCoprocessorEnvironment> e,
Store store,
InternalScanner scanner,
ScanType scanType)
Called prior to writing the StoreFiles selected for compaction into a new
StoreFile. |
void |
preCreateNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
NamespaceDescriptor ns)
Called before a new namespace is created by HMaster. |
void |
preCreateTable(ObserverContext<MasterCoprocessorEnvironment> c,
HTableDescriptor desc,
HRegionInfo[] regions)
Called before a new table is created by HMaster. |
void |
preDelete(ObserverContext<RegionCoprocessorEnvironment> c,
Delete delete,
WALEdit edit,
Durability durability)
Called before the client deletes a value. |
void |
preDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
byte[] col)
Called prior to deleting the entire column family. |
void |
preDeleteNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
String namespace)
Called before HMaster deletes a
namespace
It can't bypass the default action, e.g., ctx.bypass() won't have effect. |
void |
preDeleteSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot)
Called before a snapshot is deleted. |
void |
preDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called before HMaster deletes a
table. |
void |
preDisableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called prior to disabling a table. |
void |
preEnableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called prior to enabling a table. |
com.google.protobuf.Message |
preEndpointInvocation(ObserverContext<RegionCoprocessorEnvironment> ctx,
com.google.protobuf.Service service,
String methodName,
com.google.protobuf.Message request)
Called before an Endpoint service method is invoked. |
boolean |
preExists(ObserverContext<RegionCoprocessorEnvironment> c,
Get get,
boolean exists)
Called before the client tests for existence using a Get. |
void |
preFlush(ObserverContext<RegionCoprocessorEnvironment> e)
Called before the memstore is flushed to disk. |
void |
preGetClosestRowBefore(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
Result result)
Called before a client makes a GetClosestRowBefore request. |
void |
preGetOp(ObserverContext<RegionCoprocessorEnvironment> c,
Get get,
List<Cell> result)
Called before the client performs a Get |
void |
preGetTableDescriptors(ObserverContext<MasterCoprocessorEnvironment> ctx,
List<TableName> tableNamesList,
List<HTableDescriptor> descriptors)
Called before a getTableDescriptors request has been processed. |
Result |
preIncrement(ObserverContext<RegionCoprocessorEnvironment> c,
Increment increment)
Called before Increment. |
Result |
preIncrementAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
Increment increment)
Called before Increment but after acquiring rowlock. |
long |
preIncrementColumnValue(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
long amount,
boolean writeToWAL)
Called before incrementColumnValue |
void |
preMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB)
Called before the regions merge. |
void |
preMergeCommit(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB,
List<Mutation> metaEntries)
This will be called before PONR step as part of regions merge transaction. |
void |
preModifyColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor descriptor)
Called prior to modifying a column family's attributes. |
void |
preModifyNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
NamespaceDescriptor ns)
Called prior to modifying a namespace's properties. |
void |
preModifyTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HTableDescriptor htd)
Called prior to modifying a table's properties. |
void |
preMove(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo region,
ServerName srcServer,
ServerName destServer)
Called prior to moving a given region from one region server to another. |
void |
preOpen(ObserverContext<RegionCoprocessorEnvironment> e)
Called before the region is reported as open to the master. |
void |
prePrepareBulkLoad(ObserverContext<RegionCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.SecureBulkLoadProtos.PrepareBulkLoadRequest request)
Authorization check for SecureBulkLoadProtocol.prepareBulkLoad() |
void |
prePut(ObserverContext<RegionCoprocessorEnvironment> c,
Put put,
WALEdit edit,
Durability durability)
Called before the client stores a value. |
void |
preRegionOffline(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo)
Called prior to marking a given region as offline. |
void |
preReplicateLogEntries(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
List<org.apache.hadoop.hbase.protobuf.generated.AdminProtos.WALEntry> entries,
CellScanner cells)
This will be called before executing replication request to shipping log entries. |
void |
preRestoreSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called before a snapshot is restored. |
void |
preRollBackMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB)
This will be called before the roll back of the regions merge. |
void |
preRollWALWriterRequest(ObserverContext<RegionServerCoprocessorEnvironment> ctx)
This will be called before executing user request to roll a region server WAL. |
void |
preScannerClose(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s)
Called before the client closes a scanner. |
boolean |
preScannerNext(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s,
List<Result> result,
int limit,
boolean hasNext)
Called before the client asks for the next row on a scanner. |
RegionScanner |
preScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c,
Scan scan,
RegionScanner s)
Called before the client opens a new scanner. |
void |
preShutdown(ObserverContext<MasterCoprocessorEnvironment> c)
Called prior to shutting down the full HBase cluster, including this HMaster process. |
void |
preSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called before a new snapshot is taken. |
void |
preSplit(ObserverContext<RegionCoprocessorEnvironment> e)
Called before the region is split. |
void |
preSplit(ObserverContext<RegionCoprocessorEnvironment> e,
byte[] splitRow)
Called before the region is split. |
void |
preStopMaster(ObserverContext<MasterCoprocessorEnvironment> c)
Called immediately prior to stopping this HMaster process. |
void |
preStopRegionServer(ObserverContext<RegionServerCoprocessorEnvironment> env)
Called before stopping region server. |
void |
preTruncateTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called before HMaster truncates a
table. |
void |
preTruncateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called before HMaster truncates a
table. |
void |
preUnassign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo,
boolean force)
Called prior to unassigning a given region. |
void |
requireNamespacePermission(String request,
String namespace,
Permission.Action... permissions)
Checks that the user has the given global or namespace permission. |
void |
requireNamespacePermission(String request,
String namespace,
TableName tableName,
Map<byte[],? extends Collection<byte[]>> familyMap,
Permission.Action... permissions)
Checks that the user has the given global or namespace permission. |
void |
revoke(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.RevokeRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.RevokeResponse> done)
|
void |
start(CoprocessorEnvironment env)
|
void |
stop(CoprocessorEnvironment env)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final org.apache.commons.logging.Log LOG
| Constructor Detail |
|---|
public AccessController()
| Method Detail |
|---|
public static boolean isAuthorizationSupported(org.apache.hadoop.conf.Configuration conf)
public static boolean isCellAuthorizationSupported(org.apache.hadoop.conf.Configuration conf)
public HRegion getRegion()
public TableAuthManager getAuthManager()
public void requireNamespacePermission(String request,
String namespace,
Permission.Action... permissions)
throws IOException
namespace - permissions - Actions being requested
IOException
public void requireNamespacePermission(String request,
String namespace,
TableName tableName,
Map<byte[],? extends Collection<byte[]>> familyMap,
Permission.Action... permissions)
throws IOException
namespace - permissions - Actions being requested
IOException
public void start(CoprocessorEnvironment env)
throws IOException
start in interface Coprocessorstart in class BaseMasterAndRegionObserverIOExceptionpublic void stop(CoprocessorEnvironment env)
stop in interface Coprocessorstop in class BaseMasterAndRegionObserver
public void preTruncateTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserverHMaster truncates a
table. Called as part of truncate table RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
preTruncateTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void postTruncateTable(ObserverContext<MasterCoprocessorEnvironment> ctx,
TableName tableName)
throws IOException
MasterObserver
postTruncateTable in interface MasterObserverctx - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void preTruncateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserverHMaster truncates a
table. Called as part of truncate table handler and it is sync
to the truncate RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
preTruncateTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void postTruncateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserverHMaster truncates a
table. Called as part of truncate table handler and it is sync to the
truncate RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
postTruncateTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void preCreateTable(ObserverContext<MasterCoprocessorEnvironment> c,
HTableDescriptor desc,
HRegionInfo[] regions)
throws IOException
MasterObserverHMaster. Called as part of create
table RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
preCreateTable in interface MasterObserverpreCreateTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and masterdesc - the HTableDescriptor for the tableregions - the initial regions created for the table
IOException
public void postCreateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
HTableDescriptor desc,
HRegionInfo[] regions)
throws IOException
MasterObserver
postCreateTableHandler in interface MasterObserverpostCreateTableHandler in class BaseMasterAndRegionObserverc - the environment to interact with the framework and masterdesc - the HTableDescriptor for the tableregions - the initial regions created for the table
IOException
public void preDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserverHMaster deletes a
table. Called as part of delete table RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
preDeleteTable in interface MasterObserverpreDeleteTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void postDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserver
postDeleteTable in interface MasterObserverpostDeleteTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void preModifyTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HTableDescriptor htd)
throws IOException
MasterObserver
preModifyTable in interface MasterObserverpreModifyTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the tablehtd - the HTableDescriptor
IOException
public void postModifyTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HTableDescriptor htd)
throws IOException
MasterObserver
postModifyTable in interface MasterObserverpostModifyTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the tablehtd - the HTableDescriptor
IOException
public void preAddColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor column)
throws IOException
MasterObserver
preAddColumn in interface MasterObserverpreAddColumn in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the tablecolumn - the HColumnDescriptor
IOException
public void preModifyColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor descriptor)
throws IOException
MasterObserver
preModifyColumn in interface MasterObserverpreModifyColumn in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the tabledescriptor - the HColumnDescriptor
IOException
public void preDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
byte[] col)
throws IOException
MasterObserver
preDeleteColumn in interface MasterObserverpreDeleteColumn in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the tablecol - the column
IOException
public void postDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
byte[] col)
throws IOException
MasterObserver
postDeleteColumn in interface MasterObserverpostDeleteColumn in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the tablecol - the column
IOException
public void preEnableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserver
preEnableTable in interface MasterObserverpreEnableTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void preDisableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
throws IOException
MasterObserver
preDisableTable in interface MasterObserverpreDisableTable in class BaseMasterAndRegionObserverc - the environment to interact with the framework and mastertableName - the name of the table
IOException
public void preMove(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo region,
ServerName srcServer,
ServerName destServer)
throws IOException
MasterObserver
preMove in interface MasterObserverpreMove in class BaseMasterAndRegionObserverc - the environment to interact with the framework and masterregion - the HRegionInfosrcServer - the source ServerNamedestServer - the destination ServerName
IOException
public void preAssign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo)
throws IOException
MasterObserver
preAssign in interface MasterObserverpreAssign in class BaseMasterAndRegionObserverc - the environment to interact with the framework and masterregionInfo - the regionInfo of the region
IOException
public void preUnassign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo,
boolean force)
throws IOException
MasterObserver
preUnassign in interface MasterObserverpreUnassign in class BaseMasterAndRegionObserverc - the environment to interact with the framework and masterforce - whether to force unassignment or not
IOException
public void preRegionOffline(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo)
throws IOException
MasterObserverctx.bypass() will not have any
impact on this hook.
preRegionOffline in interface MasterObserverpreRegionOffline in class BaseMasterAndRegionObserverc - the environment to interact with the framework and master
IOException
public void preBalance(ObserverContext<MasterCoprocessorEnvironment> c)
throws IOException
MasterObserver
preBalance in interface MasterObserverpreBalance in class BaseMasterAndRegionObserverc - the environment to interact with the framework and master
IOException
public boolean preBalanceSwitch(ObserverContext<MasterCoprocessorEnvironment> c,
boolean newValue)
throws IOException
MasterObserver
preBalanceSwitch in interface MasterObserverpreBalanceSwitch in class BaseMasterAndRegionObserverc - the coprocessor instance's environmentnewValue - the new flag value submitted in the call
IOException
public void preShutdown(ObserverContext<MasterCoprocessorEnvironment> c)
throws IOException
MasterObserverHMaster process.
preShutdown in interface MasterObserverpreShutdown in class BaseMasterAndRegionObserverIOException
public void preStopMaster(ObserverContext<MasterCoprocessorEnvironment> c)
throws IOException
MasterObserverHMaster process.
preStopMaster in interface MasterObserverpreStopMaster in class BaseMasterAndRegionObserverIOException
public void postStartMaster(ObserverContext<MasterCoprocessorEnvironment> ctx)
throws IOException
MasterObserver
postStartMaster in interface MasterObserverpostStartMaster in class BaseMasterAndRegionObserverIOException
public void preSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
throws IOException
MasterObserver
preSnapshot in interface MasterObserverpreSnapshot in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to snapshot
IOException
public void preCloneSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
throws IOException
MasterObserver
preCloneSnapshot in interface MasterObserverpreCloneSnapshot in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to create
IOException
public void preRestoreSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
throws IOException
MasterObserver
preRestoreSnapshot in interface MasterObserverpreRestoreSnapshot in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to restore
IOException
public void preDeleteSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription snapshot)
throws IOException
MasterObserver
preDeleteSnapshot in interface MasterObserverpreDeleteSnapshot in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor of the snapshot to delete
IOException
public void preCreateNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
NamespaceDescriptor ns)
throws IOException
MasterObserverHMaster.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
preCreateNamespace in interface MasterObserverpreCreateNamespace in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and masterns - the NamespaceDescriptor for the table
IOException
public void preDeleteNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
String namespace)
throws IOException
MasterObserverHMaster deletes a
namespace
It can't bypass the default action, e.g., ctx.bypass() won't have effect.
preDeleteNamespace in interface MasterObserverpreDeleteNamespace in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and masternamespace - the name of the namespace
IOException
public void postDeleteNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
String namespace)
throws IOException
MasterObserver
postDeleteNamespace in interface MasterObserverpostDeleteNamespace in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and masternamespace - the name of the namespace
IOException
public void preModifyNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
NamespaceDescriptor ns)
throws IOException
MasterObserver
preModifyNamespace in interface MasterObserverpreModifyNamespace in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and masterns - the NamespaceDescriptor
IOException
public void preOpen(ObserverContext<RegionCoprocessorEnvironment> e)
throws IOException
RegionObserver
preOpen in interface RegionObserverpreOpen in class BaseRegionObservere - the environment provided by the region server
IOException - if an error occurred on the coprocessorpublic void postOpen(ObserverContext<RegionCoprocessorEnvironment> c)
RegionObserver
postOpen in interface RegionObserverpostOpen in class BaseRegionObserverc - the environment provided by the region serverpublic void postLogReplay(ObserverContext<RegionCoprocessorEnvironment> c)
RegionObserver
postLogReplay in interface RegionObserverpostLogReplay in class BaseRegionObserverc - the environment provided by the region server
public void preFlush(ObserverContext<RegionCoprocessorEnvironment> e)
throws IOException
RegionObserver
preFlush in interface RegionObserverpreFlush in class BaseRegionObservere - the environment provided by the region server
IOException - if an error occurred on the coprocessor
public void preSplit(ObserverContext<RegionCoprocessorEnvironment> e)
throws IOException
RegionObserver
preSplit in interface RegionObserverpreSplit in class BaseRegionObservere - the environment provided by the region server
(e.getRegion() returns the parent region)
IOException - if an error occurred on the coprocessor
public void preSplit(ObserverContext<RegionCoprocessorEnvironment> e,
byte[] splitRow)
throws IOException
RegionObserver
preSplit in interface RegionObserverpreSplit in class BaseRegionObservere - the environment provided by the region server
(e.getRegion() returns the parent region)
IOException - if an error occurred on the coprocessor
public InternalScanner preCompact(ObserverContext<RegionCoprocessorEnvironment> e,
Store store,
InternalScanner scanner,
ScanType scanType)
throws IOException
RegionObserverStoreFiles selected for compaction into a new
StoreFile. To override or modify the compaction process, implementing classes have two
options:
InternalScanner with a custom implementation that is returned
from this method. The custom scanner can then inspect KeyValues from the wrapped
scanner, applying its own policy to what gets written.ObserverContext.bypass() and provide a
custom implementation for writing of new StoreFiles. Note: any implementations
bypassing core compaction using this approach must write out new store files themselves or the
existing data will no longer be available after compaction.
preCompact in interface RegionObserverpreCompact in class BaseRegionObservere - the environment provided by the region serverstore - the store being compactedscanner - the scanner over existing data used in the store file rewritingscanType - type of Scan
null unless the
implementation is writing new store files on its own.
IOException - if an error occurred on the coprocessor
public void preGetClosestRowBefore(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
Result result)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preGetClosestRowBefore in interface RegionObserverpreGetClosestRowBefore in class BaseRegionObserverc - the environment provided by the region serverrow - the rowfamily - the familyresult - 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.
IOException - if an error occurred on the coprocessor
public void preGetOp(ObserverContext<RegionCoprocessorEnvironment> c,
Get get,
List<Cell> result)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preGetOp in interface RegionObserverpreGetOp in class BaseRegionObserverc - the environment provided by the region serverget - the Get requestresult - 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.
IOException - if an error occurred on the coprocessor
public boolean preExists(ObserverContext<RegionCoprocessorEnvironment> c,
Get get,
boolean exists)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preExists in interface RegionObserverpreExists in class BaseRegionObserverc - the environment provided by the region serverget - the Get request
IOException - if an error occurred on the coprocessor
public void prePut(ObserverContext<RegionCoprocessorEnvironment> c,
Put put,
WALEdit edit,
Durability durability)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
prePut in interface RegionObserverprePut in class BaseRegionObserverc - the environment provided by the region serverput - The Put objectedit - The WALEdit object that will be written to the waldurability - Persistence guarantee for this Put
IOException - if an error occurred on the coprocessor
public void postPut(ObserverContext<RegionCoprocessorEnvironment> c,
Put put,
WALEdit edit,
Durability durability)
RegionObserverCall CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
postPut in interface RegionObserverpostPut in class BaseRegionObserverc - the environment provided by the region serverput - The Put objectedit - The WALEdit object for the waldurability - Persistence guarantee for this Put
public void preDelete(ObserverContext<RegionCoprocessorEnvironment> c,
Delete delete,
WALEdit edit,
Durability durability)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preDelete in interface RegionObserverpreDelete in class BaseRegionObserverc - the environment provided by the region serverdelete - The Delete objectedit - The WALEdit object for the waldurability - Persistence guarantee for this Delete
IOException - if an error occurred on the coprocessor
public void preBatchMutate(ObserverContext<RegionCoprocessorEnvironment> c,
MiniBatchOperationInProgress<Mutation> miniBatchOp)
throws IOException
RegionObserverMiniBatchOperationInProgress.setOperationStatus(int, OperationStatus)),
RegionObserver can make HRegion to skip these Mutations.
preBatchMutate in interface RegionObserverpreBatchMutate in class BaseRegionObserverc - the environment provided by the region serverminiBatchOp - batch of Mutations getting applied to region.
IOException - if an error occurred on the coprocessor
public void postDelete(ObserverContext<RegionCoprocessorEnvironment> c,
Delete delete,
WALEdit edit,
Durability durability)
throws IOException
RegionObserverCall CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
postDelete in interface RegionObserverpostDelete in class BaseRegionObserverc - the environment provided by the region serverdelete - The Delete objectedit - The WALEdit object for the waldurability - Persistence guarantee for this Delete
IOException - if an error occurred on the coprocessor
public boolean preCheckAndPut(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Put put,
boolean result)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preCheckAndPut in interface RegionObserverpreCheckAndPut in class BaseRegionObserverc - the environment provided by the region serverrow - row to checkfamily - column familyqualifier - column qualifiercompareOp - the comparison operationcomparator - the comparatorput - data to put if check succeeds
IOException - if an error occurred on the coprocessor
public boolean preCheckAndPutAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Put put,
boolean result)
throws IOException
RegionObserverNote: Caution to be taken for not doing any long time operation in this hook. Row will be locked for longer time. Trying to acquire lock on another row, within this, can lead to potential deadlock.
Call CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preCheckAndPutAfterRowLock in interface RegionObserverpreCheckAndPutAfterRowLock in class BaseRegionObserverc - the environment provided by the region serverrow - row to checkfamily - column familyqualifier - column qualifiercompareOp - the comparison operationcomparator - the comparatorput - data to put if check succeeds
IOException - if an error occurred on the coprocessor
public boolean preCheckAndDelete(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Delete delete,
boolean result)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preCheckAndDelete in interface RegionObserverpreCheckAndDelete in class BaseRegionObserverc - the environment provided by the region serverrow - row to checkfamily - column familyqualifier - column qualifiercompareOp - the comparison operationcomparator - the comparatordelete - delete to commit if check succeeds
IOException - if an error occurred on the coprocessor
public boolean preCheckAndDeleteAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Delete delete,
boolean result)
throws IOException
RegionObserverNote: Caution to be taken for not doing any long time operation in this hook. Row will be locked for longer time. Trying to acquire lock on another row, within this, can lead to potential deadlock.
Call CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preCheckAndDeleteAfterRowLock in interface RegionObserverpreCheckAndDeleteAfterRowLock in class BaseRegionObserverc - the environment provided by the region serverrow - row to checkfamily - column familyqualifier - column qualifiercompareOp - the comparison operationcomparator - the comparatordelete - delete to commit if check succeeds
IOException - if an error occurred on the coprocessor
public long preIncrementColumnValue(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
long amount,
boolean writeToWAL)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preIncrementColumnValue in interface RegionObserverpreIncrementColumnValue in class BaseRegionObserverc - the environment provided by the region serverrow - row to checkfamily - column familyqualifier - column qualifieramount - long amount to incrementwriteToWAL - true if the change should be written to the WAL
IOException - if an error occurred on the coprocessor
public Result preAppend(ObserverContext<RegionCoprocessorEnvironment> c,
Append append)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preAppend in interface RegionObserverpreAppend in class BaseRegionObserverc - the environment provided by the region serverappend - Append object
IOException - if an error occurred on the coprocessor
public Result preAppendAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
Append append)
throws IOException
RegionObserverNote: Caution to be taken for not doing any long time operation in this hook. Row will be locked for longer time. Trying to acquire lock on another row, within this, can lead to potential deadlock.
Call CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preAppendAfterRowLock in interface RegionObserverpreAppendAfterRowLock in class BaseRegionObserverc - the environment provided by the region serverappend - Append object
IOException - if an error occurred on the coprocessor
public Result preIncrement(ObserverContext<RegionCoprocessorEnvironment> c,
Increment increment)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preIncrement in interface RegionObserverpreIncrement in class BaseRegionObserverc - the environment provided by the region serverincrement - increment object
IOException - if an error occurred on the coprocessor
public Result preIncrementAfterRowLock(ObserverContext<RegionCoprocessorEnvironment> c,
Increment increment)
throws IOException
RegionObserverNote: Caution to be taken for not doing any long time operation in this hook. Row will be locked for longer time. Trying to acquire lock on another row, within this, can lead to potential deadlock.
Call CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preIncrementAfterRowLock in interface RegionObserverpreIncrementAfterRowLock in class BaseRegionObserverc - the environment provided by the region serverincrement - increment object
IOException - if an error occurred on the coprocessor
public Cell postMutationBeforeWAL(ObserverContext<RegionCoprocessorEnvironment> ctx,
RegionObserver.MutationType opType,
Mutation mutation,
Cell oldCell,
Cell newCell)
throws IOException
RegionObserverObserverContext.bypass() has no
effect in this hook.
postMutationBeforeWAL in interface RegionObserverpostMutationBeforeWAL in class BaseRegionObserverctx - the environment provided by the region serveropType - the operation typemutation - the current mutationoldCell - old cell containing previous valuenewCell - the new cell containing the computed value
IOException
public RegionScanner preScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c,
Scan scan,
RegionScanner s)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preScannerOpen in interface RegionObserverpreScannerOpen in class BaseRegionObserverc - the environment provided by the region serverscan - the Scan specifications - if not null, the base scanner
IOException - if an error occurred on the coprocessor
public RegionScanner postScannerOpen(ObserverContext<RegionCoprocessorEnvironment> c,
Scan scan,
RegionScanner s)
throws IOException
RegionObserverCall CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
postScannerOpen in interface RegionObserverpostScannerOpen in class BaseRegionObserverc - the environment provided by the region serverscan - the Scan specifications - if not null, the base scanner
IOException - if an error occurred on the coprocessor
public boolean preScannerNext(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s,
List<Result> result,
int limit,
boolean hasNext)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preScannerNext in interface RegionObserverpreScannerNext in class BaseRegionObserverc - 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' indication
IOException - if an error occurred on the coprocessor
public void preScannerClose(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s)
throws IOException
RegionObserverCall CoprocessorEnvironment#bypass to skip default actions
Call CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
preScannerClose in interface RegionObserverpreScannerClose in class BaseRegionObserverc - the environment provided by the region servers - the scanner
IOException - if an error occurred on the coprocessor
public void postScannerClose(ObserverContext<RegionCoprocessorEnvironment> c,
InternalScanner s)
throws IOException
RegionObserverCall CoprocessorEnvironment#complete to skip any subsequent chained coprocessors
postScannerClose in interface RegionObserverpostScannerClose in class BaseRegionObserverc - the environment provided by the region servers - the scanner
IOException - if an error occurred on the coprocessor
public void preBulkLoadHFile(ObserverContext<RegionCoprocessorEnvironment> ctx,
List<Pair<byte[],String>> familyPaths)
throws IOException
preBulkLoadHFile in interface RegionObserverpreBulkLoadHFile in class BaseRegionObserverfamilyPaths - pairs of { CF, HFile path } submitted for bulk load. Adding
or removing from this list will add or remove HFiles to be bulk loaded.
IOException
public void prePrepareBulkLoad(ObserverContext<RegionCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.SecureBulkLoadProtos.PrepareBulkLoadRequest request)
throws IOException
prePrepareBulkLoad in interface BulkLoadObserverctx - the contextrequest - the request
IOException
public void preCleanupBulkLoad(ObserverContext<RegionCoprocessorEnvironment> ctx,
org.apache.hadoop.hbase.protobuf.generated.SecureBulkLoadProtos.CleanupBulkLoadRequest request)
throws IOException
preCleanupBulkLoad in interface BulkLoadObserverctx - the contextrequest - the request
IOException
public com.google.protobuf.Message preEndpointInvocation(ObserverContext<RegionCoprocessorEnvironment> ctx,
com.google.protobuf.Service service,
String methodName,
com.google.protobuf.Message request)
throws IOException
EndpointObserverObserverContext.bypass() has no
effect in this hook.
preEndpointInvocation in interface EndpointObserverctx - the environment provided by the region serverservice - the endpoint servicemethodName - the invoked service methodrequest - the request message
IOException
public void postEndpointInvocation(ObserverContext<RegionCoprocessorEnvironment> ctx,
com.google.protobuf.Service service,
String methodName,
com.google.protobuf.Message request,
com.google.protobuf.Message.Builder responseBuilder)
throws IOException
EndpointObserver
postEndpointInvocation in interface EndpointObserverctx - the environment provided by the region serverservice - the endpoint servicemethodName - the invoked service methodrequest - the request messageresponseBuilder - the response message builder
IOException
public void grant(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GrantRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GrantResponse> done)
grant in interface org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.AccessControlService.Interface
public void revoke(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.RevokeRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.RevokeResponse> done)
revoke in interface org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.AccessControlService.Interface
public void getUserPermissions(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GetUserPermissionsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GetUserPermissionsResponse> done)
getUserPermissions in interface org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.AccessControlService.Interface
public void checkPermissions(com.google.protobuf.RpcController controller,
org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.CheckPermissionsRequest request,
com.google.protobuf.RpcCallback<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.CheckPermissionsResponse> done)
checkPermissions in interface org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.AccessControlService.Interfacepublic com.google.protobuf.Service getService()
getService in interface CoprocessorService
public void preClose(ObserverContext<RegionCoprocessorEnvironment> e,
boolean abortRequested)
throws IOException
RegionObserver
preClose in interface RegionObserverpreClose in class BaseRegionObservere - the environment provided by the region serverabortRequested - true if the region server is aborting
IOException
public void preStopRegionServer(ObserverContext<RegionServerCoprocessorEnvironment> env)
throws IOException
RegionServerObserver
preStopRegionServer in interface RegionServerObserverenv - An instance of RegionServerCoprocessorEnvironment
IOException - Signals that an I/O exception has occurred.
public void preGetTableDescriptors(ObserverContext<MasterCoprocessorEnvironment> ctx,
List<TableName> tableNamesList,
List<HTableDescriptor> descriptors)
throws IOException
MasterObserver
preGetTableDescriptors in interface MasterObserverpreGetTableDescriptors in class BaseMasterAndRegionObserverctx - the environment to interact with the framework and mastertableNamesList - the list of table names, or null if querying for alldescriptors - an empty list, can be filled with what to return if bypassing
IOException
public void preMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB)
throws IOException
RegionServerObserverObserverContext.bypass() to skip the merge.
preMerge in interface RegionServerObserverIOException - if an error occurred on the coprocessor
public void postMerge(ObserverContext<RegionServerCoprocessorEnvironment> c,
HRegion regionA,
HRegion regionB,
HRegion mergedRegion)
throws IOException
RegionServerObserver
postMerge in interface RegionServerObserverIOException
public void preMergeCommit(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB,
List<Mutation> metaEntries)
throws IOException
RegionServerObserverObserverContext.bypass() rollback the merge
preMergeCommit in interface RegionServerObservermetaEntries - mutations to execute on hbase:meta atomically with regions merge updates.
Any puts or deletes to execute on hbase:meta can be added to the mutations.
IOException
public void postMergeCommit(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB,
HRegion mergedRegion)
throws IOException
RegionServerObserver
postMergeCommit in interface RegionServerObserverIOException
public void preRollBackMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB)
throws IOException
RegionServerObserver
preRollBackMerge in interface RegionServerObserverIOException
public void postRollBackMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
HRegion regionA,
HRegion regionB)
throws IOException
RegionServerObserver
postRollBackMerge in interface RegionServerObserverIOException
public void preRollWALWriterRequest(ObserverContext<RegionServerCoprocessorEnvironment> ctx)
throws IOException
RegionServerObserver
preRollWALWriterRequest in interface RegionServerObserverctx - An instance of ObserverContext
IOException - Signals that an I/O exception has occurred.
public void postRollWALWriterRequest(ObserverContext<RegionServerCoprocessorEnvironment> ctx)
throws IOException
RegionServerObserver
postRollWALWriterRequest in interface RegionServerObserverctx - An instance of ObserverContext
IOException - Signals that an I/O exception has occurred.
public ReplicationEndpoint postCreateReplicationEndPoint(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
ReplicationEndpoint endpoint)
RegionServerObserver
postCreateReplicationEndPoint in interface RegionServerObserverendpoint - - the base endpoint for replication
public void preReplicateLogEntries(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
List<org.apache.hadoop.hbase.protobuf.generated.AdminProtos.WALEntry> entries,
CellScanner cells)
throws IOException
RegionServerObserver
preReplicateLogEntries in interface RegionServerObserverctx - An instance of ObserverContextentries - list of WALEntries to replicatecells - Cells that the WALEntries refer to (if cells is non-null)
IOException - Signals that an I/O exception has occurred.
public void postReplicateLogEntries(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
List<org.apache.hadoop.hbase.protobuf.generated.AdminProtos.WALEntry> entries,
CellScanner cells)
throws IOException
RegionServerObserver
postReplicateLogEntries in interface RegionServerObserverctx - An instance of ObserverContextentries - list of WALEntries to replicatecells - Cells that the WALEntries refer to (if cells is non-null)
IOException - Signals that an I/O exception has occurred.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||