wushinanqiyi opened a new pull request, #3532:
URL: https://github.com/apache/brpc/pull/3532

   ### What problem does this PR solve?
   
   Canceled RPCs use ECANCELED, which currently contributes to circuit-breaker 
error statistics and immediately reopens a half-open circuit. Caller 
cancellation does not indicate a downstream server failure.
   
   ### What is changed and the side effects?
   
   Ignore ECANCELED alongside ELIMIT at the start of CircuitBreaker::OnCallEnd. 
Canceled requests do not affect sampling, error cost, latency, or the 
successful half-open probe count.
   
   Add regression tests for cancellation during initialization, interleaved 
cancellation after initialization, and cancellation in the half-open state. The 
tests also check that genuine errors still trigger isolation.
   
   Performance effects: one additional error-code comparison per call.
   Breaking backward compatibility: no API changes; cancellation no longer 
causes circuit-breaker isolation.
   
   ### Validation
   
   - git diff --check: passed.
   - Native brpc unit tests: not run locally; this Windows host has no 
configured Linux/WSL build environment or brpc dependencies. Linux/macOS CI 
validation is still required.
   


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to