Hystrix Circuit Never Closes After Opening
See original GitHub issueI am seeing that circuit breakers that open do to a failure in a downstream service remain open and never close again when the downstream service is once again functioning. I am able to reproduce this in Brixton.RELEASE but not in the latest Angel release.
To reproduce the problem clone these three git projects and run them locally by running mvn spring-boot:run
.
https://github.com/ryanjbaxter/ocr-eureka
https://github.com/ryanjbaxter/ocr-races
https://github.com/ryanjbaxter/ocr-participants
If you hit http://localhost:8282/participant
s that will call the /participants
route in the ocr-races
service. Notice this will end up calling a method protected by a circuit breaker. If you then shut down the ocr-participants
service and continue hitting /participants
the circuit will open as expected. If you now restore the ocr-participants
service and continue hitting /participants
the circuit will never close again, no matter how long you wait.
Further experimentation has revealed that this only occurs when using a Feign client. If you use a RestTemplate (load balanced or just a vanilla RestTemplate) to call the downstream service than the circuit opens and closes as expected.
Issue Analytics
- State:
- Created 7 years ago
- Comments:10 (7 by maintainers)
The sample here doesn’t use Feign: https://github.com/spring-cloud-samples/tests/tree/master/hystrix and it has the same problem
Fixed via #1278