Repository navigation
Commit 4fe0d6d
fix(circuit_breaker): start a fresh probe success streak on each probe election (#8646)
_LOCAL_SUCCESSES is module-level and was only reset when a probe failed
in the same environment or when this environment closed the circuit. A
streak left from an earlier recovery window (this environment probed,
lost its lease, and another environment reopened the circuit) counted
towards the next window, so the circuit could close after fewer than
success_threshold probes.
Reset the streak right after this worker wins try_acquire_half_open, on
both the OPEN path and the expired-lease takeover path. Add regression
tests for both paths.
Closes #8645
Co-authored-by: Leandro Damascena <lcdama@amazon.pt>1 parent d82a695 commit 4fe0d6d
2 files changed
Lines changed: 68 additions & 0 deletions
File tree
- aws_lambda_powertools/utilities/circuit_breaker
- tests/functional/circuit_breaker
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
151 | 151 | | |
152 | 152 | | |
153 | 153 | | |
| 154 | + | |
154 | 155 | | |
155 | 156 | | |
156 | 157 | | |
| |||
165 | 166 | | |
166 | 167 | | |
167 | 168 | | |
| 169 | + | |
168 | 170 | | |
169 | 171 | | |
170 | 172 | | |
171 | 173 | | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
172 | 186 | | |
173 | 187 | | |
174 | 188 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
442 | 442 | | |
443 | 443 | | |
444 | 444 | | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
445 | 499 | | |
446 | 500 | | |
447 | 501 | | |
| |||
0 commit comments