Repository: accumulo
Updated Branches:
  refs/heads/IGNITE 2e992c889 -> c4a18a63e


ACCUMULO-4463: simplified config


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

Branch: refs/heads/IGNITE
Commit: e8ccdddc29e69ea51e49720f9c7424ebd6ec00d5
Parents: 61dd036
Author: Keith Turner <ktur...@apache.org>
Authored: Wed May 17 18:26:54 2017 -0400
Committer: Keith Turner <ktur...@apache.org>
Committed: Thu May 18 11:00:13 2017 -0400

----------------------------------------------------------------------
 .../cache/BlockCacheConfiguration.java          | 55 +++---------
 .../cache/lru/LruBlockCacheConfiguration.java   | 90 ++++++++++++++++++--
 .../cache/BlockConfigurationHelperTest.java     | 16 +---
 .../file/blockfile/cache/TestLruBlockCache.java | 64 +++++++-------
 4 files changed, 133 insertions(+), 92 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/e8ccdddc/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/BlockCacheConfiguration.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/BlockCacheConfiguration.java
 
b/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/BlockCacheConfiguration.java
index d879f17..0c07dbd 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/BlockCacheConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/BlockCacheConfiguration.java
@@ -21,56 +21,23 @@ import java.util.Map;
 import java.util.Optional;
 
 import org.apache.accumulo.core.conf.AccumuloConfiguration;
-import org.apache.accumulo.core.conf.ConfigurationCopy;
 import org.apache.accumulo.core.conf.Property;
 
 public class BlockCacheConfiguration {
 
-  public static class BlockCacheConfigurationHelper {
-
-    private final ConfigurationCopy conf;
-    private final String basePropertyName;
-
-    protected BlockCacheConfigurationHelper(ConfigurationCopy conf, CacheType 
type, String implName) {
-      this.conf = conf;
-      this.basePropertyName = BlockCacheManager.CACHE_PROPERTY_BASE + implName 
+ "." + type.name().toLowerCase() + ".";
-    }
-
-    public String getPropertyPrefix() {
-      return basePropertyName;
-    }
-
-    public String getFullPropertyName(String propertySuffix) {
-      return this.basePropertyName + propertySuffix;
-    }
-
-    public Optional<String> get(String property) {
-      return 
Optional.ofNullable(this.conf.get(this.getFullPropertyName(property)));
-    }
-
-    public void set(String propertySuffix, String value) {
-      conf.set(getFullPropertyName(propertySuffix), value);
-    }
-
-    public ConfigurationCopy getConfiguration() {
-      return this.conf;
-    }
-  }
-
   /** Maximum allowable size of cache (block put if size > max, evict) */
   private final long maxSize;
 
   /** Approximate block size */
   private final long blockSize;
 
-  /** Helper object for working with block cache configuration **/
-  private final BlockCacheConfigurationHelper helper;
+  private final Map<String,String> genProps;
 
-  public BlockCacheConfiguration(AccumuloConfiguration conf, CacheType type, 
String implName) {
+  private final String prefix;
 
-    Map<String,String> props = 
conf.getAllPropertiesWithPrefix(Property.GENERAL_ARBITRARY_PROP_PREFIX);
-    ConfigurationCopy blockCacheConfiguration = new ConfigurationCopy(props);
-    this.helper = new BlockCacheConfigurationHelper(blockCacheConfiguration, 
type, implName);
+  public BlockCacheConfiguration(AccumuloConfiguration conf, CacheType type, 
String implName) {
+    prefix = getPrefix(type, implName);
+    genProps = 
conf.getAllPropertiesWithPrefix(Property.GENERAL_ARBITRARY_PROP_PREFIX);
 
     switch (type) {
       case INDEX:
@@ -88,10 +55,6 @@ public class BlockCacheConfiguration {
     this.blockSize = conf.getAsBytes(Property.TSERV_DEFAULT_BLOCKSIZE);
   }
 
-  public BlockCacheConfigurationHelper getHelper() {
-    return this.helper;
-  }
-
   public long getMaxSize() {
     return this.maxSize;
   }
@@ -100,6 +63,14 @@ public class BlockCacheConfiguration {
     return this.blockSize;
   }
 
+  protected Optional<String> get(String suffix) {
+    return Optional.ofNullable(genProps.get(prefix + suffix));
+  }
+
+  public static String getPrefix(CacheType type, String implName) {
+    return BlockCacheManager.CACHE_PROPERTY_BASE + implName + "." + 
type.name().toLowerCase() + ".";
+  }
+
   @Override
   public String toString() {
     return "maxSize: " + getMaxSize() + ", blockSize: " + getBlockSize();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/e8ccdddc/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/lru/LruBlockCacheConfiguration.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/lru/LruBlockCacheConfiguration.java
 
b/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/lru/LruBlockCacheConfiguration.java
index 7131d89..49790cb 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/lru/LruBlockCacheConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/file/blockfile/cache/lru/LruBlockCacheConfiguration.java
@@ -17,10 +17,16 @@
  */
 package org.apache.accumulo.core.file.blockfile.cache.lru;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import org.apache.accumulo.core.conf.AccumuloConfiguration;
 import org.apache.accumulo.core.file.blockfile.cache.BlockCacheConfiguration;
 import org.apache.accumulo.core.file.blockfile.cache.CacheType;
 
+import com.google.common.base.Preconditions;
+import com.google.common.collect.ImmutableMap;
+
 public final class LruBlockCacheConfiguration extends BlockCacheConfiguration {
 
   public static final String PROPERTY_PREFIX = "lru";
@@ -76,14 +82,14 @@ public final class LruBlockCacheConfiguration extends 
BlockCacheConfiguration {
   public LruBlockCacheConfiguration(AccumuloConfiguration conf, CacheType 
type) {
     super(conf, type, PROPERTY_PREFIX);
 
-    this.acceptableFactor = 
this.getHelper().get(ACCEPTABLE_FACTOR_PROPERTY).map(Float::valueOf).filter(f 
-> f > 0).orElse(DEFAULT_ACCEPTABLE_FACTOR);
-    this.minFactor = 
this.getHelper().get(MIN_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f > 
0).orElse(DEFAULT_MIN_FACTOR);
-    this.singleFactor = 
this.getHelper().get(SINGLE_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f 
> 0).orElse(DEFAULT_SINGLE_FACTOR);
-    this.multiFactor = 
this.getHelper().get(MULTI_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f > 
0).orElse(DEFAULT_MULTI_FACTOR);
-    this.memoryFactor = 
this.getHelper().get(MEMORY_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f 
> 0).orElse(DEFAULT_MEMORY_FACTOR);
-    this.mapLoadFactor = 
this.getHelper().get(MAP_LOAD_PROPERTY).map(Float::valueOf).filter(f -> f > 
0).orElse(DEFAULT_LOAD_FACTOR);
-    this.mapConcurrencyLevel = 
this.getHelper().get(MAP_CONCURRENCY_PROPERTY).map(Integer::valueOf).filter(i 
-> i > 0).orElse(DEFAULT_CONCURRENCY_LEVEL);
-    this.useEvictionThread = 
this.getHelper().get(EVICTION_THREAD_PROPERTY).map(Boolean::valueOf).orElse(true);
+    this.acceptableFactor = 
get(ACCEPTABLE_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f > 
0).orElse(DEFAULT_ACCEPTABLE_FACTOR);
+    this.minFactor = get(MIN_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> 
f > 0).orElse(DEFAULT_MIN_FACTOR);
+    this.singleFactor = 
get(SINGLE_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f > 
0).orElse(DEFAULT_SINGLE_FACTOR);
+    this.multiFactor = get(MULTI_FACTOR_PROPERTY).map(Float::valueOf).filter(f 
-> f > 0).orElse(DEFAULT_MULTI_FACTOR);
+    this.memoryFactor = 
get(MEMORY_FACTOR_PROPERTY).map(Float::valueOf).filter(f -> f > 
0).orElse(DEFAULT_MEMORY_FACTOR);
+    this.mapLoadFactor = get(MAP_LOAD_PROPERTY).map(Float::valueOf).filter(f 
-> f > 0).orElse(DEFAULT_LOAD_FACTOR);
+    this.mapConcurrencyLevel = 
get(MAP_CONCURRENCY_PROPERTY).map(Integer::valueOf).filter(i -> i > 
0).orElse(DEFAULT_CONCURRENCY_LEVEL);
+    this.useEvictionThread = 
get(EVICTION_THREAD_PROPERTY).map(Boolean::valueOf).orElse(true);
 
     if (this.getSingleFactor() + this.getMultiFactor() + 
this.getMemoryFactor() != 1) {
       throw new IllegalArgumentException("Single, multi, and memory factors " 
+ " should total 1.0");
@@ -128,6 +134,74 @@ public final class LruBlockCacheConfiguration extends 
BlockCacheConfiguration {
     return useEvictionThread;
   }
 
+  public static class Builder {
+    private Map<String,String> props = new HashMap<>();
+    private String prefix;
+
+    private Builder(String prefix) {
+      this.prefix = prefix;
+    }
+
+    private void set(String prop, float val) {
+      props.put(prefix + prop, Float.toString(val));
+    }
+
+    public Builder acceptableFactor(float af) {
+      Preconditions.checkArgument(af > 0);
+      set(ACCEPTABLE_FACTOR_PROPERTY, af);
+      return this;
+    }
+
+    public Builder minFactor(float mf) {
+      Preconditions.checkArgument(mf > 0);
+      set(MIN_FACTOR_PROPERTY, mf);
+      return this;
+    }
+
+    public Builder singleFactor(float sf) {
+      Preconditions.checkArgument(sf > 0);
+      set(SINGLE_FACTOR_PROPERTY, sf);
+      return this;
+    }
+
+    public Builder multiFactor(float mf) {
+      Preconditions.checkArgument(mf > 0);
+      set(MULTI_FACTOR_PROPERTY, mf);
+      return this;
+    }
+
+    public Builder memoryFactor(float mf) {
+      Preconditions.checkArgument(mf > 0);
+      set(MEMORY_FACTOR_PROPERTY, mf);
+      return this;
+    }
+
+    public Builder mapLoadFactor(float mlf) {
+      Preconditions.checkArgument(mlf > 0);
+      set(MAP_LOAD_PROPERTY, mlf);
+      return this;
+    }
+
+    public Builder mapConcurrencyLevel(int mcl) {
+      Preconditions.checkArgument(mcl > 0);
+      props.put(prefix + MAP_CONCURRENCY_PROPERTY, mcl + "");
+      return this;
+    }
+
+    public Builder useEvictionThread(boolean uet) {
+      props.put(prefix + EVICTION_THREAD_PROPERTY, uet + "");
+      return this;
+    }
+
+    public Map<String,String> buildMap() {
+      return ImmutableMap.copyOf(props);
+    }
+  }
+
+  public static Builder builder(CacheType ct) {
+    return new Builder(getPrefix(ct, PROPERTY_PREFIX));
+  }
+
   @Override
   public String toString() {
     return super.toString() + ", acceptableFactor: " + 
this.getAcceptableFactor() + ", minFactor: " + this.getMinFactor() + ", 
singleFactor: "

http://git-wip-us.apache.org/repos/asf/accumulo/blob/e8ccdddc/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/BlockConfigurationHelperTest.java
----------------------------------------------------------------------
diff --git 
a/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/BlockConfigurationHelperTest.java
 
b/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/BlockConfigurationHelperTest.java
index d2901e3..72ea49c 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/BlockConfigurationHelperTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/BlockConfigurationHelperTest.java
@@ -17,26 +17,16 @@
  */
 package org.apache.accumulo.core.file.blockfile.cache;
 
-import org.apache.accumulo.core.conf.ConfigurationCopy;
-import org.apache.accumulo.core.conf.DefaultConfiguration;
-import 
org.apache.accumulo.core.file.blockfile.cache.lru.LruBlockCacheConfiguration;
 import org.junit.Assert;
 import org.junit.Test;
 
 public class BlockConfigurationHelperTest {
 
-  private BlockCacheConfiguration bcc = new BlockCacheConfiguration(new 
ConfigurationCopy(new DefaultConfiguration()), CacheType.DATA,
-      LruBlockCacheConfiguration.PROPERTY_PREFIX);
-
-  @Test
-  public void testGetFullPropertyName() throws Exception {
-    
Assert.assertEquals("general.custom.cache.block.lru.data.acceptable.factor",
-        
bcc.getHelper().getFullPropertyName(LruBlockCacheConfiguration.ACCEPTABLE_FACTOR_PROPERTY));
-  }
-
   @Test
   public void testGetPropertyPrefix() throws Exception {
-    Assert.assertEquals("general.custom.cache.block.lru.data.", 
bcc.getHelper().getPropertyPrefix());
+    Assert.assertEquals("general.custom.cache.block.lru.data.", 
BlockCacheConfiguration.getPrefix(CacheType.DATA, "lru"));
+    Assert.assertEquals("general.custom.cache.block.lru.index.", 
BlockCacheConfiguration.getPrefix(CacheType.INDEX, "lru"));
+    Assert.assertEquals("general.custom.cache.block.lru.summary.", 
BlockCacheConfiguration.getPrefix(CacheType.SUMMARY, "lru"));
   }
 
 }

http://git-wip-us.apache.org/repos/asf/accumulo/blob/e8ccdddc/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/TestLruBlockCache.java
----------------------------------------------------------------------
diff --git 
a/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/TestLruBlockCache.java
 
b/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/TestLruBlockCache.java
index c986843..d3ea575 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/TestLruBlockCache.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/file/blockfile/cache/TestLruBlockCache.java
@@ -25,7 +25,6 @@ import junit.framework.TestCase;
 import org.apache.accumulo.core.conf.ConfigurationCopy;
 import org.apache.accumulo.core.conf.DefaultConfiguration;
 import org.apache.accumulo.core.conf.Property;
-import 
org.apache.accumulo.core.file.blockfile.cache.BlockCacheConfiguration.BlockCacheConfigurationHelper;
 import org.apache.accumulo.core.file.blockfile.cache.lru.LruBlockCache;
 import 
org.apache.accumulo.core.file.blockfile.cache.lru.LruBlockCacheConfiguration;
 import org.apache.accumulo.core.file.blockfile.cache.lru.LruBlockCacheManager;
@@ -39,6 +38,29 @@ import 
org.apache.accumulo.core.file.blockfile.cache.lru.LruBlockCacheManager;
  */
 public class TestLruBlockCache extends TestCase {
 
+  public void testConfiguration() {
+    ConfigurationCopy cc = new ConfigurationCopy();
+    cc.set(Property.TSERV_CACHE_FACTORY_IMPL, 
LruBlockCacheManager.class.getName());
+    cc.set(Property.TSERV_DEFAULT_BLOCKSIZE, Long.toString(1019));
+    cc.set(Property.TSERV_INDEXCACHE_SIZE, Long.toString(1000023));
+
+    
LruBlockCacheConfiguration.builder(CacheType.INDEX).useEvictionThread(false).minFactor(0.93f).acceptableFactor(0.97f).singleFactor(0.20f)
+        
.multiFactor(0.30f).memoryFactor(0.50f).mapConcurrencyLevel(5).mapLoadFactor(0.53f).buildMap().forEach(cc::set);
+
+    LruBlockCacheConfiguration lbcc = new LruBlockCacheConfiguration(cc, 
CacheType.INDEX);
+
+    assertEquals(false, lbcc.isUseEvictionThread());
+    assertEquals(0.93f, lbcc.getMinFactor());
+    assertEquals(0.97f, lbcc.getAcceptableFactor());
+    assertEquals(0.20f, lbcc.getSingleFactor());
+    assertEquals(0.30f, lbcc.getMultiFactor());
+    assertEquals(0.50f, lbcc.getMemoryFactor());
+    assertEquals(0.53f, lbcc.getMapLoadFactor());
+    assertEquals(5, lbcc.getMapConcurrencyLevel());
+    assertEquals(1019, lbcc.getBlockSize());
+    assertEquals(1000023, lbcc.getMaxSize());
+  }
+
   public void testBackgroundEvictionThread() throws Exception {
 
     long maxSize = 100000;
@@ -140,9 +162,9 @@ public class TestLruBlockCache extends TestCase {
     BlockCacheManager manager = BlockCacheManager.getInstance(cc);
     cc.set(Property.TSERV_DEFAULT_BLOCKSIZE, Long.toString(blockSize));
     cc.set(Property.TSERV_INDEXCACHE_SIZE, Long.toString(maxSize));
-    BlockCacheConfigurationHelper helper = new 
BlockCacheConfigurationHelper(cc, CacheType.INDEX, 
LruBlockCacheConfiguration.PROPERTY_PREFIX);
-    helper.set(LruBlockCacheConfiguration.EVICTION_THREAD_PROPERTY, 
Boolean.FALSE.toString());
-    manager.start(helper.getConfiguration());
+    
LruBlockCacheConfiguration.builder(CacheType.INDEX).useEvictionThread(false).buildMap().forEach(cc::set);
+    manager.start(cc);
+
     LruBlockCache cache = (LruBlockCache) 
manager.getBlockCache(CacheType.INDEX);
 
     Block[] blocks = generateFixedBlocks(10, blockSize, "block");
@@ -187,14 +209,9 @@ public class TestLruBlockCache extends TestCase {
     BlockCacheManager manager = BlockCacheManager.getInstance(cc);
     cc.set(Property.TSERV_DEFAULT_BLOCKSIZE, Long.toString(blockSize));
     cc.set(Property.TSERV_INDEXCACHE_SIZE, Long.toString(maxSize));
-    BlockCacheConfigurationHelper helper = new 
BlockCacheConfigurationHelper(cc, CacheType.INDEX, 
LruBlockCacheConfiguration.PROPERTY_PREFIX);
-    helper.set(LruBlockCacheConfiguration.EVICTION_THREAD_PROPERTY, 
Boolean.FALSE.toString());
-    helper.set(LruBlockCacheConfiguration.MIN_FACTOR_PROPERTY, 
Float.toString(0.98f));
-    helper.set(LruBlockCacheConfiguration.ACCEPTABLE_FACTOR_PROPERTY, 
Float.toString(0.99f));
-    helper.set(LruBlockCacheConfiguration.SINGLE_FACTOR_PROPERTY, 
Float.toString(0.25f));
-    helper.set(LruBlockCacheConfiguration.MULTI_FACTOR_PROPERTY, 
Float.toString(0.50f));
-    helper.set(LruBlockCacheConfiguration.MEMORY_FACTOR_PROPERTY, 
Float.toString(0.25f));
-    manager.start(helper.getConfiguration());
+    
LruBlockCacheConfiguration.builder(CacheType.INDEX).useEvictionThread(false).minFactor(0.98f).acceptableFactor(0.99f).singleFactor(0.25f)
+        .multiFactor(0.50f).memoryFactor(0.25f).buildMap().forEach(cc::set);
+    manager.start(cc);
     LruBlockCache cache = (LruBlockCache) 
manager.getBlockCache(CacheType.INDEX);
 
     Block[] singleBlocks = generateFixedBlocks(5, 10000, "single");
@@ -256,14 +273,9 @@ public class TestLruBlockCache extends TestCase {
     BlockCacheManager manager = BlockCacheManager.getInstance(cc);
     cc.set(Property.TSERV_DEFAULT_BLOCKSIZE, Long.toString(blockSize));
     cc.set(Property.TSERV_INDEXCACHE_SIZE, Long.toString(maxSize));
-    BlockCacheConfigurationHelper helper = new 
BlockCacheConfigurationHelper(cc, CacheType.INDEX, 
LruBlockCacheConfiguration.PROPERTY_PREFIX);
-    helper.set(LruBlockCacheConfiguration.EVICTION_THREAD_PROPERTY, 
Boolean.FALSE.toString());
-    helper.set(LruBlockCacheConfiguration.MIN_FACTOR_PROPERTY, 
Float.toString(0.98f));
-    helper.set(LruBlockCacheConfiguration.ACCEPTABLE_FACTOR_PROPERTY, 
Float.toString(0.99f));
-    helper.set(LruBlockCacheConfiguration.SINGLE_FACTOR_PROPERTY, 
Float.toString(0.33f));
-    helper.set(LruBlockCacheConfiguration.MULTI_FACTOR_PROPERTY, 
Float.toString(0.33f));
-    helper.set(LruBlockCacheConfiguration.MEMORY_FACTOR_PROPERTY, 
Float.toString(0.34f));
-    manager.start(helper.getConfiguration());
+    
LruBlockCacheConfiguration.builder(CacheType.INDEX).useEvictionThread(false).minFactor(0.98f).acceptableFactor(0.99f).singleFactor(0.33f)
+        .multiFactor(0.33f).memoryFactor(0.34f).buildMap().forEach(cc::set);
+    manager.start(cc);
     LruBlockCache cache = (LruBlockCache) 
manager.getBlockCache(CacheType.INDEX);
 
     Block[] singleBlocks = generateFixedBlocks(5, blockSize, "single");
@@ -384,15 +396,9 @@ public class TestLruBlockCache extends TestCase {
     BlockCacheManager manager = BlockCacheManager.getInstance(cc);
     cc.set(Property.TSERV_DEFAULT_BLOCKSIZE, Long.toString(blockSize));
     cc.set(Property.TSERV_INDEXCACHE_SIZE, Long.toString(maxSize));
-    BlockCacheConfigurationHelper helper = new 
BlockCacheConfigurationHelper(cc, CacheType.INDEX, 
LruBlockCacheConfiguration.PROPERTY_PREFIX);
-    helper.set(LruBlockCacheConfiguration.EVICTION_THREAD_PROPERTY, 
Boolean.FALSE.toString());
-    helper.set(LruBlockCacheConfiguration.EVICTION_THREAD_PROPERTY, 
Boolean.FALSE.toString());
-    helper.set(LruBlockCacheConfiguration.MIN_FACTOR_PROPERTY, 
Float.toString(0.66f));
-    helper.set(LruBlockCacheConfiguration.ACCEPTABLE_FACTOR_PROPERTY, 
Float.toString(0.99f));
-    helper.set(LruBlockCacheConfiguration.SINGLE_FACTOR_PROPERTY, 
Float.toString(0.33f));
-    helper.set(LruBlockCacheConfiguration.MULTI_FACTOR_PROPERTY, 
Float.toString(0.33f));
-    helper.set(LruBlockCacheConfiguration.MEMORY_FACTOR_PROPERTY, 
Float.toString(0.34f));
-    manager.start(helper.getConfiguration());
+    
LruBlockCacheConfiguration.builder(CacheType.INDEX).useEvictionThread(false).minFactor(0.66f).acceptableFactor(0.99f).singleFactor(0.33f)
+        .multiFactor(0.33f).memoryFactor(0.34f).buildMap().forEach(cc::set);
+    manager.start(cc);
     LruBlockCache cache = (LruBlockCache) 
manager.getBlockCache(CacheType.INDEX);
 
     Block[] singleBlocks = generateFixedBlocks(20, blockSize, "single");

Reply via email to