[BUG] Fix compilation error for partial tasks with lists in map_task #2916
+4
−1
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.
Tracking issue
Reference Issue
Why are the changes needed?
Currently, Flyte does not support partial tasks with lists as inputs, resulting in errors when using map_task with such inputs. When lists are passed as default arguments in workflows, Flyte works correctly locally but throws an ambiguous error remotely, indicating that input arrays have different lengths. This PR addresses the issue by raising a clear error during the compilation phase when partial tasks are used with lists.
What changes were proposed in this pull request?
• Modified the behavior of Flyte to raise a ValueError at compilation time when partial tasks are used with lists as inputs.
• The error message will indicate that the input arrays have different lengths, providing more clarity and preventing ambiguous errors at runtime.
• Updated the workflow behavior to handle default arguments in map_task appropriately.
How was this patch tested?
The patch was tested by test script, which included multiple test cases to check for correct behavior when using map_task with partial tasks and lists. The tests include:
The tests passed successfully, confirming that the issue was resolved.
Check all the applicable boxes