diff --git a/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java b/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java index 8388420a6cc..ec4c14a62a4 100644 --- a/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java +++ b/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java @@ -355,10 +355,11 @@ class MemStoreFlusher extends Thread implements FlushRequester { // Note: We don't impose blockingStoreFiles constraint on meta regions LOG.warn("Region " + region.getRegionNameAsString() + " has too many " + "store files; delaying flush up to " + this.blockingWaitTime + "ms"); + if (!this.server.compactSplitThread.requestSplit(region)) { + this.server.compactSplitThread.requestCompaction(region, getName()); + } } - if (!this.server.compactSplitThread.requestSplit(region)) { - this.server.compactSplitThread.requestCompaction(region, getName()); - } + // Put back on the queue. Have it come back out of the queue // after a delay of this.blockingWaitTime / 100 ms. this.flushQueue.add(fqe.requeue(this.blockingWaitTime / 100)); diff --git a/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java b/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java index 93577b0ce48..7761c42ae54 100644 --- a/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java +++ b/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java @@ -1003,7 +1003,8 @@ public class Store implements HeapSize { } if (filesToCompact.isEmpty()) { - LOG.debug(this.storeNameStr + ": no store files to compact"); + LOG.debug(this.getHRegionInfo().getEncodedName() + " - " + + this.storeNameStr + ": no store files to compact"); return filesToCompact; }