This node passes JSON objects to a workflow, executes the workflow, and fetches the returned JSON
objects. This happens once for each row in the input table, appending the fetched results for the row as
new cells to the row.
Sending data. The called workflow can receive data from this
node via the Container Input nodes, e.g., JSON, Row, or Table, which all expect a JSON object but make
different assumptions on the structure of the object. For instance, Container Input (JSON) accepts any
JSON object, while Container Input (Row) expects a JSON object where each key corresponds to a column
name and the associated value denotes the according cell content. What is passed to a specific
Container Input node affects the execution of the called workflow. There are three options:
From column: pass the JSON contained in a selected column of the current input row. The
called workflow is executed for each row.
Use custom JSON: pass static JSON. The called
workflow is executed only once, the result is reused for all subsequent rows.
Use
default: send nothing, causing the default JSON object defined by the according Container Input node
to be used. The called workflow is executed once, the result is reused for all subsequent rows. Note
that if the called workflow has been saved with one of the output nodes in executed state, the return
value for that output value is the json value "null".
Receiving data.
The called workflow can send back data via Container Output nodes (Row, Table, or JSON). Each Container
Output node will result in a column being appended to the output table.
Concurrent
execution. Note that if the called workflow is local, concurrent calls to it will not be processed
in parallel, i.e., each call we be executed sequentially. If the called workflow is remote, each call
will result in a new job which can be executed in parallel with other jobs.
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.
Input parameters
After you have selected a workflow, you will see the input parameters of the workflow. Configure how to pass in data for each parameter.
Parameter name: Name of the input parameter in the called workflow. This parameter is read-only.
Input mode: Select how the input value should be provided.
Default: send nothing, causing the default JSON object defined by the according Container Input node to be used. The called workflow is executed once, the result is reused for all subsequent rows. Note that if the called workflow has been saved with one of the output nodes in executed state, the return value for that output value is the json value "null".
Custom JSON: Provide a custom JSON value for the parameter.
From column: Select column of the input table. The called workflow is executed for each row.
Custom JSON: Enter the custom JSON value to be passed to the input node.
JSON column: Select the column containing JSON values to be passed to the input node.
Create report
If checked, the report associated with the remote workflow will be generated and put into the output table. The output table will contain a column containing the binary content of the report (column type: binary object); the column can be further processed, e.g. use a "Binary Objects to Files" node to write the content to a file, or use a database writer to write the report as BLOB into a database. Failures to generate the report (for instance, because no report is attached to the workflow) will result in a missing cell.
Report format
Choose the format of the report to be generated.
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 callee workflow is invoked for each row in this table. Cells in JSON columns can be sent to specific
input nodes in 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.
Output Ports
Input table with the results returned by the callee workflow appended as new cells to each row.