diff --git a/beat/backend/python/execution/algorithm.py b/beat/backend/python/execution/algorithm.py index e54bb3117fa648ed8185e53ac7b0a3a56c8b4460..d57f08c06c251e7cd04ca784e84c72617f0732b8 100644 --- a/beat/backend/python/execution/algorithm.py +++ b/beat/backend/python/execution/algorithm.py @@ -222,9 +222,6 @@ class AlgorithmExecutor(object): loop_channel=self.loop_channel, ) - if not result: - return False - else: if self.algorithm.type == Algorithm.LEGACY: logger.warning( @@ -260,23 +257,22 @@ class AlgorithmExecutor(object): output=self.output_list[0], ) else: - try: - result = self.runner.process( - inputs=self.input_list, - data_loaders=self.data_loaders, - outputs=self.output_list, - loop_channel=self.loop_channel, - ) - except Exception: - result = None + result = self.runner.process( + inputs=self.input_list, + data_loaders=self.data_loaders, + outputs=self.output_list, + loop_channel=self.loop_channel, + ) if not result: - self.done({}) - return False + break for output in self.output_list: output.close() + if not result: + return False + missing_data_outputs = [x for x in self.output_list if x.isDataMissing()] if missing_data_outputs: