Join-Fork operator
Overview
The Join-Fork operator combines the functionality of the Join and Fork operators.
Like the Join operator, it merges multiple branches, then, like the Fork operator, it creates new branches, so the Join-Fork operator is used to simultaneously end a parallel portion of the workflow and start another.
The same result can be achieved by putting a Join block and a Fork block one after the other, but Join-Fork helps keep the diagram more compact.
Versions
There are two versions of the component available: 1.0.0 and 1.1.0. Version 1.0.0 is present for backward compatibility with old workflows created with previous versions of NL Flow. For new workflows always use the latest version.
A version 1.0.0 block doesn't have the Maximum number of flow branches that can fail without propagating the error property described below.
Input
A Join-Fork block doesn't have input variables. Its implicit input is the output of the blocks immediately upstream of it.
Block properties
Block properties can be set by editing the block.
A Join-Fork operator block has these properties:
- Block name
- Component version (read only)
- Block ID (read only)
- Maximum number of flow branches that can fail without propagating the error: as for the Join operator, value 0 indicates that any error of any upstream branch makes the Join-Fork block produce an error which can lead to a general workflow error. A different value, integer and positive, indicates the maximum number of branches whose errors are ignored, so to have Join-Fork aggregate the output of the other, non failing, branches and not raise an error.
Even if errors are ignored they are still visible in the verbose output of the workflow.
Output
The output of Join-Fork is the same as that of a Join block: a JSON object that represents the composition of the outputs of the branches converging in it.