On Mon, Jul 27, 2009 at 10:58, Stian Soiland-Reyes<[email protected]> wrote: > it can be dangerous using the fail_if_false and fail_if_true > processors of Taverna 1. Let's say you have two fail_if_true > processors, and two shims above that tests equality to 'RUNNING' and > 'COMPLETED'. You have now not covered any case like 'TERMINATED' - and > neither of the processors will fail. This means in Taverna 1 that both > branches will run, and whichever finishes first (probably not the one > getting the data) will win.
As a side note - this would also happen if you pass anything else than the string 'true' or 'false' to the Fail_if-local workers - they would then simply not fail. In Taverna 2 this pattern is not usable as a processor always complete, even on failure, you can't have the kind of 'pick first value' merges as of Taverna 1, which is why we added support for native looping instead. There's also plans for doing native branching (if/else) in a similar fashion as the looping, but as there's not been much requests for it so far it's not the top priority at the moment. -- Stian Soiland-Reyes, myGrid team School of Computer Science The University of Manchester ------------------------------------------------------------------------------ _______________________________________________ taverna-users mailing list [email protected] [email protected] Web site: http://www.taverna.org.uk Mailing lists: http://www.taverna.org.uk/taverna-mailing-lists/
