Description
Describe the bug
Spring CloudGateway MVC with CircuitBreaker filter, CircuitBreaker is configured to use Resilience4j Bukhead and Timelimiter modules. Timelimiter is configured to cancel running future. After a request timeout, the ProxyExchange class that submitted request to backend continues to wait for backend response. ProxyExchange is not aware that it is handling a request associated with a cancelled future and is not freeing up the thread/resources associated.
Should the ProxyExchange implementation be aware of future associated with it? If not which component should be interrupting the thread.
Note the client is seeing the correct behavior with the TimeoutException, the concern here is resources associated with a timed out request are not getting freed up.