The GitHub Actions job "Tests (AMD)" on airflow.git/backport-1e5d799-v3-2-test 
has succeeded.
Run started by GitHub user vatsrahul1001 (triggered by vatsrahul1001).

Head commit for run:
5519b592534fed177f62f3fba522c1967bf5b3cb / Jarek Potiuk <[email protected]>
Don't crash supervisor IPC loop on transient network errors (#66572)

* Don't crash supervisor IPC loop on transient network errors

handle_requests in the supervisor only caught ServerResponseError. Any
non-HTTP exception (httpx.ConnectError, httpx.TimeoutException, socket
timeouts, etc.) would propagate, terminate the generator, and
permanently break the supervisor-to-task IPC channel. The task
subprocess would then get EOFError on every subsequent send, and the
worker would be stuck waiting for replies that never come.

Add a catch-all except Exception after the ServerResponseError handler
that logs the unhandled exception with type info, sends a best-effort
ErrorResponse(API_SERVER_ERROR, ...) back to the task so the failure
surfaces in task logs (wrapped in suppress(Exception) because if we
can't reach the task subprocess via stdin we shouldn't double-fault),
and lets the request loop continue to the next request.

Test added: a fake httpx.ConnectError on the first call produces an
ErrorResponse, the generator stays alive, and a second request is
processed normally (the loop is not dead).

Reported by the L3 ASVS sweep at apache/tooling-agents#24 (FINDING-005).

* Address review comments: shorten comment and use exc_info

- Shorten the catch-all comment per amoghrajesh's suggestion.
- Use exc_info=e in log.exception instead of exception_type field
  per jason810496's suggestion (exception type is redundant since
  the exception itself is logged with full type info and traceback).

(cherry picked from commit 1e5d79945ad5df1fca8f6d06c8f2cde8124a981a)

Report URL: https://github.com/apache/airflow/actions/runs/26096682132

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to