shahar1 opened a new pull request, #76126:
URL: https://github.com/apache/airflow/pull/76126

   Backport of #76125 to `airflow-ctl/v0-1-test` for 0.1.6.
   
   airflowctl builds its HTTP client without a timeout, so httpx's 5-second 
default applies. A busy API server can take longer to answer a PATCH or POST 
(first `dags update` or `dags trigger` right after the scheduler picked up a 
run of the same Dag); write requests are not retried after a timeout, so the 
CLI exits 1 with `Read timeout error: timed out ... The PATCH request failed, 
but it may already have been applied on the server.` This is the `dags update` 
flake of `Airflow CTL integration tests with PROD image` (run 41184063822) and 
reproduces on any loaded host with 3.2.2, 3.3.2 and 3.4.0rc2 servers.
   
   Same change as on `main`: 30-second read/write/pool timeout, connect timeout 
kept at 5 seconds, tunable with `AIRFLOW_CLI_API_TIMEOUT` (validated by the 
existing `_get_int_env` helper like the retry knobs), explicit `timeout=` still 
wins. Cherry-pick applied cleanly; the branch has the same helper, constants 
block and docs section.
   
   Tested on the branch: `uv run --project airflow-ctl pytest 
airflow-ctl/tests`: 592 passed.
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   - [X] Yes — Claude Code (Fable 5.1, with Sonnet 5.5 and Opus 5.5 subagents)
   
   Generated-by: Claude Code (Fable 5.1) following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to