So, Ive recently ran into a problem with an app, Im using java rx with a feign client (Hystrix) enable to call other services, it works fine (I believe) but at some point (I am investigating why, if is due slow response or too many requests) I get an error that crashes the app...
java.util.concurrent.RejectedExecutionException Task java.util.concurrent.FutureTask@...
along a HystrixRuntimeException:
FeignClientApi#getMyEndpoint could not be queued for execution
This made me think (I might be wrong) Im running out of execution threads, so I investigated the thread on my app and I found this:
My main question, is this normal? what does it mean the hystrix-client-api:#
? is it the number given to the thread? they are all in WAITING
status with total waited with a value (at the screenshot is a 3)
any idea?
My metric of threads, looks like keeps going up...
the only related configuration here is
feign: hystrix: enabled: true
the feign client have a configuration class that the only thing it does is to implement this bean
@Bean
public Decoder decoder() { ...//gson decoder }
I also found this after I made multiple requests (and the app dies) checking the process hooked in the app port
Im using spring-core-netflix-cloud:1.3.0