- task_instantiation_set = set(task_instantiation_list) # build a set with tasks
- done = None
- pending = None
- if len(task_instantiation_set) > 0:
- done, pending = await asyncio.wait(task_instantiation_set, timeout=timeout)
- if pending:
- error_text = "timeout"
- for task in done:
- if task.cancelled():
- if not error_text:
- error_text = "cancelled"
- elif task.done():
- exc = task.exception()
- if exc:
- error_text = str(exc)
+ if task_instantiation_list:
+ done, pending = await asyncio.wait(task_instantiation_list, timeout=timeout)
+ if pending:
+ for task in pending:
+ error_text_list.append(task_instantiation_info[task] + ": Timeout")
+ for task in done:
+ if task.cancelled():
+ error_text_list.append(task_instantiation_info[task] + ": Cancelled")
+ elif task.done():
+ exc = task.exception()
+ if exc:
+ if isinstance(exc, (N2VCException, ROclient.ROClientException)):
+ error_text_list.append(task_instantiation_info[task] + ": {}".format(exc))
+ else:
+ error_text_list.append(task_instantiation_info[task] + ": " + "".
+ join(traceback.format_exception(None, exc, exc.__traceback__)))