Class BootstrapNodeManager
java.lang.Object
org.apache.hadoop.hbase.regionserver.BootstrapNodeManager
Manage the bootstrap node list at region server side.
It will request master first to get the initial set of bootstrap nodes(a sub set of live region
servers), and then it will exchange the bootstrap nodes with other bootstrap nodes. In most
cases, if the cluster is stable, we do not need to request master again until we reach the
request master interval. And if the current number of bootstrap nodes is not enough, we will
request master soon.
The algorithm is very simple, as we will always fallback to request master. THe trick here is
that, if we can not get enough bootstrap nodes from master, then the cluster will be small, so it
will not put too much pressure on master if we always request master. And for large clusters, we
will soon get enough bootstrap nodes and stop requesting master.
-
Field Summary
Modifier and TypeFieldDescriptionprivate final ClusterConnection
static final long
static final long
static final long
private final ScheduledExecutorService
private static final float
private long
private static final org.slf4j.Logger
private final MasterAddressTracker
private final int
private List<ServerName>
static final String
static final String
static final String
private final long
private final long
private final long
private RetryCounter
private final RetryCounterFactory
-
Constructor Summary
ConstructorDescriptionBootstrapNodeManager
(ClusterConnection conn, MasterAddressTracker masterAddrTracker) -
Method Summary
-
Field Details
-
LOG
-
REQUEST_MASTER_INTERVAL_SECS
- See Also:
-
DEFAULT_REQUEST_MASTER_INTERVAL_SECS
-
REQUEST_MASTER_MIN_INTERVAL_SECS
- See Also:
-
DEFAULT_REQUEST_MASTER_MIN_INTERVAL_SECS
- See Also:
-
REQUEST_REGIONSERVER_INTERVAL_SECS
- See Also:
-
DEFAULT_REQUEST_REGIONSERVER_INTERVAL_SECS
- See Also:
-
JITTER
- See Also:
-
nodes
-
conn
-
masterAddrTracker
-
executor
-
requestMasterIntervalSecs
-
requestMasterMinIntervalSecs
-
requestRegionServerIntervalSecs
-
maxNodeCount
-
retryCounterFactory
-
retryCounter
-
lastRequestMasterTime
-
-
Constructor Details
-
BootstrapNodeManager
-
-
Method Details
-
getDelay
-
getFromMaster
-
getFromRegionServer
-
stop
-
getBootstrapNodes
-