public class AccessController extends BaseRegionObserver implements MasterObserver, RegionServerObserver, AccessControlProtos.AccessControlService.Interface, CoprocessorService
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
RpcServer 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.
Coprocessor.State| Modifier and Type | Field and Description |
|---|---|
static org.apache.commons.logging.Log |
LOG |
PRIORITY_HIGHEST, PRIORITY_LOWEST, PRIORITY_SYSTEM, PRIORITY_USER, VERSION| Constructor and Description |
|---|
AccessController() |
| Modifier and Type | Method and Description |
|---|---|
void |
checkPermissions(RpcController controller,
AccessControlProtos.CheckPermissionsRequest request,
RpcCallback<AccessControlProtos.CheckPermissionsResponse> done) |
Service |
getService() |
void |
getUserPermissions(RpcController controller,
AccessControlProtos.GetUserPermissionsRequest request,
RpcCallback<AccessControlProtos.GetUserPermissionsResponse> done) |
void |
grant(RpcController controller,
AccessControlProtos.GrantRequest request,
RpcCallback<AccessControlProtos.GrantResponse> done) |
void |
postAddColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor column)
Called after the new column family has been created.
|
void |
postAddColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor column)
Called after the new column family has been created.
|
void |
postAssign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo)
Called after the region assignment has been requested.
|
void |
postBalance(ObserverContext<MasterCoprocessorEnvironment> c,
List<RegionPlan> plans)
Called after the balancing plan has been submitted.
|
void |
postBalanceSwitch(ObserverContext<MasterCoprocessorEnvironment> c,
boolean oldValue,
boolean newValue)
Called after the flag to enable/disable balancing has changed.
|
void |
postCloneSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called after a snapshot clone operation has been requested.
|
void |
postCreateNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
NamespaceDescriptor ns)
Called after the createNamespace operation has been requested.
|
void |
postCreateTable(ObserverContext<MasterCoprocessorEnvironment> c,
HTableDescriptor desc,
HRegionInfo[] regions)
Called after the createTable operation has been requested.
|
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 |
postDeleteColumnHandler(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 |
postDeleteSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
HBaseProtos.SnapshotDescription snapshot)
Called after the delete snapshot operation has been requested.
|
void |
postDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after the deleteTable operation has been requested.
|
void |
postDeleteTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after
HMaster deletes a
table. |
void |
postDisableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after the disableTable operation has been requested.
|
void |
postDisableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after the disableTable operation has been requested.
|
void |
postEnableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after the enableTable operation has been requested.
|
void |
postEnableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called after the enableTable operation has been requested.
|
void |
postGetTableDescriptors(ObserverContext<MasterCoprocessorEnvironment> ctx,
List<HTableDescriptor> descriptors)
Called after a getTableDescriptors request has been processed.
|
void |
postLogReplay(ObserverContext<RegionCoprocessorEnvironment> c)
Called after the log replay on the region is over.
|
void |
postModifyColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor descriptor)
Called after the column family has been updated.
|
void |
postModifyColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor descriptor)
Called after the column family has been updated.
|
void |
postModifyNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx,
NamespaceDescriptor ns)
Called after the modifyNamespace operation has been requested.
|
void |
postModifyTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HTableDescriptor htd)
Called after the modifyTable operation has been requested.
|
void |
postModifyTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HTableDescriptor htd)
Called after to modifying a table's properties.
|
void |
postMove(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo region,
ServerName srcServer,
ServerName destServer)
Called after the region move has been requested.
|
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 |
postRegionOffline(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo)
Called after the region has been marked offline.
|
void |
postRestoreSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called after a snapshot restore operation has been requested.
|
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 |
postSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called after the snapshot operation has been requested.
|
void |
postStartMaster(ObserverContext<MasterCoprocessorEnvironment> ctx)
Called immediately after an active master instance has completed
initialization.
|
void |
postUnassign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo,
boolean force)
Called after the region unassignment has been requested.
|
void |
preAddColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor column)
Called prior to adding a new column family to the table.
|
void |
preAddColumnHandler(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
|
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 |
preBulkLoadHFile(ObserverContext<RegionCoprocessorEnvironment> ctx,
List<Pair<byte[],String>> familyPaths)
Verifies user has WRITE 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 |
preCheckAndPut(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
Put put,
boolean result)
Called before checkAndPut
|
void |
preCleanupBulkLoad(RegionCoprocessorEnvironment e)
Authorization security check for
SecureBulkLoadProtocol.cleanupBulkLoad()
|
void |
preCloneSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
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 |
preCompactSelection(ObserverContext<RegionCoprocessorEnvironment> e,
Store store,
List<StoreFile> candidates)
Called prior to selecting the
StoreFiles to compact from the list of available
candidates. |
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 |
preCreateTableHandler(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 |
preDeleteColumnHandler(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,
HBaseProtos.SnapshotDescription snapshot)
Called before a snapshot is deleted.
|
void |
preDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called before
HMaster deletes a
table. |
void |
preDeleteTableHandler(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 |
preDisableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called prior to disabling a table.
|
void |
preEnableTable(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called prior to enabling a table.
|
void |
preEnableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName)
Called prior to enabling a table.
|
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
|
long |
preIncrementColumnValue(ObserverContext<RegionCoprocessorEnvironment> c,
byte[] row,
byte[] family,
byte[] qualifier,
long amount,
boolean writeToWAL)
Called before incrementColumnValue
|
void |
preMasterInitialization(ObserverContext<MasterCoprocessorEnvironment> ctx)
Call before the master initialization is set to true.
|
void |
preModifyColumn(ObserverContext<MasterCoprocessorEnvironment> c,
TableName tableName,
HColumnDescriptor descriptor)
Called prior to modifying a column family's attributes.
|
void |
preModifyColumnHandler(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 |
preModifyTableHandler(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(RegionCoprocessorEnvironment e)
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 |
preRestoreSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx,
HBaseProtos.SnapshotDescription snapshot,
HTableDescriptor hTableDescriptor)
Called before a snapshot is restored.
|
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,
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 |
preUnassign(ObserverContext<MasterCoprocessorEnvironment> c,
HRegionInfo regionInfo,
boolean force)
Called prior to unassigning a given region.
|
void |
revoke(RpcController controller,
AccessControlProtos.RevokeRequest request,
RpcCallback<AccessControlProtos.RevokeResponse> done) |
void |
start(CoprocessorEnvironment env) |
void |
stop(CoprocessorEnvironment env) |
postAppend, postBatchMutate, postBulkLoadHFile, postCheckAndDelete, postCheckAndPut, postClose, postCompact, postCompact, postCompactSelection, postCompactSelection, postCompleteSplit, postExists, postFlush, postFlush, postGet, postGetClosestRowBefore, postGetOp, postIncrement, postIncrementColumnValue, postRollBackSplit, postScannerFilterRow, postScannerNext, postSplit, postWALRestore, preBatchMutate, preCompact, preCompactScannerOpen, preCompactScannerOpen, preCompactSelection, preFlush, preFlushScannerOpen, preGet, preRollBackSplit, preStoreScannerOpen, preWALRestorepublic void start(CoprocessorEnvironment env) throws IOException
start in interface Coprocessorstart in class BaseRegionObserverIOExceptionpublic void stop(CoprocessorEnvironment env)
stop in interface Coprocessorstop in class BaseRegionObserverpublic 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 MasterObserverc - the environment to interact with the framework and masterdesc - the HTableDescriptor for the tableregions - the initial regions created for the tableIOExceptionpublic void preCreateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, HTableDescriptor desc, HRegionInfo[] regions) throws IOException
MasterObserverHMaster. Called as part of create
table handler and it is async to the create RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.preCreateTableHandler in interface MasterObserverc - the environment to interact with the framework and masterdesc - the HTableDescriptor for the tableregions - the initial regions created for the tableIOExceptionpublic void postCreateTable(ObserverContext<MasterCoprocessorEnvironment> c, HTableDescriptor desc, HRegionInfo[] regions) throws IOException
MasterObserverpostCreateTable in interface MasterObserverc - the environment to interact with the framework and masterdesc - the HTableDescriptor for the tableregions - the initial regions created for the tableIOExceptionpublic void postCreateTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, HTableDescriptor desc, HRegionInfo[] regions) throws IOException
MasterObserverpostCreateTableHandler in interface MasterObserverc - the environment to interact with the framework and masterdesc - the HTableDescriptor for the tableregions - the initial regions created for the tableIOExceptionpublic 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 MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void preDeleteTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverHMaster deletes a
table. Called as part of delete table handler and
it is async to the delete RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.preDeleteTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postDeleteTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpostDeleteTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postDeleteTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverHMaster deletes a
table. Called as part of delete table handler and it is async to the
delete RPC call.
It can't bypass the default action, e.g., ctx.bypass() won't have effect.postDeleteTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void preModifyTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HTableDescriptor htd) throws IOException
MasterObserverpreModifyTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablehtd - the HTableDescriptorIOExceptionpublic void preModifyTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HTableDescriptor htd) throws IOException
MasterObserverpreModifyTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablehtd - the HTableDescriptorIOExceptionpublic void postModifyTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HTableDescriptor htd) throws IOException
MasterObserverpostModifyTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablehtd - the HTableDescriptorIOExceptionpublic void postModifyTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HTableDescriptor htd) throws IOException
MasterObserverpostModifyTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablehtd - the HTableDescriptorIOExceptionpublic void preAddColumn(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor column) throws IOException
MasterObserverpreAddColumn in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecolumn - the HColumnDescriptorIOExceptionpublic void preAddColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor column) throws IOException
MasterObserverpreAddColumnHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecolumn - the HColumnDescriptorIOExceptionpublic void postAddColumn(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor column) throws IOException
MasterObserverpostAddColumn in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecolumn - the HColumnDescriptorIOExceptionpublic void postAddColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor column) throws IOException
MasterObserverpostAddColumnHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecolumn - the HColumnDescriptorIOExceptionpublic void preModifyColumn(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor descriptor) throws IOException
MasterObserverpreModifyColumn in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tabledescriptor - the HColumnDescriptorIOExceptionpublic void preModifyColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor descriptor) throws IOException
MasterObserverpreModifyColumnHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tabledescriptor - the HColumnDescriptorIOExceptionpublic void postModifyColumn(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor descriptor) throws IOException
MasterObserverpostModifyColumn in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tabledescriptor - the HColumnDescriptorIOExceptionpublic void postModifyColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, HColumnDescriptor descriptor) throws IOException
MasterObserverpostModifyColumnHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tabledescriptor - the HColumnDescriptorIOExceptionpublic void preDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, byte[] col) throws IOException
MasterObserverpreDeleteColumn in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecol - the columnIOExceptionpublic void preDeleteColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, byte[] col) throws IOException
MasterObserverpreDeleteColumnHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecol - the columnIOExceptionpublic void postDeleteColumn(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, byte[] col) throws IOException
MasterObserverpostDeleteColumn in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecol - the columnIOExceptionpublic void postDeleteColumnHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName, byte[] col) throws IOException
MasterObserverpostDeleteColumnHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tablecol - the columnIOExceptionpublic void preEnableTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpreEnableTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void preEnableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpreEnableTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postEnableTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpostEnableTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postEnableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpostEnableTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void preDisableTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpreDisableTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void preDisableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpreDisableTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postDisableTable(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpostDisableTable in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void postDisableTableHandler(ObserverContext<MasterCoprocessorEnvironment> c, TableName tableName) throws IOException
MasterObserverpostDisableTableHandler in interface MasterObserverc - the environment to interact with the framework and mastertableName - the name of the tableIOExceptionpublic void preMove(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo region, ServerName srcServer, ServerName destServer) throws IOException
MasterObserverpreMove in interface MasterObserverc - the environment to interact with the framework and masterregion - the HRegionInfosrcServer - the source ServerNamedestServer - the destination ServerNameIOExceptionpublic void postMove(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo region, ServerName srcServer, ServerName destServer) throws IOException
MasterObserverpostMove in interface MasterObserverc - the environment to interact with the framework and masterregion - the HRegionInfosrcServer - the source ServerNamedestServer - the destination ServerNameIOExceptionpublic void preAssign(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo regionInfo) throws IOException
MasterObserverpreAssign in interface MasterObserverc - the environment to interact with the framework and masterregionInfo - the regionInfo of the regionIOExceptionpublic void postAssign(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo regionInfo) throws IOException
MasterObserverpostAssign in interface MasterObserverc - the environment to interact with the framework and masterregionInfo - the regionInfo of the regionIOExceptionpublic void preUnassign(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo regionInfo, boolean force) throws IOException
MasterObserverpreUnassign in interface MasterObserverc - the environment to interact with the framework and masterforce - whether to force unassignment or notIOExceptionpublic void postUnassign(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo regionInfo, boolean force) throws IOException
MasterObserverpostUnassign in interface MasterObserverc - the environment to interact with the framework and masterforce - whether to force unassignment or notIOExceptionpublic void preRegionOffline(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo regionInfo) throws IOException
MasterObserverctx.bypass() will not have any
impact on this hook.preRegionOffline in interface MasterObserverc - the environment to interact with the framework and masterIOExceptionpublic void postRegionOffline(ObserverContext<MasterCoprocessorEnvironment> c, HRegionInfo regionInfo) throws IOException
MasterObserverpostRegionOffline in interface MasterObserverc - the environment to interact with the framework and masterIOExceptionpublic void preBalance(ObserverContext<MasterCoprocessorEnvironment> c) throws IOException
MasterObserverpreBalance in interface MasterObserverc - the environment to interact with the framework and masterIOExceptionpublic void postBalance(ObserverContext<MasterCoprocessorEnvironment> c, List<RegionPlan> plans) throws IOException
MasterObserverpostBalance in interface MasterObserverc - the environment to interact with the framework and masterplans - the RegionPlans which master has executed. RegionPlan serves as hint
as for the final destination for the underlying region but may not represent the
final state of assignmentIOExceptionpublic boolean preBalanceSwitch(ObserverContext<MasterCoprocessorEnvironment> c, boolean newValue) throws IOException
MasterObserverpreBalanceSwitch in interface MasterObserverc - the coprocessor instance's environmentnewValue - the new flag value submitted in the callIOExceptionpublic void postBalanceSwitch(ObserverContext<MasterCoprocessorEnvironment> c, boolean oldValue, boolean newValue) throws IOException
MasterObserverpostBalanceSwitch in interface MasterObserverc - the coprocessor instance's environmentoldValue - the previously set balanceSwitch valuenewValue - the newly set balanceSwitch valueIOExceptionpublic void preShutdown(ObserverContext<MasterCoprocessorEnvironment> c) throws IOException
MasterObserverHMaster process.preShutdown in interface MasterObserverIOExceptionpublic void preStopMaster(ObserverContext<MasterCoprocessorEnvironment> c) throws IOException
MasterObserverHMaster process.preStopMaster in interface MasterObserverIOExceptionpublic void postStartMaster(ObserverContext<MasterCoprocessorEnvironment> ctx) throws IOException
MasterObserverpostStartMaster in interface MasterObserverIOExceptionpublic void preMasterInitialization(ObserverContext<MasterCoprocessorEnvironment> ctx) throws IOException
MasterObserverHMaster process.preMasterInitialization in interface MasterObserverIOExceptionpublic void preSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot, HTableDescriptor hTableDescriptor) throws IOException
MasterObserverpreSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to snapshotIOExceptionpublic void postSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot, HTableDescriptor hTableDescriptor) throws IOException
MasterObserverpostSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to snapshotIOExceptionpublic void preCloneSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot, HTableDescriptor hTableDescriptor) throws IOException
MasterObserverpreCloneSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to createIOExceptionpublic void postCloneSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot, HTableDescriptor hTableDescriptor) throws IOException
MasterObserverpostCloneSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to createIOExceptionpublic void preRestoreSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot, HTableDescriptor hTableDescriptor) throws IOException
MasterObserverpreRestoreSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to restoreIOExceptionpublic void postRestoreSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot, HTableDescriptor hTableDescriptor) throws IOException
MasterObserverpostRestoreSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor for the snapshothTableDescriptor - the hTableDescriptor of the table to restoreIOExceptionpublic void preDeleteSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot) throws IOException
MasterObserverpreDeleteSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor of the snapshot to deleteIOExceptionpublic void postDeleteSnapshot(ObserverContext<MasterCoprocessorEnvironment> ctx, HBaseProtos.SnapshotDescription snapshot) throws IOException
MasterObserverpostDeleteSnapshot in interface MasterObserverctx - the environment to interact with the framework and mastersnapshot - the SnapshotDescriptor of the snapshot to deleteIOExceptionpublic 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 MasterObserverctx - the environment to interact with the framework and masterns - the NamespaceDescriptor for the tableIOExceptionpublic void postCreateNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx, NamespaceDescriptor ns) throws IOException
MasterObserverpostCreateNamespace in interface MasterObserverctx - the environment to interact with the framework and masterns - the NamespaceDescriptor for the tableIOExceptionpublic 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 MasterObserverctx - the environment to interact with the framework and masternamespace - the name of the namespaceIOExceptionpublic void postDeleteNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx, String namespace) throws IOException
MasterObserverpostDeleteNamespace in interface MasterObserverctx - the environment to interact with the framework and masternamespace - the name of the namespaceIOExceptionpublic void preModifyNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx, NamespaceDescriptor ns) throws IOException
MasterObserverpreModifyNamespace in interface MasterObserverctx - the environment to interact with the framework and masterns - the NamespaceDescriptorIOExceptionpublic void postModifyNamespace(ObserverContext<MasterCoprocessorEnvironment> ctx, NamespaceDescriptor ns) throws IOException
MasterObserverpostModifyNamespace in interface MasterObserverctx - the environment to interact with the framework and masterns - the NamespaceDescriptorIOExceptionpublic void preOpen(ObserverContext<RegionCoprocessorEnvironment> e) throws IOException
RegionObserverpreOpen in interface RegionObserverpreOpen in class BaseRegionObservere - the environment provided by the region serverIOException - if an error occurred on the coprocessorpublic void postOpen(ObserverContext<RegionCoprocessorEnvironment> c)
RegionObserverpostOpen in interface RegionObserverpostOpen in class BaseRegionObserverc - the environment provided by the region serverpublic void postLogReplay(ObserverContext<RegionCoprocessorEnvironment> c)
RegionObserverpostLogReplay in interface RegionObserverpostLogReplay in class BaseRegionObserverc - the environment provided by the region serverpublic void preFlush(ObserverContext<RegionCoprocessorEnvironment> e) throws IOException
RegionObserverpreFlush in interface RegionObserverpreFlush in class BaseRegionObservere - the environment provided by the region serverIOException - if an error occurred on the coprocessorpublic void preSplit(ObserverContext<RegionCoprocessorEnvironment> e) throws IOException
RegionObserverpreSplit 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 coprocessorpublic void preSplit(ObserverContext<RegionCoprocessorEnvironment> e, byte[] splitRow) throws IOException
RegionObserverpreSplit 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 coprocessorpublic 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 Scannull unless the
implementation is writing new store files on its own.IOException - if an error occurred on the coprocessorpublic void preCompactSelection(ObserverContext<RegionCoprocessorEnvironment> e, Store store, List<StoreFile> candidates) throws IOException
RegionObserverStoreFiles to compact from the list of available
candidates. To alter the files used for compaction, you may mutate the passed in list of
candidates.preCompactSelection in interface RegionObserverpreCompactSelection in class BaseRegionObservere - the environment provided by the region serverstore - the store where compaction is being requestedcandidates - the store files currently available for compactionIOException - if an error occurred on the coprocessorpublic 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 coprocessorpublic 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 coprocessorpublic 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 requestIOException - if an error occurred on the coprocessorpublic 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 PutIOException - if an error occurred on the coprocessorpublic 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 Putpublic 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 DeleteIOException - if an error occurred on the coprocessorpublic 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 DeleteIOException - if an error occurred on the coprocessorpublic 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 succeedsIOException - if an error occurred on the coprocessorpublic 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 succeedsIOException - if an error occurred on the coprocessorpublic 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 WALIOException - if an error occurred on the coprocessorpublic 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 objectIOException - if an error occurred on the coprocessorpublic 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 objectIOException - if an error occurred on the coprocessorpublic 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 scannerIOException - if an error occurred on the coprocessorpublic 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 scannerIOException - if an error occurred on the coprocessorpublic 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' indicationIOException - if an error occurred on the coprocessorpublic 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 scannerIOException - if an error occurred on the coprocessorpublic 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 scannerIOException - if an error occurred on the coprocessorpublic 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.IOExceptionpublic void prePrepareBulkLoad(RegionCoprocessorEnvironment e) throws IOException
e - IOExceptionpublic void preCleanupBulkLoad(RegionCoprocessorEnvironment e) throws IOException
e - IOExceptionpublic void grant(RpcController controller, AccessControlProtos.GrantRequest request, RpcCallback<AccessControlProtos.GrantResponse> done)
grant in interface AccessControlProtos.AccessControlService.Interfacepublic void revoke(RpcController controller, AccessControlProtos.RevokeRequest request, RpcCallback<AccessControlProtos.RevokeResponse> done)
revoke in interface AccessControlProtos.AccessControlService.Interfacepublic void getUserPermissions(RpcController controller, AccessControlProtos.GetUserPermissionsRequest request, RpcCallback<AccessControlProtos.GetUserPermissionsResponse> done)
getUserPermissions in interface AccessControlProtos.AccessControlService.Interfacepublic void checkPermissions(RpcController controller, AccessControlProtos.CheckPermissionsRequest request, RpcCallback<AccessControlProtos.CheckPermissionsResponse> done)
checkPermissions in interface AccessControlProtos.AccessControlService.Interfacepublic Service getService()
getService in interface CoprocessorServicepublic void preClose(ObserverContext<RegionCoprocessorEnvironment> e, boolean abortRequested) throws IOException
RegionObserverpreClose in interface RegionObserverpreClose in class BaseRegionObservere - the environment provided by the region serverabortRequested - true if the region server is abortingIOExceptionpublic void preStopRegionServer(ObserverContext<RegionServerCoprocessorEnvironment> env) throws IOException
RegionServerObserverpreStopRegionServer in interface RegionServerObserverenv - An instance of RegionServerCoprocessorEnvironmentIOException - Signals that an I/O exception has occurred.public void preGetTableDescriptors(ObserverContext<MasterCoprocessorEnvironment> ctx, List<TableName> tableNamesList, List<HTableDescriptor> descriptors) throws IOException
MasterObserverpreGetTableDescriptors in interface MasterObserverctx - 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 bypassingIOExceptionpublic void postGetTableDescriptors(ObserverContext<MasterCoprocessorEnvironment> ctx, List<HTableDescriptor> descriptors) throws IOException
MasterObserverpostGetTableDescriptors in interface MasterObserverctx - the environment to interact with the framework and masterdescriptors - the list of descriptors about to be returnedIOExceptionCopyright © 2014 The Apache Software Foundation. All Rights Reserved.