HBase
  1. HBase
  2. HBASE-6084

Server Load does not display correctly on the ui

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.95.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      The ui uses the toString method and toString does not implement it any more.

      1. HBASE-6084-3.patch
        10 kB
        Elliott Clark
      2. HBASE-6084-2.patch
        10 kB
        Elliott Clark
      3. HBASE-6084-1.patch
        10 kB
        Elliott Clark
      4. HBASE-6084-0.patch
        0.8 kB
        Elliott Clark

        Activity

        Hide
        Elliott Clark added a comment -

        Pretty simple toString for ServerLoad so that the ui gets the numbers again.

        Show
        Elliott Clark added a comment - Pretty simple toString for ServerLoad so that the ui gets the numbers again.
        Hide
        Jonathan Hsieh added a comment -

        silly question – why was it removed previously?

        Show
        Jonathan Hsieh added a comment - silly question – why was it removed previously?
        Hide
        Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12528832/HBASE-6084-0.patch
        against trunk revision .

        +1 @author. The patch does not contain any @author tags.

        -1 tests included. The patch doesn't appear to include any new or modified tests.
        Please justify why no new tests are needed for this patch.
        Also please list what manual steps were performed to verify this patch.

        +1 hadoop23. The patch compiles against the hadoop 0.23.x profile.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        -1 findbugs. The patch appears to introduce 33 new Findbugs (version 1.3.9) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in .

        Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/1977//testReport/
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/1977//artifact/trunk/patchprocess/newPatchFindbugsWarnings.html
        Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/1977//console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12528832/HBASE-6084-0.patch against trunk revision . +1 @author. The patch does not contain any @author tags. -1 tests included. The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. +1 hadoop23. The patch compiles against the hadoop 0.23.x profile. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. -1 findbugs. The patch appears to introduce 33 new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/1977//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/1977//artifact/trunk/patchprocess/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/1977//console This message is automatically generated.
        Hide
        Elliott Clark added a comment -

        Seems like the file was added when switching to protobuff and it never had a to string unlike HServerLoad.

        Show
        Elliott Clark added a comment - Seems like the file was added when switching to protobuff and it never had a to string unlike HServerLoad.
        Hide
        Elliott Clark added a comment -

        In fact on looking at it a little more we should copy the format that the old one had just incase someone had a script screen scraping the master ui web page.

        I'll get that patch up in a little bit.

        Show
        Elliott Clark added a comment - In fact on looking at it a little more we should copy the format that the old one had just incase someone had a script screen scraping the master ui web page. I'll get that patch up in a little bit.
        Hide
        Todd Lipcon added a comment -

        I didn't file a JIRA yet but I also saw errors on my console about the JMX bean, where we return ServerLoad instances and JMX has no idea what to do with them.

        Show
        Todd Lipcon added a comment - I didn't file a JIRA yet but I also saw errors on my console about the JMX bean, where we return ServerLoad instances and JMX has no idea what to do with them.
        Hide
        Elliott Clark added a comment -

        Yeah, I've seen the same. I'll get get a MBean interface to get that fixed.

        Show
        Elliott Clark added a comment - Yeah, I've seen the same. I'll get get a MBean interface to get that fixed.
        Hide
        Elliott Clark added a comment -

        So the errors on console are pretty un-related. so I filed HBASE-6090.

        Show
        Elliott Clark added a comment - So the errors on console are pretty un-related. so I filed HBASE-6090 .
        Hide
        Gregory Chanan added a comment -

        The JMX issues are tracked in HBASE-5967. Is this a duplicate? Or are you only talking about fixing toString here and the JMX issues are separate?

        I like your idea about copying the format of the old one.

        Show
        Gregory Chanan added a comment - The JMX issues are tracked in HBASE-5967 . Is this a duplicate? Or are you only talking about fixing toString here and the JMX issues are separate? I like your idea about copying the format of the old one.
        Hide
        Elliott Clark added a comment -

        This was only for the UI which required to string.

        Show
        Elliott Clark added a comment - This was only for the UI which required to string.
        Hide
        Elliott Clark added a comment -

        This patch fixes the ui and adds getters for the values that used to be there.

        The totals are computed in ServerLoad from the totals of RegionLoad's

        Show
        Elliott Clark added a comment - This patch fixes the ui and adds getters for the values that used to be there. The totals are computed in ServerLoad from the totals of RegionLoad's
        Hide
        Gregory Chanan added a comment -

        Elliot,

        I'm a bit confused. When I look at 0.92.1's HServerLoad.toString I see:

        int numberOfRegions = this.regionLoad.size();
            StringBuilder sb = new StringBuilder();
            sb = Strings.appendKeyValue(sb, "requestsPerSecond",
              Integer.valueOf(numberOfRequests/msgInterval));
            sb = Strings.appendKeyValue(sb, "numberOfOnlineRegions",
              Integer.valueOf(numberOfRegions));
            sb = Strings.appendKeyValue(sb, "usedHeapMB",
              Integer.valueOf(this.usedHeapMB));
            sb = Strings.appendKeyValue(sb, "maxHeapMB", Integer.valueOf(maxHeapMB));
            return sb.toString();
        

        But your toString doesn't match. It looks like you implemented HServerLoad.RegionLoad's toString in ServerLoad?

        Show
        Gregory Chanan added a comment - Elliot, I'm a bit confused. When I look at 0.92.1's HServerLoad.toString I see: int numberOfRegions = this .regionLoad.size(); StringBuilder sb = new StringBuilder(); sb = Strings.appendKeyValue(sb, "requestsPerSecond" , Integer .valueOf(numberOfRequests/msgInterval)); sb = Strings.appendKeyValue(sb, "numberOfOnlineRegions" , Integer .valueOf(numberOfRegions)); sb = Strings.appendKeyValue(sb, "usedHeapMB" , Integer .valueOf( this .usedHeapMB)); sb = Strings.appendKeyValue(sb, "maxHeapMB" , Integer .valueOf(maxHeapMB)); return sb.toString(); But your toString doesn't match. It looks like you implemented HServerLoad.RegionLoad's toString in ServerLoad?
        Hide
        Gregory Chanan added a comment -

        I think what we need to do is the following:

        1) Write a ServerLoad.toString that matches HServerLoad.toString.
        2) Implement a RegionLoad (not HServerLoad.RegionLoad) that wraps the protobuf RegionLoad, like how ServerLoad wraps the protobuf ServerLoad
        3) Write a RegionLoad.toString that matches HServerLoad.RegionLoad.toString

        Does that seem correct to you or am I missing something?

        You should be able to do #1 now.
        I'm almost done with #2. you can track it in HBASE-5933.
        After #2, you should be able to do #3.

        Show
        Gregory Chanan added a comment - I think what we need to do is the following: 1) Write a ServerLoad.toString that matches HServerLoad.toString. 2) Implement a RegionLoad (not HServerLoad.RegionLoad) that wraps the protobuf RegionLoad, like how ServerLoad wraps the protobuf ServerLoad 3) Write a RegionLoad.toString that matches HServerLoad.RegionLoad.toString Does that seem correct to you or am I missing something? You should be able to do #1 now. I'm almost done with #2. you can track it in HBASE-5933 . After #2, you should be able to do #3.
        Hide
        Elliott Clark added a comment -

        I just added the extra info since we have them. In doing that I forgot to add the old stuff back in.

        Fixed.

        Show
        Elliott Clark added a comment - I just added the extra info since we have them. In doing that I forgot to add the old stuff back in. Fixed.
        Hide
        Elliott Clark added a comment -

        rebase

        Show
        Elliott Clark added a comment - rebase
        Hide
        stack added a comment -

        Committed to trunk (I had to do some messing to get the new test class in TestServerLoad moving it under hbase-server). Thanks Elliott

        Show
        stack added a comment - Committed to trunk (I had to do some messing to get the new test class in TestServerLoad moving it under hbase-server). Thanks Elliott
        Hide
        Hudson added a comment -

        Integrated in HBase-TRUNK #2946 (See https://builds.apache.org/job/HBase-TRUNK/2946/)
        HBASE-6084 Server Load does not display correctly on the ui (Revision 1344023)

        Result = SUCCESS
        stack :
        Files :

        • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
        Show
        Hudson added a comment - Integrated in HBase-TRUNK #2946 (See https://builds.apache.org/job/HBase-TRUNK/2946/ ) HBASE-6084 Server Load does not display correctly on the ui (Revision 1344023) Result = SUCCESS stack : Files : /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
        Hide
        Hudson added a comment -

        Integrated in HBase-TRUNK #2947 (See https://builds.apache.org/job/HBase-TRUNK/2947/)
        HBASE-6084 Server Load does not display correctly on the ui (Revision 1344026)

        Result = FAILURE
        stack :
        Files :

        • /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java
        Show
        Hudson added a comment - Integrated in HBase-TRUNK #2947 (See https://builds.apache.org/job/HBase-TRUNK/2947/ ) HBASE-6084 Server Load does not display correctly on the ui (Revision 1344026) Result = FAILURE stack : Files : /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java
        Hide
        Hudson added a comment -

        Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #31 (See https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/31/)
        HBASE-6084 Server Load does not display correctly on the ui (Revision 1344026)
        HBASE-6084 Server Load does not display correctly on the ui (Revision 1344023)

        Result = FAILURE
        stack :
        Files :

        • /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java

        stack :
        Files :

        • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
        Show
        Hudson added a comment - Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #31 (See https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/31/ ) HBASE-6084 Server Load does not display correctly on the ui (Revision 1344026) HBASE-6084 Server Load does not display correctly on the ui (Revision 1344023) Result = FAILURE stack : Files : /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java stack : Files : /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
        Hide
        stack added a comment -

        Marking closed.

        Show
        stack added a comment - Marking closed.

          People

          • Assignee:
            Elliott Clark
            Reporter:
            Elliott Clark
          • Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development