Commit c2cd59b
committed
feat(rust): implement idempotency-aware retry logic [PECOBLR-2091]
Implements the standardized DBSQL connector retry specification with:
- RequestType enum as single source of truth for request classification
- Idempotent vs non-idempotent retry strategies with distinct behavior
- Exponential backoff with random jitter (50-750ms)
- Retry-After header support (seconds and HTTP-date formats)
- Cumulative overall timeout (default 900s)
- Per-category retry config (SEA, CloudFetch, Auth) with global defaults
- Structured DEBUG logging per attempt and per request summary
- Metadata queries (list_*) classified as idempotent via ExecuteMetadataQuery
Co-authored-by: Isaac1 parent f69804a commit c2cd59b
File tree
13 files changed
+2742
-206
lines changed- rust
- docs/designs
- src
- auth/oauth
- client
- reader/cloudfetch
- tests
13 files changed
+2742
-206
lines changedSome generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
56 | 59 | | |
57 | 60 | | |
58 | 61 | | |
| |||
0 commit comments