Execute a node after other specific nodes have finished

Hi,

i have a workflow that has a standard start point, and immediately branches into different nodes. Every branch is basically a sequence of nodes that must do something, it is not important what (they are mostly http nodes).

After all the nodes sequence have finished, i want to execute a last node. But i am having problem to do so. Because the order in which the node executes seems strange and vertical (for example, it first do the first node, then instead of going further to the node sequence, it just stops and goeas to the second branch, executes one node, then goes for the third, and so on).

Is there a way to wait for specific nodes to finish then execute another node?

Thanks in advance

I’m interested in this too. I don’t understand how the order of what executes when works.

Hi @Sengerio, when connecting multiple nodes to one single output of a previous node, the order in which you have connected subsequent nodes will determine which branch runs first.

This can be confusing indeed and I’d suggest you avoid such structures if the execution order matters in your case as they can also become hard to read and understand when revisiting an old workflow.

Perhaps you can consider using the Merge node if you need to control the execution flow? This would allow you to wait for both incoming branches to finish before continuing with a workflow execution:

image

In a workflow this would look like so:

Here, node C would never run before node B as the Merge node would wait for node B before passing on any execution data to node C.