@InterfaceAudience.Private public class DrainingServerTracker extends ZooKeeperListener
This class is responsible for watching for changes to the draining servers list. It handles adds/deletes in the draining RS list and watches each node.
If an RS gets deleted from draining list, we call
ServerManager.removeServerFromDrainList(ServerName)
If an RS gets added to the draining list, we add a watcher to it and call
ServerManager.addServerToDrainList(ServerName)
Modifier and Type | Field and Description |
---|---|
private Abortable |
abortable |
private NavigableSet<ServerName> |
drainingServers |
private static org.apache.commons.logging.Log |
LOG |
private ServerManager |
serverManager |
watcher
Constructor and Description |
---|
DrainingServerTracker(ZooKeeperWatcher watcher,
Abortable abortable,
ServerManager serverManager) |
Modifier and Type | Method and Description |
---|---|
private void |
add(List<String> servers) |
void |
nodeChildrenChanged(String path)
Called when an existing node has a child node added or removed.
|
void |
nodeDeleted(String path)
Called when a node has been deleted
|
private void |
remove(ServerName sn) |
void |
start()
Starts the tracking of draining RegionServers.
|
getWatcher, nodeCreated, nodeDataChanged
private static final org.apache.commons.logging.Log LOG
private ServerManager serverManager
private final NavigableSet<ServerName> drainingServers
private Abortable abortable
public DrainingServerTracker(ZooKeeperWatcher watcher, Abortable abortable, ServerManager serverManager)
public void start() throws org.apache.zookeeper.KeeperException, IOException
All Draining RSs will be tracked after this method is called.
org.apache.zookeeper.KeeperException
IOException
private void add(List<String> servers) throws IOException
IOException
private void remove(ServerName sn)
public void nodeDeleted(String path)
ZooKeeperListener
nodeDeleted
in class ZooKeeperListener
path
- full path of the deleted nodepublic void nodeChildrenChanged(String path)
ZooKeeperListener
nodeChildrenChanged
in class ZooKeeperListener
path
- full path of the node whose children have changedCopyright © 2007–2019 The Apache Software Foundation. All rights reserved.