Failed UPs

<< Click to Display Table of Contents >>

Navigation:  Nodes > Tasks > Flow Control >

Failed UPs

 

Purpose

 

This node permits to create an error control workflow. If this node is present in a workflow tab, whenever a node fails at execution time it will pass the offending files (Universal paths) to the Failed UPs node, typically placed in an independent branch. Then the Failed UPs will send the failed universal paths trough the Out connector, which you can connect to any other nodes for your desired error management actions.  

For a basic example, if you are testing a workflow manually  (with the GUI open)  you could connect this node to a pyPrintInputs node in order to get the  list of files that failed (and their metadata) in the Script Editor panel.

If you are running workflows unattended and you want to save that Failed UPs output to text files for posterior analysis, an easy way is by connecting the Failed Ups node to a Metadata To CSV node.

More elaborated examples can be created, like moving the failed files to a specific folder (to be investigated later), delete them, send email warnings about the failure, or trigger alternative processing for those files.

The failed UPs are simply "tunneled" to the Failed UPs node,  but apart from that the Failed UPs it is just a normal node, not a kind of "alternative workflow".  The running workflow is not stopped at all. Any other workflow branches and islands of the same workflow will still be executed normally based on the rank connectors, with only the branch of node which failed being partially affected. The only difference is that the node that failed will not send the failed UP to its normal outputs (instead it will tunnel it to Failed UP nodes), but the failed node will continue processing any other UPs received, and the workflow will not stop until it is completed.

Note: The workflow branch starting with a Failed UPs node does not need to be connected to the main workflow in order to control its errors. It just needs to appear on the same workflows tab as an independent branch. But it is important to set the rank priority (the yellow triangles of the node) so that the FailedUPs node is executed after the nodes that you are monitoring and not before.

Note: You can put multiple independent branches starting with Failed UPs nodes on the same workflows tab, in which case all of them will be executed one after the other (you can use their rank connectors to control their execution order).

Outputs

 

Out: Universal paths received by the failed node (that is, any files received by the failed node and their upstream metadata)

 

Standard properties

Object Name

Color

Bypass

Lock

 

 

[mcp]

Use Failed UPs as the source/root of the failure-handling branch. It has no normal input; do not connect upstream outputs into it. Order it after the last main-flow node with addExecutionDependency(lastMainNodeId, failedUPsNodeId). Connect Failed UPs.Out to error-handling nodes such as notifications, move/copy, logs, or cleanup. Failed UPs is last in the main flow, not necessarily the final workflow node.

[/mcp]

 

 

 

 

 

 

 

 

 

 

 

Developer reference (API Rest - node/FailedUPs/property/[Property ID])

 

Property Label

Property ID