private static class MasterCoprocessorHost.MasterEnvironment extends BaseEnvironment<MasterCoprocessor> implements MasterCoprocessorEnvironment
Modifier and Type | Field and Description |
---|---|
private MetricRegistry |
metricRegistry |
private MasterServices |
services |
impl, priority
Constructor and Description |
---|
MasterEnvironment(MasterCoprocessor impl,
int priority,
int seq,
org.apache.hadoop.conf.Configuration conf,
MasterServices services) |
Modifier and Type | Method and Description |
---|---|
Connection |
createConnection(org.apache.hadoop.conf.Configuration conf)
Creates a cluster connection using the passed Configuration.
|
Connection |
getConnection()
Returns the hosts' Connection to the Cluster.
|
MetricRegistry |
getMetricRegistryForMaster()
Returns a MetricRegistry that can be used to track metrics at the master level.
|
ServerName |
getServerName()
Returns Hosting Server's ServerName
|
void |
shutdown()
Clean up the environment
|
getClassLoader, getConfiguration, getHBaseVersion, getInstance, getLoadSequence, getPriority, getVersion, startup
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getClassLoader, getConfiguration, getHBaseVersion, getInstance, getLoadSequence, getPriority, getVersion
private final MetricRegistry metricRegistry
private final MasterServices services
public MasterEnvironment(MasterCoprocessor impl, int priority, int seq, org.apache.hadoop.conf.Configuration conf, MasterServices services)
public ServerName getServerName()
MasterCoprocessorEnvironment
getServerName
in interface MasterCoprocessorEnvironment
public Connection getConnection()
MasterCoprocessorEnvironment
UnsupportedOperationException
if you try to close or abort
it. For light-weight usage only. Heavy-duty usage will pull down the hosting RegionServer
responsiveness as well as that of other Coprocessors making use of this Connection. Use to
create table on start or to do administrative operations. Coprocessors should create their own
Connections if heavy usage to avoid impinging on hosting Server operation. To create a
Connection or if a Coprocessor requires a region with a particular Configuration, use
ConnectionFactory
or
MasterCoprocessorEnvironment.createConnection(Configuration)
}.
Be aware that operations that make use of this Connection are executed as the RegionServer
User, the hbase super user that started this server process. Exercise caution running
operations as this User (See MasterCoprocessorEnvironment.createConnection(Configuration)
} to run as other than the
RegionServer User).
Be careful RPC'ing from a Coprocessor context. RPC's will fail, stall, retry, and/or crawl because the remote side is not online, is struggling or it is on the other side of a network partition. Any use of Connection from inside a Coprocessor must be able to handle all such hiccups.
getConnection
in interface MasterCoprocessorEnvironment
MasterCoprocessorEnvironment.createConnection(Configuration)
public Connection createConnection(org.apache.hadoop.conf.Configuration conf) throws IOException
MasterCoprocessorEnvironment
ConnectionFactory.createConnection(Configuration)
returns a Connection that will short-circuit RPC if the target is a local resource. Use
ConnectionFactory if you don't need this ability.
Be careful RPC'ing from a Coprocessor context. RPC's will fail, stall, retry, and/or crawl because the remote side is not online, is struggling or it is on the other side of a network partition. Any use of Connection from inside a Coprocessor must be able to handle all such hiccups.
createConnection
in interface MasterCoprocessorEnvironment
IOException
public MetricRegistry getMetricRegistryForMaster()
MasterCoprocessorEnvironment
See ExampleMasterObserverWithMetrics class in the hbase-examples modules for examples of how metrics can be instantiated and used.
getMetricRegistryForMaster
in interface MasterCoprocessorEnvironment
public void shutdown()
BaseEnvironment
shutdown
in class BaseEnvironment<MasterCoprocessor>
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.