@InterfaceAudience.Private public class DrainingServerTracker extends ZKListener
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)
This class is deprecated in 2.0 because decommission/draining API goes through master in 2.0. Can remove this class in 3.0.
watcher
Constructor and Description |
---|
DrainingServerTracker(ZKWatcher watcher,
Abortable abortable,
ServerManager serverManager) |
Modifier and Type | Method and Description |
---|---|
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
|
void |
start()
Starts the tracking of draining RegionServers.
|
getWatcher, nodeCreated, nodeDataChanged
public DrainingServerTracker(ZKWatcher 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
public void nodeDeleted(String path)
ZKListener
nodeDeleted
in class ZKListener
path
- full path of the deleted nodepublic void nodeChildrenChanged(String path)
ZKListener
nodeChildrenChanged
in class ZKListener
path
- full path of the node whose children have changedCopyright © 2007–2019 Cloudera. All rights reserved.