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:41:20 UTC

[hbase] branch master 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 master
in repository https://gitbox.apache.org/repos/asf/hbase.git


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

commit af8398a0ac1926de807cb37aff79a1efd6fc1436
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 c4cb81f..d283b2b 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;