fix(aiohttp): remove dead AIOHTTP_EXC_MAP entry and simplify CancelledError comment

This commit is contained in:
Tanmay Sharma 2026-03-23 16:59:52 +05:30
parent 51427aa772
commit 07b9563655

View file

@ -23,8 +23,6 @@ AIOHTTP_EXC_MAP: Dict = {
aiohttp.ServerTimeoutError: httpx.TimeoutException,
aiohttp.ConnectionTimeoutError: httpx.ConnectTimeout,
aiohttp.SocketTimeoutError: httpx.ReadTimeout,
# Asyncio cancellation - map to retryable ConnectError to trigger retry logic
asyncio.CancelledError: httpx.ConnectError,
# Proxy related exceptions
aiohttp.ClientProxyConnectionError: httpx.ProxyError,
# SSL related exceptions
@ -62,9 +60,10 @@ def map_aiohttp_exceptions() -> typing.Iterator[None]:
try:
yield
except asyncio.CancelledError as exc:
# asyncio.CancelledError inherits from BaseException (not Exception) in Python 3.9+.
# Catch it explicitly before the Exception handler and map to a retryable
# ConnectError so the router can retry on alternative deployments.
# asyncio.CancelledError inherits from BaseException (not Exception) in Python 3.9+,
# so it bypasses the `except Exception` block below and must be caught explicitly.
# Map to ConnectError so the router treats it as a retryable connection failure
# and can failover to alternative deployments (e.g., during intermittent DNS issues).
message = f"Request cancelled during DNS resolution or connection: {str(exc)}"
raise httpx.ConnectError(message) from exc
except Exception as exc: