Skip to content

Stop requesting the details of an empty Dag id after a bulk selection - #75862

Merged
bbovenzi merged 2 commits into
apache:mainfrom
astronomer:fix-clear-dialog-empty-dag-id
Oct 28, 2026
Merged

bbovenzi merged 2 commits into
apache:mainfrom
astronomer:fix-clear-dialog-empty-dag-id

Conversation

@pierrejeambrun

@pierrejeambrun pierrejeambrun commented Oct 28, 2026 •

Copy link
Copy Markdown
Member

On the Task Instances list, unselecting the last selected row sends GET /api/v2/dags//details, which the API answers with a 404.

The bulk Clear button keeps its dialog mounted while the action bar is closed. With no task instance to clear, the dialog's Dag id fell back to an empty string and was handed to useAutoRefresh, which only skips its Dag details lookup when the id is undefined. The dialog now passes undefined when it has nothing to clear. The selection in the Grid view (#75221) goes through the same dialog, and a plain click that ends a multi-selection triggered the same request there.

Requests to /dags// while selecting one row of the Task Instances list, then unselecting it:

Before

Screen.Recording.2026-10-28.at.12.49.39.mov

After

Screen.Recording.2026-10-28.at.12.48.59.mov
Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5.5)

Generated-by: Claude Code (Opus 5.5) following the guidelines

The Task Instances list keeps its bulk Clear dialog mounted once every row
is unselected. With nothing to clear, the dialog's Dag id was an empty
string, which still enabled the auto-refresh lookup and sent
GET /dags//details, answered with a 404.
@boring-cyborg boring-cyborg Bot added the area:UI Related to UI/UX. For Frontend Developers. label Oct 28, 2026
pierrejeambrun added a commit to astronomer/airflow that referenced this pull request Oct 28, 2026
@pierrejeambrun
pierrejeambrun marked this pull request as ready for review October 28, 2026 11:49
An empty-string fallback on the shared Dag id lets any later use send it
unnoticed. Only the two Dag and Dag run lookups need a string, and they
run for a single run, when the Dag id is always set.
@pierrejeambrun pierrejeambrun added this to the Airflow 3.4.1 milestone Oct 28, 2026
@pierrejeambrun pierrejeambrun added the backport-to-v3-4-test Backport to v3-4-test label Oct 28, 2026
@bbovenzi
bbovenzi merged commit 60d692b into apache:main Oct 28, 2026
81 checks passed
@bbovenzi
bbovenzi deleted the fix-clear-dialog-empty-dag-id branch October 28, 2026 13:31
@github-actions

Copy link
Copy Markdown
Contributor

Backport successfully created: v3-4-test

Note: As of Merging PRs targeted for Airflow 3.X
the committer who merges the PR is responsible for backporting the PRs that are bug fixes (generally speaking) to the maintenance branches.

In matter of doubt please ask in #release-management Slack channel.

Status Branch Result
✅ v3-4-test PR Link

shahar1 pushed a commit that referenced this pull request Oct 29, 2026
…lk selection (#75862)

* Stop requesting the details of an empty Dag id after a bulk selection

The Task Instances list keeps its bulk Clear dialog mounted once every row
is unselected. With nothing to clear, the dialog's Dag id was an empty
string, which still enabled the auto-refresh lookup and sent
GET /dags//details, answered with a 404.

* Leave the Clear dialog's Dag id undefined when there is nothing to clear

An empty-string fallback on the shared Dag id lets any later use send it
unnoticed. Only the two Dag and Dag run lookups need a string, and they
run for a single run, when the Dag id is always set.
(cherry picked from commit 60d692b)

Co-authored-by: Pierre Jeambrun <pierrejbrun@gmail.com>
pierrejeambrun added a commit that referenced this pull request Oct 29, 2026
…lk selection (#75862) (#75867)

* Stop requesting the details of an empty Dag id after a bulk selection

The Task Instances list keeps its bulk Clear dialog mounted once every row
is unselected. With nothing to clear, the dialog's Dag id was an empty
string, which still enabled the auto-refresh lookup and sent
GET /dags//details, answered with a 404.

* Leave the Clear dialog's Dag id undefined when there is nothing to clear

An empty-string fallback on the shared Dag id lets any later use send it
unnoticed. Only the two Dag and Dag run lookups need a string, and they
run for a single run, when the Dag id is always set.
(cherry picked from commit 60d692b)

Co-authored-by: Pierre Jeambrun <pierrejbrun@gmail.com>
vatsrahul1001 pushed a commit that referenced this pull request Oct 30, 2026
…lk selection (#75862) (#75867)

* Stop requesting the details of an empty Dag id after a bulk selection

The Task Instances list keeps its bulk Clear dialog mounted once every row
is unselected. With nothing to clear, the dialog's Dag id was an empty
string, which still enabled the auto-refresh lookup and sent
GET /dags//details, answered with a 404.

* Leave the Clear dialog's Dag id undefined when there is nothing to clear

An empty-string fallback on the shared Dag id lets any later use send it
unnoticed. Only the two Dag and Dag run lookups need a string, and they
run for a single run, when the Dag id is always set.
(cherry picked from commit 60d692b)

Co-authored-by: Pierre Jeambrun <pierrejbrun@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:UI Related to UI/UX. For Frontend Developers. backport-to-v3-4-test Backport to v3-4-test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants