diff --git a/src/main/java/org/springframework/retry/support/MetricsRetryListener.java b/src/main/java/org/springframework/retry/support/MetricsRetryListener.java index 957b9f1d..4dc9939e 100644 --- a/src/main/java/org/springframework/retry/support/MetricsRetryListener.java +++ b/src/main/java/org/springframework/retry/support/MetricsRetryListener.java @@ -16,6 +16,7 @@ package org.springframework.retry.support; +import java.util.Collections; import java.util.IdentityHashMap; import java.util.Map; import java.util.function.Function; @@ -53,6 +54,7 @@ * be used to further customize tags on the timers. * * @author Artem Bilan + * @author Huijin Hong * @since 2.0.8 */ public class MetricsRetryListener implements RetryListener { @@ -61,7 +63,8 @@ public class MetricsRetryListener implements RetryListener { private final MeterRegistry meterRegistry; - private final Map retryContextToSample = new IdentityHashMap<>(); + private final Map retryContextToSample = Collections + .synchronizedMap(new IdentityHashMap<>()); private final Timer.Builder retryMeterProvider;