You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ra...@apache.org on 2020/05/18 09:45:04 UTC

[hbase] branch branch-2.2 updated: HBASE-24365 MetricsTableWrapperAggregateImpl runnable fails due to exception and never runs (#1729)

This is an automated email from the ASF dual-hosted git repository.

ramkrishna pushed a commit to branch branch-2.2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.2 by this push:
     new 7cd8abf  HBASE-24365 MetricsTableWrapperAggregateImpl runnable fails due to exception and never runs (#1729)
7cd8abf is described below

commit 7cd8abf1a9debb7bd9a141853042fdc6f24972b3
Author: ramkrish86 <ra...@hotmail.com>
AuthorDate: Mon May 18 15:11:02 2020 +0530

    HBASE-24365 MetricsTableWrapperAggregateImpl runnable fails due to exception and never runs (#1729)
    
    Signed-off-by: binlijin <bi...@gmail.com>
    Signed-off by: Viraj Jasani <vj...@apache.org>
---
 .../regionserver/MetricsTableWrapperAggregateImpl.java  | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsTableWrapperAggregateImpl.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsTableWrapperAggregateImpl.java
index 56b7598..781cd90 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsTableWrapperAggregateImpl.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsTableWrapperAggregateImpl.java
@@ -76,11 +76,18 @@ public class MetricsTableWrapperAggregateImpl implements MetricsTableWrapperAggr
               store.getMemStoreSize().getHeapSize() + store.getMemStoreSize().getOffHeapSize());
             mt.storeFileSize += store.getStorefilesSize();
             mt.referenceFileCount += store.getNumReferenceFiles();
-
-            mt.maxStoreFileAge = Math.max(mt.maxStoreFileAge, store.getMaxStoreFileAge().getAsLong());
-            mt.minStoreFileAge = Math.min(mt.minStoreFileAge, store.getMinStoreFileAge().getAsLong());
-            mt.totalStoreFileAge = (long)store.getAvgStoreFileAge().getAsDouble() *
-                store.getStorefilesCount();
+            if (store.getMaxStoreFileAge().isPresent()) {
+              mt.maxStoreFileAge =
+                  Math.max(mt.maxStoreFileAge, store.getMaxStoreFileAge().getAsLong());
+            }
+            if (store.getMinStoreFileAge().isPresent()) {
+              mt.minStoreFileAge =
+                  Math.min(mt.minStoreFileAge, store.getMinStoreFileAge().getAsLong());
+            }
+            if (store.getAvgStoreFileAge().isPresent()) {
+              mt.totalStoreFileAge =
+                  (long) store.getAvgStoreFileAge().getAsDouble() * store.getStorefilesCount();
+            }
             mt.storeCount += 1;
           }
           mt.regionCount += 1;