You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Eason09053360 (via GitHub)" <gi...@apache.org> on 2026/09/11 14:56:21 UTC
[PR] Fix airflow edge list-workers always showing null concurrency [airflow]
Eason09053360 opened a new pull request, #72959:
URL: https://github.com/apache/airflow/pull/72959
## Why
`airflow edge list-workers` reports `concurrency` and `free_concurrency` as `null` for every worker, regardless of what the worker last heartbeated.
The listing was written when `edge_worker.sysinfo` was a VARCHAR holding JSON text, so it ran `json.loads` on the value. Since #65472 (edge3 3.5.0) the column is a JSON type and SQLAlchemy already returns a `dict`. `json.loads(dict)` raises `TypeError`, the surrounding `except (json.JSONDecodeError, TypeError)` swallowed it, and both fields fell through to `None`. No error was ever shown, and the existing test only asserted the keys were present, so the regression went unnoticed.
## What
- `providers/edge3/src/airflow/providers/edge3/cli/edge_command.py`: read `host.sysinfo` as the dict it already is. A non-dict value (`None` before the first heartbeat, or a stale row) still yields `null` rather than aborting the command, matching the previous degrade-to-null behaviour. The `fields` list no longer carries the two names that were only there to be filtered out again; output columns and their order are unchanged.
- `providers/edge3/tests/unit/edge3/cli/test_worker.py`: `test_list_edge_workers` now sets a `sysinfo` dict on the mocked worker and asserts the reported values, so it fails on the old code.
Not touched: `EdgeWorkerModel.concurrency` is the operator-requested override written by `set-concurrency`, not the value the worker actually runs with, so the CLI keeps reading the worker-reported `sysinfo` value like the UI does.
---
##### Was generative AI tooling used to co-author this PR?
- [X] Yes — Claude Code (Fable 5.1)
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Fix airflow edge list-workers always showing null concurrency [airflow]
Posted by "dheerajturaga (via GitHub)" <gi...@apache.org>.
dheerajturaga merged PR #72959:
URL: https://github.com/apache/airflow/pull/72959
--
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org