Merge branch 'stable-3.5'
* stable-3.5:
Fix Flogger formatting of exception in AutoAdjustCachesCommand
Remove LoadingCache casts
Postpone call to get() when loading from the in-memory cache
Extract ChronicleMapStoreMetrics to its own class file
Ignore the BytesStore raw type
Emit metric to track number of put failures
Move tryPut to ChronicleMapStore
Move store related metrics to ChronicleMapStore
Introduce ChronicleMapStore
Remove redundant store parameter from ChronicleMapCacheImpl
Do not throw when failing to store into chronicle-map
Expose max auto resizes metric
Allow to specify number of entries in auto-adjust-caches
Fix link to auto-adjust caches in tuning docs
Add acceptance test for REST auto-tuning for single cache
Allow to restrict the caches to auto-tune
Increase the memory used in acceptance tests
build.md: Use correct path for external_plugin_deps.bzl
Change-Id: Ia7e9afa521ea430a3647af5243cd4b3c319ec595
diff --git a/src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheFactory.java b/src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheFactory.java
index 1161699..5f9b805 100644
--- a/src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheFactory.java
+++ b/src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheFactory.java
@@ -21,7 +21,6 @@
import com.google.gerrit.extensions.events.LifecycleListener;
import com.google.gerrit.extensions.registration.DynamicMap;
import com.google.gerrit.metrics.MetricMaker;
-import com.google.gerrit.server.cache.CacheBackend;
import com.google.gerrit.server.cache.MemoryCacheFactory;
import com.google.gerrit.server.cache.PersistentCacheBaseFactory;
import com.google.gerrit.server.cache.PersistentCacheDef;
@@ -82,24 +81,20 @@
}
@Override
- public <K, V> Cache<K, V> buildImpl(
- PersistentCacheDef<K, V> in, long limit, CacheBackend backend) {
+ public <K, V> Cache<K, V> buildImpl(PersistentCacheDef<K, V> in, long limit) {
ChronicleMapCacheConfig config =
configFactory.create(
in.configKey(),
fileName(cacheDir, in.name(), in.version()),
in.expireAfterWrite(),
in.refreshAfterWrite());
- return build(in, backend, config, metricMaker);
+ return build(in, config, metricMaker);
}
@SuppressWarnings("unchecked")
@VisibleForTesting
<K, V> Cache<K, V> build(
- PersistentCacheDef<K, V> in,
- CacheBackend backend,
- ChronicleMapCacheConfig config,
- MetricMaker metricMaker) {
+ PersistentCacheDef<K, V> in, ChronicleMapCacheConfig config, MetricMaker metricMaker) {
ChronicleMapCacheDefProxy<K, V> def = new ChronicleMapCacheDefProxy<>(in);
ChronicleMapCacheImpl<K, V> cache;
@@ -113,7 +108,7 @@
LoadingCache<K, TimedValue<V>> mem =
(LoadingCache<K, TimedValue<V>>)
- memCacheFactory.build(def, (CacheLoader<K, V>) memLoader, backend);
+ memCacheFactory.build(def, (CacheLoader<K, V>) memLoader);
cache =
new ChronicleMapCacheImpl<>(
@@ -134,14 +129,14 @@
@Override
public <K, V> LoadingCache<K, V> buildImpl(
- PersistentCacheDef<K, V> in, CacheLoader<K, V> loader, long limit, CacheBackend backend) {
+ PersistentCacheDef<K, V> in, CacheLoader<K, V> loader, long limit) {
ChronicleMapCacheConfig config =
configFactory.create(
in.configKey(),
fileName(cacheDir, in.name(), in.version()),
in.expireAfterWrite(),
in.refreshAfterWrite());
- return build(in, loader, backend, config, metricMaker);
+ return build(in, loader, config, metricMaker);
}
@SuppressWarnings("unchecked")
@@ -149,7 +144,6 @@
public <K, V> LoadingCache<K, V> build(
PersistentCacheDef<K, V> in,
CacheLoader<K, V> loader,
- CacheBackend backend,
ChronicleMapCacheConfig config,
MetricMaker metricMaker) {
ChronicleMapCacheImpl<K, V> cache;
@@ -165,7 +159,7 @@
LoadingCache<K, TimedValue<V>> mem =
(LoadingCache<K, TimedValue<V>>)
- memCacheFactory.build(def, (CacheLoader<K, V>) memLoader, backend);
+ memCacheFactory.build(def, (CacheLoader<K, V>) memLoader);
cache =
new ChronicleMapCacheImpl<>(
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java
index 444762b..872503c 100644
--- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java
+++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java
@@ -22,7 +22,6 @@
import com.google.gerrit.acceptance.UseLocalDisk;
import com.google.gerrit.entities.Project;
import com.google.gerrit.extensions.api.accounts.AccountInput;
-import com.google.gerrit.server.cache.CacheBackend;
import com.google.gerrit.server.cache.PersistentCacheFactory;
import com.google.inject.Inject;
import org.junit.Test;
@@ -47,8 +46,7 @@
public void shouldBuildInMemoryCacheWhenDiskLimitIsNegative() {
final int negativeDiskLimit = -1;
final Cache<String, String> cache =
- persistentCacheFactory.build(
- new TestPersistentCacheDef("foo", null, negativeDiskLimit, 0), CacheBackend.CAFFEINE);
+ persistentCacheFactory.build(new TestPersistentCacheDef("foo", null, negativeDiskLimit, 0));
assertThat(cache.getClass().getSimpleName()).isEqualTo("CaffeinatedGuavaCache");
}
@@ -58,8 +56,7 @@
final int positiveDiskLimit = 1024;
assertThat(
persistentCacheFactory.build(
- new TestPersistentCacheDef("foo", null, positiveDiskLimit, ZERO_INMEMORY_CACHE),
- CacheBackend.CAFFEINE))
+ new TestPersistentCacheDef("foo", null, positiveDiskLimit, ZERO_INMEMORY_CACHE)))
.isInstanceOf(ChronicleMapCacheImpl.class);
}
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java
index 0041c53..8cf79fc 100644
--- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java
+++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java
@@ -26,7 +26,6 @@
import com.google.gerrit.common.Nullable;
import com.google.gerrit.metrics.DisabledMetricMaker;
import com.google.gerrit.metrics.MetricMaker;
-import com.google.gerrit.server.cache.CacheBackend;
import com.google.gerrit.server.cache.MemoryCacheFactory;
import com.google.gerrit.server.cache.serialize.CacheSerializer;
import com.google.gerrit.server.cache.serialize.StringCacheSerializer;
@@ -619,11 +618,10 @@
if (withLoader) {
return (ChronicleMapCacheImpl<String, String>)
- cacheFactory.build(
- cacheDef, cacheDef.loader(), CacheBackend.CAFFEINE, config, metricMaker);
+ cacheFactory.build(cacheDef, cacheDef.loader(), config, metricMaker);
}
return (ChronicleMapCacheImpl<String, String>)
- cacheFactory.build(cacheDef, CacheBackend.CAFFEINE, config, metricMaker);
+ cacheFactory.build(cacheDef, config, metricMaker);
}
private ChronicleMapCacheImpl<String, String> newCacheWithLoader(@Nullable String loadedValue) {