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]

Reply via email to