I have a workflow that is meant to be a sub workflow only. It does not process any input and uses its parent workflow solely as a trigger.
The sub workflow is set up so that it always returns output. The parent workflow then uses this output to perform further actions.
If I execute the sub workflow manually (in its own editor), it works as expected. However, since updating to v1 the parent workflow does not get any output data back from the sub workflow. Is this a bug or has the data processing behavior of Execute Workflow Triggers changed?
I have tested changing the execution order (both parent and sub), but without success.
The execution log for the sub workflow shows no errors. However it looks like both of the last merge nodes seem to get triggered although just one node gets both inputs. I assume the merge node which executes with incomplete data is the very last node (and therefore the final sub workflow output is empty).
How can I prevent this merge node from executing if only one input is available?
That looks like you got it, So the merge node hasn’t executed but because you have sent it some data it is expecting there to be more. You would need to rebuild your workflow to take this into consideration.
This is probably the change and has a temporary solution where you can change the execution order which might help: n8n v1.0 migration guide | n8n Docs
Since changing the execution order didn’t solve this I have adjusted the workflow based on your information about the merge node and it seems to work now. Thanks for the hint!
Just to get this right: merge nodes in multiplex mode always execute, even when one input is missing?