You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Auto-fall back to HTTP/1.1 on HTTP/2 protocol errors
Long-lived HTTP/2 connections through some proxies/load balancers
(e.g. GCP Cloud Run, AWS ALB) can produce protocol-level errors
(GOAWAY storms, stale keep-alive resets). The existing self-healing
reset rebuilt another HTTP/2 client that hit the same wall, so the
poll loop could cycle reset->fail->reset and effectively stop polling
with no CPU/memory spike.
On a ProtocolError/ReadError/WriteError, if HTTP/2 is enabled, the
reset now downgrades to HTTP/1.1 for the remainder of the process
(sticky) instead of rebuilding HTTP/2. Default-on HTTP/2 behavior is
unchanged for healthy environments. Opt out of the fallback with
CONDUCTOR_HTTP2_AUTO_FALLBACK=false.
Applied to both the sync (rest.py) and async (async_rest.py) clients;
added unit tests for both.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments