<#3512 [BUG] Workflow Conditional Operator conflic...
# flyte-github
a
#3512 [BUG] Workflow Conditional Operator conflict with task generated promises Issue created by zeryx 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:
Copy code
failed at Node[n3-n0]. BindingResolutionError: Error binding Var [wf].[dataset], caused by: failed at Node[n0]. CausedByError: Failed to GetPrevious data from outputDir [<s3://union-oc-production-demo/metadata/propeller/zeryx-demo-development-a9vk7kbf8ptkdcdwqrq6/n0/data/0/outputs.pb>], caused by: path:<s3://union-oc-production-demo/metadata/propeller/zeryx-demo-development-a9vk7kbf8ptkdcdwqrq6/n0/data/0/outputs.pb>: not found
The node graph diagram displays the incorrect sequence of operations:

image

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 1. create a new pyflyte project 2. Inspect the gist here https://gist.github.com/zeryx/1a786f2041d840f08175ea19b741b68f 3. copy broken_example into the workflows/example.py file 4. update the requirements.txt from the gist 5. pip install the dependencies to run locally with pyflyte 6. run the following:
pyflyte run workflows/example.py train_mnist_model --n_epoch 1
7. then run the following, pointing to your remote cluster of choice:
pyflyte --config ~/.uctl/config.yaml run -p your_project -d development --image zeryx1211/mnist _gpu:latest workflows/example.y train_mnist_model --n_epoch1
8. View the failed workflow and execution 9. Rerun the same with working_example from the gist, repeat steps 6-8 Screenshots No response Are you sure this issue hasn't been raised already? ☑︎ Yes Have you read the Code of Conduct? ☑︎ Yes flyteorg/flyte