davsclaus opened a new pull request, #24899: URL: https://github.com/apache/camel/pull/24899
_Claude Code on behalf of davsclaus_ ## Summary Neither `FaultToleranceProcessor` nor `ResilienceProcessor` override `doSuspend()`/`doResume()`, so the circuit breaker state can be lost during route suspend/resume. This PR adds explicit no-op overrides to preserve breaker state across the suspend/resume lifecycle: - **FaultToleranceProcessor**: `doStop()` calls `CircuitBreakerMaintenance.get().reset(id)` which resets the breaker to CLOSED. The new `doSuspend()`/`doResume()` overrides skip this cleanup. - **ResilienceProcessor**: `doStop()` calls `circuitBreakerRegistry.remove(id)` which removes the breaker entirely. The new `doSuspend()`/`doResume()` overrides skip this cleanup. Stop/start resetting state remains unchanged (full lifecycle reset). Suspend/resume is lightweight and temporary — breaker state survives it. Related: CAMEL-24136 (umbrella for circuit breaker review findings, finding M5). ## Test plan - [x] New `ResilienceSuspendResumeTest` - verifies circuit breaker state (OPEN) is preserved across suspend/resume - [x] New `FaultToleranceSuspendResumeTest` - verifies circuit breaker state is preserved across suspend/resume - [x] All existing resilience4j tests pass (47 tests) - [x] All existing fault-tolerance tests pass (25 tests) - [x] Full reactor build passes Co-Authored-By: Claude Opus 4.6 <[email protected]> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
