You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by se...@apache.org on 2019/01/23 00:54:04 UTC

[hbase] branch branch-1 updated: HBASE-21575 : memstore above high watermark message is logged too much

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

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


The following commit(s) were added to refs/heads/branch-1 by this push:
     new 7cefd8b  HBASE-21575 : memstore above high watermark message is logged too much
7cefd8b is described below

commit 7cefd8bc251ec55e9c9628ad7ebccfd641a0d053
Author: Sergey Shelukhin <se...@apache.org>
AuthorDate: Wed Dec 12 11:02:25 2018 -0800

    HBASE-21575 : memstore above high watermark message is logged too much
---
 .../org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java     | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java
index 9545014..debca0f 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java
@@ -585,6 +585,7 @@ class MemStoreFlusher implements FlushRequester {
         scope.getSpan().addTimelineAnnotation("Force Flush. We're above high water mark.");
       }
       long start = EnvironmentEdgeManager.currentTime();
+      long nextLogTimeMs = start;
       synchronized (this.blockSignal) {
         boolean blocked = false;
         long startTime = 0;
@@ -610,8 +611,11 @@ class MemStoreFlusher implements FlushRequester {
               LOG.warn("Interrupted while waiting");
               interrupted = true;
             }
-            long took = EnvironmentEdgeManager.currentTime() - start;
-            LOG.warn("Memstore is above high water mark and block " + took + "ms");
+            long nowMs = EnvironmentEdgeManager.currentTime();
+            if (nowMs >= nextLogTimeMs) {
+              LOG.warn("Memstore is above high water mark and block " + (nowMs - start) + " ms");
+              nextLogTimeMs = nowMs + 1000;
+            }
           }
         } finally {
           if (interrupted) {