@InterfaceAudience.Private public class ReplicationPeerZKImpl extends Object implements ReplicationPeer, Abortable, Closeable
| Modifier and Type | Class and Description |
|---|---|
class |
ReplicationPeerZKImpl.PeerStateTracker
Tracker for state of this peer
|
class |
ReplicationPeerZKImpl.TableCFsTracker
Tracker for (table, cf-list) map of this peer
|
ReplicationPeer.PeerState| Constructor and Description |
|---|
ReplicationPeerZKImpl(Configuration conf,
String id,
ReplicationPeerConfig peerConfig)
Constructor that takes all the objects required to communicate with the
specified peer, except for the region server addresses.
|
| Modifier and Type | Method and Description |
|---|---|
void |
abort(String why,
Throwable e)
Abort the server or client.
|
void |
close() |
Configuration |
getConfiguration()
Get the configuration object required to communicate with this peer
|
String |
getId()
Get the identifier of this peer
|
ReplicationPeerConfig |
getPeerConfig()
Get the peer config object
|
ReplicationPeer.PeerState |
getPeerState()
Returns the state of the peer
|
Map<TableName,List<String>> |
getTableCFs()
Get replicable (table, cf-list) map of this peer
|
boolean |
isAborted()
Check if the server or client was aborted.
|
static boolean |
isStateEnabled(byte[] bytes)
Parse the raw data from ZK to get a peer's state
|
void |
startStateTracker(ZooKeeperWatcher zookeeper,
String peerStateNode)
start a state tracker to check whether this peer is enabled or not
|
void |
startTableCFsTracker(ZooKeeperWatcher zookeeper,
String tableCFsNode)
start a table-cfs tracker to listen the (table, cf-list) map change
|
public ReplicationPeerZKImpl(Configuration conf,
String id,
ReplicationPeerConfig peerConfig)
throws ReplicationException
conf - configuration object to this peerid - string representation of this peer's identifierpeerConfig - configuration for the replication peerReplicationExceptionpublic void startStateTracker(ZooKeeperWatcher zookeeper, String peerStateNode) throws KeeperException
zookeeper - zk watcher for the local clusterpeerStateNode - path to zk node which stores peer stateKeeperExceptionpublic void startTableCFsTracker(ZooKeeperWatcher zookeeper, String tableCFsNode) throws KeeperException
zookeeper - zk watcher for the local clustertableCFsNode - path to zk node which stores table-cfsKeeperExceptionpublic ReplicationPeer.PeerState getPeerState()
ReplicationPeergetPeerState in interface ReplicationPeerpublic String getId()
getId in interface ReplicationPeerpublic ReplicationPeerConfig getPeerConfig()
getPeerConfig in interface ReplicationPeerpublic Configuration getConfiguration()
getConfiguration in interface ReplicationPeerpublic Map<TableName,List<String>> getTableCFs()
getTableCFs in interface ReplicationPeerpublic void abort(String why, Throwable e)
Abortablepublic boolean isAborted()
Abortablepublic void close()
throws IOException
close in interface Closeableclose in interface AutoCloseableIOExceptionpublic static boolean isStateEnabled(byte[] bytes)
throws DeserializationException
bytes - raw ZK databytes are those of a pb serialized ENABLED state.DeserializationException