Details
-
Type:
New Feature
-
Status:
Closed
-
Priority:
Blocker
-
Resolution: No longer relevant
-
Affects Version/s: 2.1.0
-
Fix Version/s: 2.2.0
-
Component/s: Engine - General, Engine - Workflow model, Workbench - Details - Service
-
Labels:None
Description
Taverna needs to handle errors much better.
The decision to combine a service's errors with outputs is in my opinion wrong. Unix has separate stdout and stderr for good reasons. The reporting of errors should be separate from the sending of results.
Treating a list with a few erroneous elements as totally erroneous is wrong.
Proposal:
(1) Allow configuration of a processor so that you can specify what value is put in its output if it generates an error. This could default to putting in the ErrorDocument, as at the moment.
(2) Allow configuration of a processor to state how it should interpret an erroneous input value.
(3) Re-introduce the concept of a service being critical so that if a workflow cannot be designed to cope with errors, then it should be possible to let it bomb out ASAP.
You could also put in error-handling shims e.g. to strip out errors from a list or replace them with default values. I'm not convinced these are needed if the processor-configuration is allowed.
Issue Links
| Depends | |||
|---|---|---|---|
|
|||
Katy came across the same problem. Once you union or flatten lists then you end up losing all the content of the list. She lost 4000 iterations