Closed VinithKrishnan closed 11 months ago
Apologize for the confusion, but dsl.Collected
is currently not supported on KFP backend yet. This is called out in the documentation: https://www.kubeflow.org/docs/components/pipelines/v2/pipelines/control-flow/#parallel-looping-dslparallelfor.
Got it. Do you have any estimate on when support for the feature is expected to be released? If nobody is working on it, I am open to contributing. Would appreciate any pointers on what needs to be done to add support for it.
Is there any solution for collecting output artifacts from dsl.ParallelFor
since dsl.Collected
is not supported by the KFP orchestration backend? I need to join outputs after splitting them, should I skip creating artifacts and instead save to some persistent file storage like EFS?
I can also help contribute if this issue is open and being worked on.
Environment
Steps to reproduce
Create the pipeline.yaml by compiling the following code snippet:
Error message shown I try to create run from compiled yaml file:
Run creation failed
{"error":"Failed to create a new run: InternalServerError: Failed to validate workflow for (): templates.entrypoint.tasks.root templates.root sorting failed: invalid dependency for-loop-2","code":13,"message":"Failed to create a new run: InternalServerError: Failed to validate workflow for (): templates.entrypoint.tasks.root templates.root sorting failed: invalid dependency for-loop-2","details":[{"@type":"type.googleapis.com/google.rpc.Status","code":13,"message":"Internal Server Error"}]}
Expected result
Pipeline backend should be able to accept the compiled yaml and run it.
Materials and Reference
Followed the instructions in this doc to create the above map reduce job.
Impacted by this bug? Give it a 👍.