[ 
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)

Reply via email to