You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ec...@apache.org on 2015/12/16 19:52:15 UTC

hbase git commit: HBASE-14984 Allow memcached block cache to set optimze to false

Repository: hbase
Updated Branches:
  refs/heads/branch-1.2 e2d5689e3 -> 0e52565d6


HBASE-14984 Allow memcached block cache to set optimze to false


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/0e52565d
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/0e52565d
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/0e52565d

Branch: refs/heads/branch-1.2
Commit: 0e52565d640b1fe3057722a3b0d9b8431c4564bb
Parents: e2d5689
Author: Elliott Clark <ec...@apache.org>
Authored: Tue Dec 15 13:24:32 2015 -0800
Committer: Elliott Clark <ec...@apache.org>
Committed: Wed Dec 16 10:36:03 2015 -0800

----------------------------------------------------------------------
 .../apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/0e52565d/hbase-external-blockcache/src/main/java/org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java
----------------------------------------------------------------------
diff --git a/hbase-external-blockcache/src/main/java/org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java b/hbase-external-blockcache/src/main/java/org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java
index ba75542..87da90b 100644
--- a/hbase-external-blockcache/src/main/java/org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java
+++ b/hbase-external-blockcache/src/main/java/org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java
@@ -64,7 +64,9 @@ public class MemcachedBlockCache implements BlockCache {
   public static final String MEMCACHED_CONFIG_KEY = "hbase.cache.memcached.servers";
   public static final String MEMCACHED_TIMEOUT_KEY = "hbase.cache.memcached.timeout";
   public static final String MEMCACHED_OPTIMEOUT_KEY = "hbase.cache.memcached.optimeout";
+  public static final String MEMCACHED_OPTIMIZE_KEY = "hbase.cache.memcached.spy.optimze";
   public static final long MEMCACHED_DEFAULT_TIMEOUT = 500;
+  public static final boolean MEMCACHED_OPTIMIZE_DEFAULT = false;
 
   private final MemcachedClient client;
   private final HFileBlockTranscoder tc = new HFileBlockTranscoder();
@@ -75,18 +77,16 @@ public class MemcachedBlockCache implements BlockCache {
 
     long opTimeout = c.getLong(MEMCACHED_OPTIMEOUT_KEY, MEMCACHED_DEFAULT_TIMEOUT);
     long queueTimeout = c.getLong(MEMCACHED_TIMEOUT_KEY, opTimeout + MEMCACHED_DEFAULT_TIMEOUT);
+    boolean optimize = c.getBoolean(MEMCACHED_OPTIMIZE_KEY, MEMCACHED_OPTIMIZE_DEFAULT);
 
     ConnectionFactoryBuilder builder = new ConnectionFactoryBuilder()
         .setOpTimeout(opTimeout)
         .setOpQueueMaxBlockTime(queueTimeout) // Cap the max time before anything times out
         .setFailureMode(FailureMode.Redistribute)
-        .setShouldOptimize(true)              // When regions move lots of reads happen together
-                                              // So combining them into single requests is nice.
+        .setShouldOptimize(optimize)
         .setDaemon(true)                      // Don't keep threads around past the end of days.
         .setUseNagleAlgorithm(false)          // Ain't nobody got time for that
-        .setReadBufferSize(HConstants.DEFAULT_BLOCKSIZE * 4 * 1024);  // 4 times larger than the
-                                                                      // default block just in case
-
+        .setReadBufferSize(HConstants.DEFAULT_BLOCKSIZE * 4 * 1024); // Much larger just in case
 
     // Assume only the localhost is serving memecached.
     // A la mcrouter or co-locating memcached with split regionservers.