diff --git a/pom.xml b/pom.xml index 8235be3..1b59821 100644 --- a/pom.xml +++ b/pom.xml @@ -377,6 +377,12 @@ + + com.github.ben-manes.caffeine + caffeine + 2.6.1 + + com.twitter diff --git a/src/main/java/org/apache/hadoop/hive/serde2/avro/InstanceCache.java b/src/main/java/org/apache/hadoop/hive/serde2/avro/InstanceCache.java index c3b2f60..0206871 100644 --- a/src/main/java/org/apache/hadoop/hive/serde2/avro/InstanceCache.java +++ b/src/main/java/org/apache/hadoop/hive/serde2/avro/InstanceCache.java @@ -13,20 +13,19 @@ */ package org.apache.hadoop.hive.serde2.avro; -import com.google.common.cache.Cache; -import com.google.common.cache.CacheBuilder; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.github.benmanes.caffeine.cache.Cache; import java.util.Set; -import java.util.concurrent.TimeUnit; /** - * This is a thread-safe, time-bounded fork of the Hive version. + * This is a thread-safe, size-bounded fork of the Hive version. * It also includes the correctness fix from HIVE-11288. */ public abstract class InstanceCache { - private final Cache cache = CacheBuilder.newBuilder() - .expireAfterWrite(1, TimeUnit.MINUTES) + private final Cache cache = Caffeine.newBuilder() + .maximumSize(100_000) .build(); protected InstanceCache() {}