Fix clearing child dag mapped tasks from parent dag #27501
Merged
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.
This fixes the bug where clearing a parent dag will not clear the child dag's mapped task.
The bug was due to
TaskInstanceKey
accepting its attributes in the order (dag_id, task_id, run_id, try_number, map_index) while in_get_task_instances
, thepk_tuple
that we pass intoTaskInstanceKey
to get theresult
is (dag_id, task_id, run_id, map_index), missing out the try_number. SoTaskInstanceKey
assumes that the map_index value supplied is try_number and defaults the value of map_index to -1. This causes a bunch of problems downstream when we try and retrieve theTaskInstance
from the table using the map_index as part of the filter.fixes: #27462