bbeaudreault commented on code in PR #4410:
URL: https://github.com/apache/hbase/pull/4410#discussion_r913756205


##########
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCacheFactory.java:
##########
@@ -113,7 +117,17 @@ public static BlockCache createBlockCache(Configuration 
conf) {
         LOG.warn(
           "From HBase 2.0 onwards only combined mode of LRU cache and bucket 
cache is available");
       }
-      return bucketCache == null ? l1Cache : new CombinedBlockCache(l1Cache, 
bucketCache);
+
+      if (bucketCache == null) {
+        return l1Cache;
+      }
+
+      if (conf.getBoolean(BLOCKCACHE_VICTIM_HANDLER_ENABLED_KEY,
+          BLOCKCACHE_VICTIM_HANDLER_ENABLED_DEFAULT)) {
+        return new InclusiveCombinedBlockCache(l1Cache, bucketCache);

Review Comment:
   @liangxs what do you think about having the victim cache still be 
preferential?
   
   DATA goes direct to BucketCache
   META goes direct to LRU, and victims flush to BucketCache
   
   This seems like a good compromise of the performance. META still prefers 
faster LRU on-heap, but if too big to fit ends up in BucketCache. 
   
   If we can agree to that, personally I think it should just be the default -- 
no new config. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@hbase.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to