Repository: hbase
Updated Branches:
  refs/heads/master 37ef793fa -> 4f472062a


HBASE-12961 Fix negative values in read and write region server metrics.


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/4f472062
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/4f472062
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/4f472062

Branch: refs/heads/master
Commit: 4f472062a436726f686608023126dd8d5cc9c9bc
Parents: 37ef793
Author: Victoria Dudin <[email protected]>
Authored: Tue Feb 3 09:47:46 2015 -0800
Committer: Elliott Clark <[email protected]>
Committed: Wed Feb 4 10:32:09 2015 -0800

----------------------------------------------------------------------
 .../main/java/org/apache/hadoop/hbase/ServerLoad.java |  8 ++++----
 .../java/org/apache/hadoop/hbase/TestServerLoad.java  | 14 +++++++++++---
 2 files changed, 15 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/4f472062/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerLoad.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
index 18e5d67..9141659 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerLoad.java
@@ -45,8 +45,8 @@ public class ServerLoad {
   private int storefileSizeMB = 0;
   private int memstoreSizeMB = 0;
   private int storefileIndexSizeMB = 0;
-  private int readRequestsCount = 0;
-  private int writeRequestsCount = 0;
+  private long readRequestsCount = 0;
+  private long writeRequestsCount = 0;
   private int rootIndexSizeKB = 0;
   private int totalStaticIndexSizeKB = 0;
   private int totalStaticBloomSizeKB = 0;
@@ -138,11 +138,11 @@ public class ServerLoad {
     return storefileIndexSizeMB;
   }
 
-  public int getReadRequestsCount() {
+  public long getReadRequestsCount() {
     return readRequestsCount;
   }
 
-  public int getWriteRequestsCount() {
+  public long getWriteRequestsCount() {
     return writeRequestsCount;
   }
 

http://git-wip-us.apache.org/repos/asf/hbase/blob/4f472062/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java
index 97b518a..5c56e9a 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerLoad.java
@@ -43,7 +43,7 @@ public class TestServerLoad {
     assertEquals(504, sl.getRootIndexSizeKB());
     assertEquals(820, sl.getStorefileSizeInMB());
     assertEquals(82, sl.getStorefileIndexSizeInMB());
-    assertEquals(0, sl.getReadRequestsCount());
+    assertEquals(((long)Integer.MAX_VALUE)*2, sl.getReadRequestsCount());
     
   }
  
@@ -59,6 +59,14 @@ public class TestServerLoad {
     assertTrue(slToString.contains("coprocessors=[]"));
   }
 
+  @Test
+  public void testRegionLoadWrapAroundAggregation() {
+         ServerLoad sl = new ServerLoad(createServerLoadProto());
+         long totalCount = ((long)Integer.MAX_VALUE)*2;
+         assertEquals(totalCount, sl.getReadRequestsCount());
+         assertEquals(totalCount, sl.getWriteRequestsCount());
+  }
+  
   private ClusterStatusProtos.ServerLoad createServerLoadProto() {
     HBaseProtos.RegionSpecifier rSpecOne =
         HBaseProtos.RegionSpecifier.newBuilder()
@@ -72,11 +80,11 @@ public class TestServerLoad {
     ClusterStatusProtos.RegionLoad rlOne =
         
ClusterStatusProtos.RegionLoad.newBuilder().setRegionSpecifier(rSpecOne).setStores(10)
             
.setStorefiles(101).setStoreUncompressedSizeMB(106).setStorefileSizeMB(520)
-            .setStorefileIndexSizeMB(42).setRootIndexSizeKB(201).build();
+            
.setStorefileIndexSizeMB(42).setRootIndexSizeKB(201).setReadRequestsCount(Integer.MAX_VALUE).setWriteRequestsCount(Integer.MAX_VALUE).build();
     ClusterStatusProtos.RegionLoad rlTwo =
         
ClusterStatusProtos.RegionLoad.newBuilder().setRegionSpecifier(rSpecTwo).setStores(3)
             
.setStorefiles(13).setStoreUncompressedSizeMB(23).setStorefileSizeMB(300)
-            .setStorefileIndexSizeMB(40).setRootIndexSizeKB(303).build();
+            
.setStorefileIndexSizeMB(40).setRootIndexSizeKB(303).setReadRequestsCount(Integer.MAX_VALUE).setWriteRequestsCount(Integer.MAX_VALUE).build();
 
     ClusterStatusProtos.ServerLoad sl =
         ClusterStatusProtos.ServerLoad.newBuilder().addRegionLoads(rlOne).

Reply via email to