-
Notifications
You must be signed in to change notification settings - Fork 669
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Workflow Conditional Operator conflict with task generated promises #3512
Comments
To help the investigation, a smaller repro:
|
This is a runtime error or compiler? Cc @hamersaw |
Thanks @eapolinario for the smaller repro! Looks like a runtime error where propeller is looking for the output file of |
So what is happening here is that we override the upstream node dependencies when executing branch subnodes. This means that any other upstream dependencies are no longer maintained. In the minimum repo example:
there will be three nodes There are (at least) two ways we can solve this:
I have implemented the later fix in flyteorg/flytepropeller#543 - if this isn't the route we want to go submitting the former fix is trivial. |
Describe the bug
When using the Conditional operator here a bug is detected where when a task generated output is passed into the task call inside of a
then()
closure, an error is reported server side.When this is run locally, this error is not reported and the output is successfully generated.
The error message when run on-cloud is the following:
The node graph diagram displays the incorrect sequence of operations:
Expected behavior
Conditional Then closures within a Workflow should be able to accept tasks and task generated inputs as parameters for tasks.
Instead, only workflow level inputs can be provided to a task as a parameter within a Conditional Then closure, without seeing an error.
Additional context to reproduce
pyflyte run workflows/example.py train_mnist_model --n_epoch 1
pyflyte --config ~/.uctl/config.yaml run -p your_project -d development --image zeryx1211/mnist _gpu:latest workflows/example.y train_mnist_model --n_epoch1
Screenshots
No response
Are you sure this issue hasn't been raised already?
Have you read the Code of Conduct?
The text was updated successfully, but these errors were encountered: