HBASE-21575 : memstore above high watermark message is logged too much

This commit is contained in:
Sergey Shelukhin 2018-12-12 11:02:25 -08:00
parent 9a25d0c249
commit 3ff274e22e
1 changed files with 6 additions and 2 deletions

View File

@ -703,6 +703,7 @@ class MemStoreFlusher implements FlushRequester {
if (flushType != FlushType.NORMAL) {
TraceUtil.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;
@ -744,8 +745,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 {} ms", nowMs - start);
nextLogTimeMs = nowMs + 1000;
}
flushType = isAboveHighWaterMark();
}
} finally {