Feature Suggestion: Index Ports


Regarding my experience in working with KNIME and some questions in the forum, I think it’s a good idea to add an “Index Port” to the nodes, metanodes and components. This port transfers nothing between nodes but makes them to be executed in a specific order in case they are not connected to each other by data or variable ports. These ports can have “many to many” connections.

The image below demonstrates the index ports (black dots). A reason for not using the variable port here can be a situation where we want the latter node to be executed even if the former node has failed.


This can be achieved by adding an option to the configuration window of the nodes (and components) to specify an index number but I think the index ports are better.


1 Like

Interesting. Questions:

  • If a node failure no longer halts the execution of a workflow, does anything halt execution besides all nodes still connected by index ports finishing their execution?
  • In the above diagram, is this saying ‘the Component on the left must be executed before the Component on the right, but it does matter when the left Component executes WRT the CSV Writer’?
1 Like

Actually I have thought about this.
One knows that using this port will keep the flow running. When someone needs to keep a part of the flow (with separated nodes) running in a specific order even if one of the nodes in that part has failed, he/she can use this feature.
Anyway, to overcome this concern, one option is to add an “Index Port” tab to the configuration window of the nodes and provide 2 options to stop the flow in case of failure or keep the flow running. If we choose to stop, it behaves like a variable port but still there can be reasons not to use the variable port like preventing variable overlapping.

It says: The component on the right must be executed after the component on the left AND the CSV Writer (node 6). It waits until they are both executed successfully or failed but never runs before them or simultaneously. The left component and the CSV Writer have nothing to do with each other and they run normally.
When we execute this workflow, the left component and the table creator run, when the table creator is executed successfully then the CSV Writer (node 6) is executed. The component on the right was ready to run from the beginning but waits for both the component on the left and the CSV Writer (node 6). After they are executed successfully or failed, then it runs. The Excel Writer is ready to run when the table creator is executed but it waits for the CSV Writer to run successfully or fail.


1 Like

Yes ok - i see… i also see that i wrote “does matter” when i meant “doesn’t matter”… sigh.

Thanks for the explanation - it’s a neat idea.

1 Like

Hi; armin @armingrudd
I definitely need this. would be super. :+1::+1::+1:

1 Like

Hi; @Iris @ScottF
Please kindly add this feature that Armin suggests. It will be very useful. @armingrudd

Hi; Do you plan to add a comment or feature about this? I would be very pleased with the addition. :wink:

1 Like

Hi @umutcankurt -

It’s an interesting idea, and we’ve discussed it a little bit internally. Right now we can’t commit to if or when we might add something like this to KNIME AP… but user feedback is always welcome!


This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.