From 349f3875178ab62cda3ed7cd35c5ab8d5b208aaa Mon Sep 17 00:00:00 2001 From: Ryan Doyle Date: Fri, 16 Sep 2016 12:00:35 +1000 Subject: [PATCH] Fix non-weak reference regression introduced with Guava upgrade In 0c858c81ed70c36d4ee598eab742221b93b001d5, this map was migrated to LoadingCache. The weakKeys() builder method accidentally got dropped and the defaults are to hold strong references. This commit re-introduces the weakKeys() builder method for the LoadingCache. --- parfait-core/src/main/java/io/pcp/parfait/timing/ThreadValue.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parfait-core/src/main/java/io/pcp/parfait/timing/ThreadValue.java b/parfait-core/src/main/java/io/pcp/parfait/timing/ThreadValue.java index 9aff6c2..e601720 100644 --- a/parfait-core/src/main/java/io/pcp/parfait/timing/ThreadValue.java +++ b/parfait-core/src/main/java/io/pcp/parfait/timing/ThreadValue.java @@ -49,7 +49,7 @@ public final T getForThread(Thread thread) { public static class WeakReferenceThreadMap implements ThreadValue { - protected final LoadingCache loadingCache = CacheBuilder.newBuilder().build(new CacheLoader() { + protected final LoadingCache loadingCache = CacheBuilder.newBuilder().weakKeys().build(new CacheLoader() { @Override public T load(Thread thread) throws Exception { return initialValue();