If `ignoreThrowablePredicate` throws it can lead to a spin.
Author: HuwCampbellCreated Jun 20, 2025Updated Jun 30, 2026
Labelsbug
This is specific to the Kotlin wrapper.
We found that if ignoreThrowablePredicate throws it can lead to a thread / CPU spinning.
The reasons is quite simple, as if there is a throw inside the circuit breaker handler, then none of releasePermission, onError, or onResult are called; a resource has been acquired which will never be released.
While "don't do that" is good advice, I think an additional try catch over this user supplied function would be prudent.
Source: resilience4j/resilience4j