{"title":"Catch Errors (Data Ports)","nodeType":"ScopeEnd","id":"*n3KemxSzYJ3CC2Od","factoryName":"org.knime.base.node.flowcontrol.trycatch.genericcatch.DataPortCatchNodeFactory","factoryId":"org.knime.base.node.flowcontrol.trycatch.genericcatch.DataPortCatchNodeFactory","path":["Workflow Control","Error Handling"],"owner":"knime","ownerAccountId":"account:team:b5f0848f-496d-4e6a-b869-fa3532248db7","description":"<p>This node forwards the input from the first port if the execution was successful. If execution on the top branch failed (and a matching try node was connected before the failing node!) then the input from the second port will be forwarded and the second variable outport will contain information about the observed error.\n <br />\n When the upstream branch fails, the following flow variables are pushed on the output:</p><ul><li><tt>FailingNode</tt> - the name of the failing node (or its enclosing component when a node inside a component fails).</li><li><tt>FailingNodeMessage</tt> - the failure message as shown in the node monitor. For failures inside (nested) components this is shortened to the first level of nesting so the message stays compact.</li><li><tt>FailingNodeDetails</tt> - detailed error information for the failing node and nested components. Can be exported as JSON when the <i>Export details as JSON</i> option is enabled. Use this variable when detailed error inspection is needed for logging or root-cause analysis.</li><li><tt>FailingNodeStackTrace</tt> - the JVM stack trace of the underlying exception, if available.</li></ul>\n            \n        \n        ","shortDescription":"End of Try-Catch construct. Use second input if execution leading to first input failed.","keywords":[],"deprecated":false,"streamable":false,"tags":["Workflow Control","Error Handling"],"icon":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowYjM2YWM5Ny01ZWJhLTQwZTctOTE4OS1iYmU4ZDdkMGYyNGUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEIyNjdDNjc3RjE5MTFFNUE3NjBCMzY2NkE3NjU5N0EiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEIyNjdDNjY3RjE5MTFFNUE3NjBCMzY2NkE3NjU5N0EiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDRURBNTFBMTQ1QzcxMUU1QUM2QkE3NzQyQjhFM0EyRCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDRURBNTFBMjQ1QzcxMUU1QUM2QkE3NzQyQjhFM0EyRCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgkN5SkAAAIiSURBVHjahFNNaBNREP52s9usNLT5aZUmAcVSPZTWQw6CEPTgpQhNhRb1oBSvai+9SNNbPdpL8SJ60vUkCE3x5NGqRxH0pMWD2cZYGyHRENzNPr9JtyEtqR34eLszb773zbx5BgLbnMwtcpknooGrQTwnbiYLqx4OMD1IfsVlqSNZzCKuE18d2+4TR7FY1JVSELQJmDyPUOji0ceP0Dc72w4cuXAex+ynMJLJtBod/cnk43TbjuO81zRtj4K7aDbhbZbQe3kKkelphDMZROfmoOp1NAcHgUjERKkkJV0h3ogCEq4IgUYFLT2aZSFxbwnmyAiU68KvVlHJL8LNTfIYHSqReIuhoXOpVEqjCiFbS6fTM/quFNVo4E9hrfWtmSYar9fheS7U2Bjw8RMwMHCWoWqwPUyiGaq4ZfBHOmz0jI+j/85tVMtlGL6P3qkc6rEY/kq9ygdMM8Skfp5e4f5vAdEDIfjAJmbi+QX4tRp+b2xIzQgzsXn6FMBy1MRE583FSBQn0bbckJRwg01s1uxn2F7IA+UfUi+2VgvibtWP6M7tMskNFIvFiYdaMAeXuLwgelQ2C3XtKseIfbKsbrMjDXSIEzIrrSZy0l6KNGIZ5e9fdsbIOmj4JDBMvOMteNr+qExbIFPD/y1LgnV9v5dOX3gOSd6S5PZb6GJPDiG4v/vRVWZQxmfiZJfwL54e3/Mau5VBDAcnVTpC0uAznXv/CTAAQJjBJZWjV/QAAAAASUVORK5CYII=","views":[],"inPorts":[{"objectClass":"org.knime.core.node.BufferedDataTable","color":"000000","dataType":"Table","optional":false,"name":"Original input","description":"The original input"},{"objectClass":"org.knime.core.node.BufferedDataTable","color":"000000","dataType":"Table","optional":false,"name":"Default input","description":"The input to be used when execution on the main branch failed."}],"outPorts":[{"objectClass":"org.knime.core.node.BufferedDataTable","color":"000000","dataType":"Table","optional":false,"name":"Output","description":"Original input or default if execution failed."},{"objectClass":"org.knime.core.node.port.flowvariable.FlowVariablePortObject","color":"ff4b4b","dataType":"Flow Variable","optional":false,"name":"Failure","description":"Reasons for Failure (if any)."}],"dynInPorts":[],"dynOutPorts":[],"additionalSiteInformation":{"url":"https://update.knime.com/analytics-platform/5.12","trusted":true,"enabledByDefault":true,"name":"KNIME Analytics Platform 5.12 Update Site","version":"5.12.0"},"dialog":[{"sectionName":"Options","fields":[{"name":"Always populate error variables","description":"If selected, the variables will also be generated when the node is not failing with the default values as selected.","optional":false},{"name":"Default value for the 'FailingNode' variable, if no node is failing.","description":"","optional":false},{"name":"Default value for the 'FailingNodeMessage' variable, if no node is failing.","description":"","optional":false},{"name":"Default value for the 'FailingNodeDetails' variable, if no node is failing. Since this option was added in 5.4, existing nodes will be initialized with the default for the 'FailingNodeMessage' value.","description":"","optional":false},{"name":"Default value for the 'FailingNodeStackTrace' variable, if no node is failing.","description":"","optional":false},{"name":"Export details as JSON","description":"If selected, the value of <tt>FailingNodeDetails</tt> is a JSON document with the hierarchical error tree ( <tt>id</tt> , <tt>type</tt> , <tt>name</tt> , <tt>message</tt> , <tt>details</tt> , and <tt>children</tt> ) instead of one text line per failing node. The flow variable type remains String. Useful when the failure details need to be processed programmatically.","optional":false},{"name":"Propagate variables","description":"If selected, variables defined (or modified) within the <i>Try-Catch</i> block are propagated downstream of this <i>Catch Errors</i> node. In most cases users will want to check this box (which is also the default). Previous versions of KNIME did not have this option and variables were always limited in scope and not visible downstream.","optional":false}]}],"links":[],"kudos":[{"accountId":"account:user:3a5aea77-6309-4354-8099-fd59b8c12196","user":"paolotamag","date":"2021-11-09T12:10:47+00:00"},{"accountId":"account:user:267229cd-9639-49aa-9ad1-04b715d8fbf5","user":"jeswanthj","date":"2021-06-13T17:10:14+00:00"}],"kudosCount":2,"bundleInformation":{"bundleVersion":"5.12.0.v202606261225","bundleName":"KNIME Base Nodes","bundleSymbolicName":"org.knime.base","bundleVendor":"KNIME AG, Zurich, Switzerland","featureSymbolicName":"org.knime.features.base","featureName":"KNIME Base nodes","featureVersion":"5.12.0.v202606261225","featureVendor":"KNIME AG, Zurich, Switzerland","extensionId":"*bjR3r1yWOznPIEXS"},"frequentSuccessors":[{"id":"*AApA5VHd41CVDe7u","factoryName":"org.knime.base.node.meta.looper.LoopEndNodeFactory","probability":0.18411552346570398},{"id":"*OuUlAho1iWN4TCEk","factoryName":"org.knime.base.node.switches.emptytableswitch.EmptyTableSwitchNodeFactory","probability":0.061371841155234655},{"id":"*Y_8cAJatl5UQNkJy","factoryName":"org.knime.base.node.flowvariable.variabletotablerow2.VariableToTable2NodeFactory","probability":0.02527075812274368},{"id":"*DOkyMaii62U05xZ1","factoryName":"org.knime.base.node.preproc.filter.column.DataColumnSpecFilterNodeFactory","probability":0.02527075812274368},{"id":"*6CbObXLq9oHq_EFi","factoryName":"org.knime.base.node.preproc.constantvalue.ConstantValueColumnNodeFactory","probability":0.021660649819494584},{"id":"*QNB4FsAPnEAgOMVh","factoryName":"org.knime.base.node.jsnippet.JavaSnippetNodeFactory","probability":0.021660649819494584},{"id":"*UJGG6H71DePX6_-U","factoryName":"org.knime.base.node.switches.manualif.ManualIfNodeFactory","probability":0.021660649819494584},{"id":"*OFhUBYYlMMQ7ZM3F","factoryName":"org.knime.base.node.flowvariable.tablerowtovariable.TableToVariableNodeFactory","probability":0.021660649819494584},{"id":"*0rhLXWO6OS1xMi8T","factoryName":"org.knime.base.node.preproc.append.row.AppendedRowsNodeFactory","probability":0.021660649819494584},{"id":"*7jX4nMXFt_dYSgYQ","factoryName":"org.knime.base.node.meta.looper.condition.LoopEndConditionNodeFactory","probability":0.018050541516245487}]}
