@InterfaceAudience.Private public class AsyncConnectionImpl extends Object implements AsyncConnection
Modifier and Type | Field and Description |
---|---|
private ConcurrentMap<String,org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface> |
adminStubs |
private ClientBackoffPolicy |
backoffPolicy |
(package private) AsyncRpcRetryingCallerFactory |
callerFactory |
private ChoreService |
choreService |
private AtomicBoolean |
closed |
private ClusterStatusListener |
clusterStatusListener |
private org.apache.hadoop.conf.Configuration |
conf |
private ConnectionOverAsyncConnection |
conn |
(package private) AsyncConnectionConfiguration |
connConf |
private AsyncRegionLocator |
locator |
private static org.slf4j.Logger |
LOG |
private AtomicReference<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface> |
masterStub |
private AtomicReference<CompletableFuture<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface>> |
masterStubMakeFuture |
private Optional<MetricsConnection> |
metrics |
private String |
metricsScope |
private NonceGenerator |
nonceGenerator |
(package private) ConnectionRegistry |
registry |
(package private) static org.apache.hbase.thirdparty.io.netty.util.HashedWheelTimer |
RETRY_TIMER |
protected RpcClient |
rpcClient |
(package private) RpcControllerFactory |
rpcControllerFactory |
protected int |
rpcTimeout |
private ConcurrentMap<String,org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface> |
rsStubs |
private Optional<ServerStatisticTracker> |
stats |
protected User |
user |
Constructor and Description |
---|
AsyncConnectionImpl(org.apache.hadoop.conf.Configuration conf,
ConnectionRegistry registry,
String clusterId,
SocketAddress localAddress,
User user) |
AsyncConnectionImpl(org.apache.hadoop.conf.Configuration conf,
ConnectionRegistry registry,
String clusterId,
SocketAddress localAddress,
User user,
Map<String,byte[]> connectionAttributes) |
Modifier and Type | Method and Description |
---|---|
(package private) void |
clearMasterStubCache(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface stub) |
void |
clearRegionLocationCache()
Clear all the entries in the region location cache, for all the tables.
|
void |
close() |
private org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface |
createAdminServerStub(ServerName serverName) |
private org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface |
createMasterStub(ServerName serverName) |
private org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface |
createRegionServerStub(ServerName serverName) |
AsyncAdminBuilder |
getAdminBuilder()
Returns an
AsyncAdminBuilder for creating AsyncAdmin . |
AsyncAdminBuilder |
getAdminBuilder(ExecutorService pool)
Returns an
AsyncAdminBuilder for creating AsyncAdmin . |
(package private) org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface |
getAdminStub(ServerName serverName) |
(package private) ClientBackoffPolicy |
getBackoffPolicy() |
AsyncBufferedMutatorBuilder |
getBufferedMutatorBuilder(TableName tableName)
Returns an
AsyncBufferedMutatorBuilder for creating AsyncBufferedMutator . |
AsyncBufferedMutatorBuilder |
getBufferedMutatorBuilder(TableName tableName,
ExecutorService pool)
Returns an
AsyncBufferedMutatorBuilder for creating AsyncBufferedMutator . |
(package private) ChoreService |
getChoreService()
If choreService has not been created yet, create the ChoreService.
|
(package private) String |
getClusterId() |
org.apache.hadoop.conf.Configuration |
getConfiguration()
Returns the
Configuration object used by this instance. |
(package private) Optional<MetricsConnection> |
getConnectionMetrics() |
ConnectionRegistry |
getConnectionRegistry() |
CompletableFuture<Hbck> |
getHbck()
Retrieve an Hbck implementation to fix an HBase cluster.
|
Hbck |
getHbck(ServerName masterServer)
Retrieve an Hbck implementation to fix an HBase cluster.
|
private Hbck |
getHbckInternal(ServerName masterServer) |
(package private) AsyncRegionLocator |
getLocator() |
(package private) CompletableFuture<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface> |
getMasterStub() |
(package private) NonceGenerator |
getNonceGenerator() |
AsyncTableRegionLocator |
getRegionLocator(TableName tableName)
Retrieve a AsyncRegionLocator implementation to inspect region information on a table.
|
(package private) org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface |
getRegionServerStub(ServerName serverName) |
(package private) Optional<ServerStatisticTracker> |
getStatisticsTracker() |
AsyncTableBuilder<AdvancedScanResultConsumer> |
getTableBuilder(TableName tableName)
Returns an
AsyncTableBuilder for creating AsyncTable . |
AsyncTableBuilder<ScanResultConsumer> |
getTableBuilder(TableName tableName,
ExecutorService pool)
Returns an
AsyncTableBuilder for creating AsyncTable . |
User |
getUser() |
boolean |
isClosed()
Returns whether the connection is closed or not.
|
private void |
logCallStack(StackTraceElement[] stackTraceElements) |
private void |
spawnRenewalChore(org.apache.hadoop.security.UserGroupInformation user) |
Connection |
toConnection()
Convert this connection to a
Connection . |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAdmin, getAdmin, getBufferedMutator, getBufferedMutator, getTable, getTable
private static final org.slf4j.Logger LOG
static final org.apache.hbase.thirdparty.io.netty.util.HashedWheelTimer RETRY_TIMER
private final org.apache.hadoop.conf.Configuration conf
final AsyncConnectionConfiguration connConf
final ConnectionRegistry registry
protected final int rpcTimeout
final RpcControllerFactory rpcControllerFactory
private final AsyncRegionLocator locator
final AsyncRpcRetryingCallerFactory callerFactory
private final NonceGenerator nonceGenerator
private final ConcurrentMap<String,org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface> rsStubs
private final ConcurrentMap<String,org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface> adminStubs
private final AtomicReference<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface> masterStub
private final AtomicReference<CompletableFuture<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface>> masterStubMakeFuture
private final Optional<ServerStatisticTracker> stats
private final ClientBackoffPolicy backoffPolicy
private ChoreService choreService
private final AtomicBoolean closed
private final String metricsScope
private final Optional<MetricsConnection> metrics
private final ClusterStatusListener clusterStatusListener
private volatile ConnectionOverAsyncConnection conn
public AsyncConnectionImpl(org.apache.hadoop.conf.Configuration conf, ConnectionRegistry registry, String clusterId, SocketAddress localAddress, User user)
public AsyncConnectionImpl(org.apache.hadoop.conf.Configuration conf, ConnectionRegistry registry, String clusterId, SocketAddress localAddress, User user, Map<String,byte[]> connectionAttributes)
private void spawnRenewalChore(org.apache.hadoop.security.UserGroupInformation user)
ChoreService getChoreService()
public ConnectionRegistry getConnectionRegistry()
public org.apache.hadoop.conf.Configuration getConfiguration()
AsyncConnection
Configuration
object used by this instance.
The reference returned is not a copy, so any change made to it will affect this instance.
getConfiguration
in interface AsyncConnection
public boolean isClosed()
AsyncConnection
isClosed
in interface AsyncConnection
public void close()
close
in interface Closeable
close
in interface AutoCloseable
private void logCallStack(StackTraceElement[] stackTraceElements)
public AsyncTableRegionLocator getRegionLocator(TableName tableName)
AsyncConnection
getRegionLocator
in interface AsyncConnection
tableName
- Name of the table who's region is to be examinedpublic void clearRegionLocationCache()
AsyncConnection
AsyncTableRegionLocator.clearRegionLocationCache()
.
This may cause performance issue so use it with caution.clearRegionLocationCache
in interface AsyncConnection
AsyncRegionLocator getLocator()
NonceGenerator getNonceGenerator()
private org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface createRegionServerStub(ServerName serverName) throws IOException
IOException
org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.ClientService.Interface getRegionServerStub(ServerName serverName) throws IOException
IOException
private org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface createMasterStub(ServerName serverName) throws IOException
IOException
private org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface createAdminServerStub(ServerName serverName) throws IOException
IOException
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.AdminService.Interface getAdminStub(ServerName serverName) throws IOException
IOException
CompletableFuture<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface> getMasterStub()
String getClusterId()
void clearMasterStubCache(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MasterService.Interface stub)
Optional<ServerStatisticTracker> getStatisticsTracker()
ClientBackoffPolicy getBackoffPolicy()
public AsyncTableBuilder<AdvancedScanResultConsumer> getTableBuilder(TableName tableName)
AsyncConnection
AsyncTableBuilder
for creating AsyncTable
.
This method no longer checks table existence. An exception will be thrown if the table does not exist only when the first operation is attempted.
getTableBuilder
in interface AsyncConnection
tableName
- the name of the tablepublic AsyncTableBuilder<ScanResultConsumer> getTableBuilder(TableName tableName, ExecutorService pool)
AsyncConnection
AsyncTableBuilder
for creating AsyncTable
.
This method no longer checks table existence. An exception will be thrown if the table does not exist only when the first operation is attempted.
getTableBuilder
in interface AsyncConnection
tableName
- the name of the tablepool
- the thread pool to use for executing callbackpublic AsyncAdminBuilder getAdminBuilder()
AsyncConnection
AsyncAdminBuilder
for creating AsyncAdmin
.
The admin operation's returned CompletableFuture
will be finished directly in the rpc
framework's callback thread, so typically you should not do any time consuming work inside
these methods.
getAdminBuilder
in interface AsyncConnection
public AsyncAdminBuilder getAdminBuilder(ExecutorService pool)
AsyncConnection
AsyncAdminBuilder
for creating AsyncAdmin
.getAdminBuilder
in interface AsyncConnection
pool
- the thread pool to use for executing callbackpublic AsyncBufferedMutatorBuilder getBufferedMutatorBuilder(TableName tableName)
AsyncConnection
AsyncBufferedMutatorBuilder
for creating AsyncBufferedMutator
.getBufferedMutatorBuilder
in interface AsyncConnection
tableName
- the name of the tablepublic AsyncBufferedMutatorBuilder getBufferedMutatorBuilder(TableName tableName, ExecutorService pool)
AsyncConnection
AsyncBufferedMutatorBuilder
for creating AsyncBufferedMutator
.getBufferedMutatorBuilder
in interface AsyncConnection
tableName
- the name of the tablepool
- the thread pool to use for executing callbackpublic Connection toConnection()
AsyncConnection
Connection
.
Usually we will return the same instance if you call this method multiple times so you can
consider this as a light-weighted operation.toConnection
in interface AsyncConnection
private Hbck getHbckInternal(ServerName masterServer)
public CompletableFuture<Hbck> getHbck()
AsyncConnection
Closeable.close()
on the returned Hbck instance.
This will be used mostly by hbck tool.getHbck
in interface AsyncConnection
public Hbck getHbck(ServerName masterServer)
AsyncConnection
Closeable.close()
on the returned Hbck instance.
This will be used mostly by hbck tool. This may only be used to by pass getting registered
master from ZK. In situations where ZK is not available or active master is not registered with
ZK and user can get master address by other means, master can be explicitly specified.getHbck
in interface AsyncConnection
masterServer
- explicit ServerName
for master serverOptional<MetricsConnection> getConnectionMetrics()
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.