You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jonathan Hsieh (JIRA)" <ji...@apache.org> on 2014/02/10 03:01:23 UTC

[jira] [Commented] (HBASE-10436) hbase 0.96+ jmx does not have regionserver info any more.

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

Jonathan Hsieh commented on HBASE-10436:
----------------------------------------

here's how it looks in the jmx

{code}
 {
    "name" : "Hadoop:service=HBase,name=Master,sub=Server",
    "modelerType" : "Master,sub=Server",
    "tag.Context" : "master",
    "tag.liveRegionServers" : "localhost,56196,1391992019130",
    "tag.deadRegionServers" : "localhost,40010,1391035309673;localhost,41408,1391990380724;localhost,38682,1390950017735",
    "tag.zookeeperQuorum" : "localhost:2181",
    "tag.serverName" : "localhost,37288,1391992016212",
    "tag.clusterId" : "3b5b95ba-315f-495d-9e08-08a9626ccb37",
    "tag.isActiveMaster" : "true",
    "tag.Context" : "master",
    "tag.Hostname" : "swoop",
    "masterActiveTime" : 1391992021835,
    "masterStartTime" : 1391992020960,
    "averageLoad" : 3.0,
    "numRegionServers" : 1,
    "numDeadRegionServers" : 3,
    "clusterRequests" : 103248
  }, 
{code}

Note that numRegionServers and numDeadRegionsrevers both take the exact same locks [1][2] as the previous implementation I posted in the core metrics path.  Not sure why it isn't an issue with those values and why it is an issue with the new ones.

[1] https://github.com/apache/hbase/blob/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MetricsMasterWrapperImpl.java#L76
[2] https://github.com/apache/hbase/blob/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java#L419

> hbase 0.96+ jmx does not have regionserver info any more.
> ---------------------------------------------------------
>
>                 Key: HBASE-10436
>                 URL: https://issues.apache.org/jira/browse/HBASE-10436
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.0, 0.96.0, 0.99.0
>            Reporter: Jonathan Hsieh
>            Assignee: Jonathan Hsieh
>            Priority: Critical
>         Attachments: hbase-10436.notbean.patch, hbase-10436.patch, hbase-10436.v2.patch
>
>
> HBase 0.96's refactored jmx beans do not contain the master's list of dead region servers and live regionservers with load info.  HBase 0.94 did (though in a single monolithic blob).  
> This JMX interface should be considered as much of an API as the the normal wire or java api.  Dropping values from this was done without deprecation and the removal of this information is a functional regression.
> We should provide the information in the 0.96+ JMX.  HBase 0.94 had a  monolithic JMX blob ("hadoop:service=Master,name=Master")  that contained a lot of information, including the regionserver list and the cached regionserver load for each region  found on the master webpage.  0.96+ refactored jmx this into several jmx beans which could be selectively retrieved.  These include:
> * hadoop:service=HBase,name=Master,sub=AssignmentManager
> * hadoop:service=HBase,name=Master,sub=Balancer
> * hadoop:service=HBase,name=Master,sub=Server
> * hadoop:service=HBase,name=Master,sub=FileSystem
> Specifically the (Hadoop:service=HBase,name=Master,sub=Server) listing that used to contain regionservers and deadregionservers in jmx were replaced in   with numRegionServers and numDeadRegionservers which only contain counts.  
> I propose just adding another mbean called "RegionServers" under the bean: "hadoop:service=HBase,name=Master,sub=RegionServers"



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)