Skip to content

fix(_retry): add RESOURCE_EXHAUSTED to default retryable codes#96

Merged
zeevdr merged 1 commit into
mainfrom
fix/retry-resource-exhausted
May 25, 2026
Merged

fix(_retry): add RESOURCE_EXHAUSTED to default retryable codes#96
zeevdr merged 1 commit into
mainfrom
fix/retry-resource-exhausted

Conversation

@zeevdr
Copy link
Copy Markdown
Member

@zeevdr zeevdr commented May 25, 2026

Summary

  • RESOURCE_EXHAUSTED means the server rejected the request (rate limit), not that it was applied — safe to retry.
  • Aligns the default retryable codes with common gRPC retry guidance, which includes rate-limited responses.

Test plan

  • Updated test_retry_config_defaults to assert RESOURCE_EXHAUSTED is in the default set.
  • Added test_retry_on_resource_exhausted to verify sync retry succeeds on that code.
  • Full test suite passes (228 passed, 97% coverage).

Closes #59

Rate-limited reads are rejected (not applied) so retrying is safe.
Adds RESOURCE_EXHAUSTED alongside UNAVAILABLE and DEADLINE_EXCEEDED in
the default retryable_codes tuple. Updates test_retry_config_defaults
and adds test_retry_on_resource_exhausted.

Co-Authored-By: Claude <noreply@anthropic.com>
Closes #59
@zeevdr zeevdr added this to the Beta Readiness milestone May 25, 2026
@zeevdr zeevdr added size: S Quick win — a few hours or less priority: P2 Nice-to-have labels May 25, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented May 25, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@zeevdr zeevdr merged commit 48ac008 into main May 25, 2026
15 checks passed
@zeevdr zeevdr deleted the fix/retry-resource-exhausted branch May 25, 2026 04:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority: P2 Nice-to-have size: S Quick win — a few hours or less

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Retry: include RESOURCE_EXHAUSTED in default retryable codes

1 participant