[ 
https://issues.apache.org/jira/browse/HBASE-15617?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15270761#comment-15270761
 ] 

Andrew Purtell edited comment on HBASE-15617 at 5/4/16 2:52 PM:
----------------------------------------------------------------

The new getDrainingServers() depends on some internal details likely to change. 
We should treat ZK state as a black box and avoid relying on it. This is a 
layering violation, really. Why not use the supported Admin API's 
Admin#getClusterStatus to get the live server list to enumerate?

That unit test failure appears unrelated. 



was (Author: apurtell):
The new getDrainingServers() depends on some internal details likely to change. 
We should treat ZK state as a black box and avoid relying on it. 

Why not use Admin#getClusterStatus to get the live server list to enumerate?

That unit test failure appears unrelated. 


> Canary in regionserver mode might not enumerate all regionservers
> -----------------------------------------------------------------
>
>                 Key: HBASE-15617
>                 URL: https://issues.apache.org/jira/browse/HBASE-15617
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0
>            Reporter: Andrew Purtell
>            Assignee: Sanjeev Lakshmanan
>            Priority: Minor
>              Labels: beginner
>         Attachments: HBASE-15617.patch
>
>
> When running in regionserver mode the Canary is expected to probe for service 
> health one time per regionserver during a probe interval. 
> Each time the canary chore fires, we create a RegionServerMonitor, which uses 
> filterRegionServerByName (via getAllRegionServerByName) to enumerate over all 
> table descriptors, find the locations for each table, then assemble the list 
> of regionservers to probe from this result. The list may not contain all live 
> regionservers, if there is a regionserver up but for some reason not serving 
> any regions. To ensure we have the complete list of live regionservers I 
> think it would be better to use Admin#getClusterStatus and enumerate the live 
> server list returned in the result.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to