This node can be used to call other workflows that reside either locally or remotely on the KNIME Hub.
The called workflow may contain one or multiple of the following nodes to receive data from the workflow
containing this node:
Container Input (Table)
Container Input (Variable)
Container Input (Credentials)
It may also contain a Container Output (Table) node
to define the interface between this workflow and the called workflow in the following way:
Send Table. The data table provided at the input of the Call Workflow (Table Based)
node can be sent to a Container Input (Table) node in the called workflow via the input parameter
defined in the Container Input (Table) node
Receive Table. After the
execution of the called workflow, a data table can be received from a Container Output (Table)
node in the called workflow via the output parameter defined in the Container Output (Table)
node. The received data table will be made available at the output port of the Call Workflow (Table
Based) node
Send Flow Variables. Certain flow variables available in the
Call Workflow (Table Based) node can be sent to a Container Input (Variable) node in the
called workflow. Currently, neither boolean, long, nor list or set flow variables are supported and will
be ignored without warning. The supported types are mostly converted to string flow variables (e.g.,
path or URI flow variables), except for integer flow variables and non-NaN double flow variables. Note
that the Call Workflow Service node supports all flow variable types.
Send Flow
Credentials. All flow credentials available in the Call Workflow (Table Based) node can be
sent to a Container Input (Credential) node in the called workflow via the credential-input
defined in the Container Input (Credential) node
To call workflows on a KNIME Hub, a
KNIME Space Connector node must be connected to this node. You can add a File System Connection
port by clicking on the three dots on the node.
Options
Invocation duration
Choose the expected duration of the called workflow execution.
Long duration: Choose this if the called workflow is expected to run for more than ten seconds. When selected, the invocation will poll its status repeatedly until the job completes (or fails). The polling is implemented so that for the first few seconds there will be frequent status checks (poll interval 100ms or 500ms), whereas jobs that run minutes or hours will be checked only every few seconds.
Short duration: Choose this if the called workflow is expected to finish within ten seconds. When selected, the invocation will not poll its status but wait until the job completes (or fails). This removes the polling overhead and makes this option quicker for short-running workflows. Choosing this option for long-running workflows (> a minute) will cause timeout problems.
Retain job on failure
When selected, failing jobs of the called workflow will be kept on the remote executor. This can be useful for debugging purposes. When not selected, the failing jobs will be discarded.
Discard job on successful execution
When selected, successful jobs of the called workflow will be discarded from the remote executor. When not selected, successful jobs will be kept.
Workflow
The path to the workflow you want to call.
Workflow version
If available, select the version of the workflow to read. A limited number of versions will be fetched and provided in a dropdown menu. If the desired version is not included in the dropdown list, it can be set with a flow variable (e.g. "333" for version 333 on the hub).
Execution context
Only for workflows on a KNIME Hub. The workflow will be executed in the selected context. An execution context of a hub space defines for instance the installed extensions, available credentials, and the pool from which computation resources are used when the service is invoked.
Deployment
The deployed workflow to execute. This option is only visible when the node is connected to a KNIME Hub Authenticator node.
Read input table from
The data table provided at the input of the Call Workflow (Table Based) node can be sent to a Container Input (Table) node in the called workflow via the input parameter defined in the Container Input (Table) node.
Fill output table from
After the execution of the called workflow, a data table can be received from a Container Output (Table) node in the called workflow via the output parameter defined in the Container Output (Table) node. The received data table will be made available at the output port of the Call Workflow (Table Based) node.
Push flow variables to
Certain flow variables available in the Call Workflow (Table Based) node can be sent to a Container Input (Variable) node in the called workflow. Currently, neither boolean, long, nor list or set flow variables are supported and will be ignored without warning.
Push flow credentials to
All flow credentials available in the Call Workflow (Table Based) node can be sent to a Container Input (Credential) node in the called workflow via the credential-input defined in the Container Input (Credential) node
Use fully qualified names for parameters
If checked, use the full parameter name to select the input and output. The parameter names are defined by the user in the configuration dialog of each of the parameters (like Container Input (Table) and Container Output (Table)node), e.g. "timeout", "count", etc. Using these 'simple names' may lead to duplicates, hence a 'fully qualified name' is constructed by appending a suffix, e.g. "timeout-1" or "count-5:6". While these suffixes guarantee unique parameter names across one workflow they may cause names not to match in case you call out to different workflows (e.g. in a loop). It's good practice to (manually) ensure that parameter names in the called workflow are unique and hence often the 'simple name' is sufficient (= do not check the box).
In the case a parameter defined in any of the Container Input (Table), Container Output (Table) or Container Input (Variable) nodes is not unique, the node ID will be appended to the parameter even though the use fully qualified names check box has not been checked.
Workflow load timeout
The maximum amount of time to wait for the remote executor when trying to initialize remote workflow execution. Specified in seconds. A value of 0 means that no timeout will be used.
Fetch parameters timeout
The maximum amount of time to wait for the remote executor when fetching the input and output parameters of the called workflow. Specified in seconds. A value of 0 means that no timeout will be used.
Base timeout (milliseconds)
During asynchronous invocation (option "Long duration"), if a HTTP 5XX error occurs when polling for the job status, the node will retry the request. The node will wait a certain amount of time before each retry. The time to wait before the n-th attempt is determined by base * multiplier^n.
Multiplier
The multiplier for the backoff delay calculation. Use a multiplier of 1 for a constant backoff, or a multiplier greater than 1 for an exponential backoff.
Maximum number of retries
The maximum number of retries. Set to 0 to disable retrying.
Input Ports
The data to send to the callee workflow.
…
An optional connection to a file system that contains the callee workflow or a hub instance that
provides deployed workflows. The callee workflow will be executed where it is located, e.g., on the
KNIME Hub. If a Hub Authenticator is connected, only workflows that have previously been deployed can be
executed. If a Space Connector or Mountpoint connector is connected, any workflow can be selected and
executed.