[ https://issues.apache.org/jira/browse/HBASE-16010?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matt Warhaftig updated HBASE-16010: ----------------------------------- Attachment: hbase-16010-v1.patch Attached patch 'hbase-16010-v1.patch' adds region server draining functionality to the Admin API. API method signatures are slightly changed from my original posting. {quote} "and we probably need to have a fallback to zk calls if the client is new but the server is old to keep compat, at least in branch-1" {quote} This is good info Matteo, let me search through the HBase codebase to try and find a previous example of this behavior for the branch-1 port. > Put draining function through Admin API > --------------------------------------- > > Key: HBASE-16010 > URL: https://issues.apache.org/jira/browse/HBASE-16010 > Project: HBase > Issue Type: Improvement > Reporter: Jerry He > Assignee: Matt Warhaftig > Priority: Minor > Attachments: hbase-16010-v1.patch > > > Currently, there is no Amdin API for draining function. Client has to > interact directly with Zookeeper draining node to add and remove draining > servers. > For example, in draining_servers.rb: > {code} > zkw = org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher.new(config, > "draining_servers", nil) > parentZnode = zkw.drainingZNode > begin > for server in servers > node = ZKUtil.joinZNode(parentZnode, server) > ZKUtil.createAndFailSilent(zkw, node) > end > ensure > zkw.close() > end > {code} > This is not good in cases like secure clusters with protected Zookeeper nodes. > Let's put draining function through Admin API. -- This message was sent by Atlassian JIRA (v6.3.4#6332)