diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/routing/caches/LocalCache.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/routing/caches/LocalCache.java index a9542253a3..1ecfaa36fb 100644 --- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/routing/caches/LocalCache.java +++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/routing/caches/LocalCache.java @@ -27,6 +27,7 @@ import java.lang.invoke.MethodHandles; import java.util.Map; import java.util.Objects; +import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; public class LocalCache implements Cache, RemovalListener { @@ -70,7 +71,7 @@ public class LocalCache implements Cache, RemovalListener { @Override public void start() { if (persisted) { - persistedCacheEntries = storageManager.getPersistedKeyValuePairs(id); + persistedCacheEntries = new ConcurrentHashMap<>(storageManager.getPersistedKeyValuePairs(id)); if (persistedCacheEntries != null) { for (Map.Entry cacheEntry : persistedCacheEntries.entrySet()) {