@InterfaceAudience.Private public class ReplicationQueuesZKImpl extends ReplicationStateZKBase implements ReplicationQueues
abortable, conf, DISABLED_ZNODE_BYTES, ENABLED_ZNODE_BYTES, ourClusterKey, peerStateNodeName, peersZNode, queuesZNode, replicationZNode, zookeeper
Constructor and Description |
---|
ReplicationQueuesZKImpl(ZooKeeperWatcher zk,
Configuration conf,
Abortable abortable) |
Modifier and Type | Method and Description |
---|---|
void |
addLog(String queueId,
String filename)
Add a new WAL file to the given queue.
|
SortedMap<String,SortedSet<String>> |
claimQueues(String regionserverZnode)
Take ownership for the set of queues belonging to a dead region server.
|
List<String> |
getAllQueues()
Get a list of all queues for this region server.
|
long |
getLogPosition(String queueId,
String filename)
Get the current position for a specific WAL in a given queue.
|
List<String> |
getLogsInQueue(String queueId)
Get a list of all WALs in the given queue.
|
void |
init(String serverName)
Initialize the region server replication queue interface.
|
boolean |
isThisOurZnode(String znode)
Checks if the provided znode is the same as this region server's
|
void |
removeAllQueues()
Remove all replication queues for this region server.
|
void |
removeLog(String queueId,
String filename)
Remove an WAL file from the given queue.
|
void |
removeQueue(String queueId)
Remove a replication queue.
|
void |
setLogPosition(String queueId,
String filename,
long position)
Set the current position for a specific WAL in a given queue.
|
getListOfReplicators, isPeerPath, peerExists, toByteArray
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getListOfReplicators
public ReplicationQueuesZKImpl(ZooKeeperWatcher zk, Configuration conf, Abortable abortable)
public void init(String serverName) throws ReplicationException
ReplicationQueues
init
in interface ReplicationQueues
serverName
- The server name of the region server that owns the replication queues this
interface manages.ReplicationException
public void removeQueue(String queueId)
ReplicationQueues
removeQueue
in interface ReplicationQueues
queueId
- a String that identifies the queue.public void addLog(String queueId, String filename) throws ReplicationException
ReplicationQueues
addLog
in interface ReplicationQueues
queueId
- a String that identifies the queue.filename
- name of the WALReplicationException
public void removeLog(String queueId, String filename)
ReplicationQueues
removeLog
in interface ReplicationQueues
queueId
- a String that identifies the queue.filename
- name of the WALpublic void setLogPosition(String queueId, String filename, long position)
ReplicationQueues
setLogPosition
in interface ReplicationQueues
queueId
- a String that identifies the queuefilename
- name of the WALposition
- the current position in the filepublic long getLogPosition(String queueId, String filename) throws ReplicationException
ReplicationQueues
getLogPosition
in interface ReplicationQueues
queueId
- a String that identifies the queuefilename
- name of the WALReplicationException
public boolean isThisOurZnode(String znode)
ReplicationQueues
isThisOurZnode
in interface ReplicationQueues
znode
- to checkpublic SortedMap<String,SortedSet<String>> claimQueues(String regionserverZnode)
ReplicationQueues
claimQueues
in interface ReplicationQueues
regionserverZnode
- the id of the dead region serverpublic void removeAllQueues()
ReplicationQueues
removeAllQueues
in interface ReplicationQueues
public List<String> getLogsInQueue(String queueId)
ReplicationQueues
getLogsInQueue
in interface ReplicationQueues
queueId
- a String that identifies the queuepublic List<String> getAllQueues()
ReplicationQueues
getAllQueues
in interface ReplicationQueues