Repository navigation
Java SDK: Let a native Java Dag set one queue for all its tasks - #74538
Merged
jason810496 merged 6 commits intoOct 22, 2026
Merged
Conversation
jason810496
force-pushed
the
feature/java-sdk-dag-level-queue
branch
from
October 14, 2026 07:08
d356396 to
a591e4e
Compare
jason810496
marked this pull request as ready for review
October 14, 2026 07:32
jason810496
force-pushed
the
feature/java-sdk-dag-level-queue
branch
2 times, most recently
from
October 20, 2026 02:07
8bfb07f to
6a5819f
Compare
1 task done
uranusjr
reviewed
Oct 22, 2026
uranusjr
reviewed
Oct 22, 2026
uranusjr
reviewed
Oct 22, 2026
uranusjr
reviewed
Oct 22, 2026
uranusjr
reviewed
Oct 22, 2026
uranusjr
reviewed
Oct 22, 2026
Member
|
Should |
jason810496
requested review from
amoghrajesh,
ashb,
bugraoz93,
gopidesupavan,
jscheffl and
potiuk
as code owners
October 22, 2026 08:11
Every task of a native Java Dag runs on the Java coordinator, so each one needs a queue that queue_to_coordinator routes there. Airflow's Dag has no queue setting, so authors had to repeat the same queue on every task. The Go and TypeScript SDKs already take a Dag-level queue that each task inherits unless it sets its own; this gives Java the same. Co-Authored-By: Claude <noreply@anthropic.com>
A blank queue matched no coordinator, so every task stayed queued. The parsing docs still said there was no Dag-level queue and routed a queue the examples do not use. Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
jason810496
force-pushed
the
feature/java-sdk-dag-level-queue
branch
from
October 22, 2026 08:16
3f9633c to
4ed3621
Compare
jason810496
commented
Oct 22, 2026
uranusjr
approved these changes
Oct 22, 2026
FrankYang0529
approved these changes
Oct 22, 2026
Co-Authored-By: Claude <noreply@anthropic.com>
jason810496
commented
Oct 22, 2026
jason810496
left a comment
Member
Author
There was a problem hiding this comment.
Thanks for the review.
Contributor
Backport successfully created: v3-4-testNote: As of Merging PRs targeted for Airflow 3.X In matter of doubt please ask in #release-management Slack channel.
|
jason810496
added a commit
that referenced
this pull request
Oct 23, 2026
… tasks (#74538) (#75402) * Java SDK: Let a native Java Dag set one queue for all its tasks Every task of a native Java Dag runs on the Java coordinator, so each one needs a queue that queue_to_coordinator routes there. Airflow's Dag has no queue setting, so authors had to repeat the same queue on every task. The Go and TypeScript SDKs already take a Dag-level queue that each task inherits unless it sets its own; this gives Java the same. * Reject a blank Dag-level queue and fix the native Dag queue docs A blank queue matched no coordinator, so every task stayed queued. The parsing docs still said there was no Dag-level queue and routed a queue the examples do not use. * Reject a blank Dag-level queue in the annotation processor * Carry the blank rule on the schema field, for Dag and task queues alike * Set the queue once per Dag in the e2e native bundle * Put the blank check on Field and tidy the comments --------- (cherry picked from commit fc9c4b0) Co-authored-by: Jason(Zhe-You) Liu <68415893+jason810496@users.noreply.github.com> Co-authored-by: Rahul Vats <43964496+vatsrahul1001@users.noreply.github.com>
1 task done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Every task of a native Java Dag runs on the Java coordinator, so each one needs a queue that
[sdk] queue_to_coordinatorroutes there. Airflow's Dag has no queue setting, so authors had to repeat the same queue on every task. The Go and TypeScript SDKs already take a Dag-level queue; this gives Java the same.What changes
queuecan be set once on the Dag, in both styles. Each task inherits it, unless the task sets its ownqueue.TriggerDagRuntasks inherit the queue too, a task's own queue always wins, and the queue is never written on the serialized Dag itself.queue = "java", which the README's setup already routes to the Java coordinator.Was generative AI tooling used to co-author this PR?