ExponentiallyDecayingReservoir | Caused by: java.lang.NullPointerException: Cannot assign field "value" because "<local2>[<parameter1>]" is null - 4.2.16
Author: atul008Created Feb 24, 2026Updated May 25, 2026
We are facing the following exceptions in our application
Lib version
io.dropwizard.metrics:metrics-core:4.2.16
Caused by: java.lang.NullPointerException: Cannot assign field "value" because "<local2>[<parameter1>]" is null
at java.base/java.lang.ThreadLocal$ThreadLocalMap.expungeStaleEntry(Unknown Source)
at java.base/java.lang.ThreadLocal$ThreadLocalMap.getEntryAfterMiss(Unknown Source)
at java.base/java.lang.ThreadLocal$ThreadLocalMap.getEntry(Unknown Source)
at java.base/java.lang.ThreadLocal.get(Unknown Source)
at java.base/java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryAcquireShared(Unknown Source)
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(Unknown Source)
at java.base/java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock(Unknown Source)
at com.codahale.metrics.ExponentiallyDecayingReservoir.lockForRegularUsage(ExponentiallyDecayingReservoir.java:201)
at com.codahale.metrics.ExponentiallyDecayingReservoir.update(ExponentiallyDecayingReservoir.java:95)
at com.codahale.metrics.ExponentiallyDecayingReservoir.update(ExponentiallyDecayingReservoir.java:84)
at com.codahale.metrics.Histogram.update(Histogram.java:41)
at com.codahale.metrics.Timer.update(Timer.java:199)
at com.codahale.metrics.Timer.update(Timer.java:94)Source: dropwizard/metrics