Repository navigation
Retry remote calls cut off by an HTTP/2 GOAWAY - #48
Conversation
Auto-committed-on: macbook
Auto-committed-on: macbook
Co-authored-by: Medulla <medulla@tinyhumans.ai>
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing: 3
✨ Finishing Touches
Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Tiny Sweeper reviewTiny Sweeper reviewed this change across 5 lane(s) and found 0 active actionable finding(s). Detailed lane evidence and any incomplete work are listed below. State: Incomplete Review snapshot
Completeness: Incomplete FeaturesNone identified with supported citations. TestsNo supported feature-to-test mapping was produced. Test execution is not inferred. FindingsNo active actionable findings. Could not review: crates/tinymold-remote/src/remote/mod.rs, crates/tinymold-remote/src/remote/test.rs, docs/specs/remote.md Before merge
How this fits togetherflowchart LR
n0["an_upload_that_times_out_once_is_retried<br/>changed"]:::changed
n1["new"]:::impacted
n2["with"]:::impacted
n3["remote"]:::impacted
n4["configured"]:::impacted
n0 -->|calls| n1
n0 -->|tests| n1
n0 -->|calls| n2
n0 -->|tests| n2
n3 -->|calls| n1
n4 -->|calls| n1
classDef changed fill:#0d4429,stroke:#238636,color:#e6edf3
classDef impacted fill:#161b22,stroke:#6e7681,color:#c9d1d9
classDef flagged fill:#5a1e02,stroke:#d93f0b,color:#ffffff
classDef blocking fill:#67060c,stroke:#f85149,color:#ffffff
Agent review detailscritique
security
tests
commits
description
Evidence and run details
|
There was a problem hiding this comment.
tinysweeper found nothing blocking, but could not review everything, so this is not an approval: crates/tinymold-remote/src/remote/mod.rs, crates/tinymold-remote/src/remote/test.rs, docs/specs/remote.md.
$0.0014 · 94,846 in / 8,979 out · 0 cached (0%) · ladder/vectors-oai3, glm-5.3-flash · 169 embedded
critique: $0.0001 · 13,322 in / 6 out · 0 cached (0%) · glm-5.3-flash
security: $0.0006 · 46,576 in / 2,642 out · 0 cached (0%) · glm-5.3-flash
tests: $0.0002 · 13,855 in / 1,834 out · 0 cached (0%) · glm-5.3-flash
description: $0.0002 · 14,706 in / 2,682 out · 0 cached (0%) · glm-5.3-flash
chottu-core's
tinymold/saveagainstgrpcs://cache.tinyhumans.aifailed with:nginx, which terminates TLS in front of
tinymold serve, ends an HTTP/2 connection afterkeepalive_requests(1000 by default) with a graceful GOAWAY. The calls in flight then fail asINTERNALh2 protocol errors, andpushtreated them as a refusal and gave up the whole push. They're now transient: retried after 1/4/15 s, with the channel reconnecting. The server side also raises the limit (gh-hosted-runner#17), but a client shouldn't depend on any one proxy's settings.Behavior change:
INTERNALstatuses whose message starts withh2 protocol errorare retried. OtherINTERNALstatuses still fail at once.Validation
a_connection_the_server_closed_is_retriedfails before the fix and passes after.cargo fmt --check,clippy -D warnings,build,test --all-features(exit 0) andcargo doc -D warningsare clean.docs/specs/remote.mdretry section updated.Summary by CodeRabbit