diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/ClusterStatus.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/ClusterStatus.java index 9c3cc73ea9c..693b4186a57 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/ClusterStatus.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/ClusterStatus.java @@ -193,15 +193,21 @@ public class ClusterStatus { /** * @return the number of requests since last report + * @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0 + * Use {@link #getRequestCount()} instead. */ + @Deprecated public int getRequestsCount() { - int count = 0; - if (liveServers != null && !liveServers.isEmpty()) { - for (Map.Entry e: this.liveServers.entrySet()) { - count += e.getValue().getNumberOfRequests(); - } + return (int) getRequestCount(); + } + + public long getRequestCount() { + if (liveServers == null) { + return 0L; } - return count; + return liveServers.values().stream() + .mapToLong(ServerLoad::getNumberOfRequests) + .sum(); } /** @@ -375,7 +381,7 @@ public class ClusterStatus { } sb.append("\nAverage load: " + getAverageLoad()); - sb.append("\nNumber of requests: " + getRequestsCount()); + sb.append("\nNumber of requests: " + getRequestCount()); sb.append("\nNumber of regions: " + getRegionsCount()); int ritSize = (intransition != null) ? intransition.size() : 0; diff --git a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java index 865fab783bd..460f86a68ae 100644 --- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java +++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java @@ -74,7 +74,7 @@ public class StorageClusterStatusResource extends ResourceBase { EnumSet.of(Option.LIVE_SERVERS, Option.DEAD_SERVERS)); StorageClusterStatusModel model = new StorageClusterStatusModel(); model.setRegions(status.getRegionsCount()); - model.setRequests(status.getRequestsCount()); + model.setRequests(status.getRequestCount()); model.setAverageLoad(status.getAverageLoad()); for (ServerName info: status.getServers()) { ServerLoad load = status.getLoad(info); diff --git a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.java b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.java index 2f38a440fe1..a20a40565ea 100644 --- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.java +++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.java @@ -630,7 +630,7 @@ public class StorageClusterStatusModel * @param requests the total number of requests per second handled by the * cluster */ - public void setRequests(int requests) { + public void setRequests(long requests) { this.requests = requests; } diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java index 21a09a73e8f..192c2e9ec53 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java @@ -1309,7 +1309,7 @@ public class HRegionServer extends HasThread implements ClusterStatusProtos.ServerLoad.Builder serverLoad = ClusterStatusProtos.ServerLoad.newBuilder(); serverLoad.setNumberOfRequests((int) regionServerWrapper.getRequestsPerSecond()); - serverLoad.setTotalNumberOfRequests((int) regionServerWrapper.getTotalRequestCount()); + serverLoad.setTotalNumberOfRequests(regionServerWrapper.getTotalRequestCount()); serverLoad.setUsedHeapMB((int)(usedMemory / 1024 / 1024)); serverLoad.setMaxHeapMB((int) (maxMemory / 1024 / 1024)); Set coprocessors = getWAL(null).getCoprocessorHost().getCoprocessors(); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java index 0879a692cf4..aab3b36e678 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java @@ -565,7 +565,7 @@ public class HBaseFsck extends Configured implements Closeable { } errors.print("Average load: " + status.getAverageLoad()); - errors.print("Number of requests: " + status.getRequestsCount()); + errors.print("Number of requests: " + status.getRequestCount()); errors.print("Number of regions: " + status.getRegionsCount()); List rits = status.getRegionsInTransition();