diff --git a/hbase-common/src/main/resources/hbase-default.xml b/hbase-common/src/main/resources/hbase-default.xml index 46b64472cd3..f4087aacacd 100644 --- a/hbase-common/src/main/resources/hbase-default.xml +++ b/hbase-common/src/main/resources/hbase-default.xml @@ -614,6 +614,15 @@ possible configurations would overwhelm and obscure the important. is run to rewrite all HStoreFiles files as one. Larger numbers put off compaction but when it runs, it takes longer to complete. + + hbase.hstore.flusher.count + 2 + + The number of flush threads. With less threads, the memstore flushes will be queued. With + more threads, the flush will be executed in parallel, increasing the hdfs load. This can + lead as well to more compactions. + + hbase.hstore.blockingStoreFiles 10 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 c3b2667ca0a..5bf3a19bd10 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 @@ -122,7 +122,7 @@ class MemStoreFlusher implements FlushRequester { this.blockingWaitTime = conf.getInt("hbase.hstore.blockingWaitTime", 90000); - int handlerCount = conf.getInt("hbase.hstore.flusher.count", 1); + int handlerCount = conf.getInt("hbase.hstore.flusher.count", 2); this.flushHandlers = new FlushHandler[handlerCount]; LOG.info("globalMemStoreLimit=" + StringUtils.humanReadableInt(this.globalMemStoreLimit) +