From f61cbdeb392076dd11d106e6ae6df8215c0bd45b Mon Sep 17 00:00:00 2001 From: allegroai <> Date: Thu, 9 Apr 2020 12:51:34 +0300 Subject: [PATCH] Check if join was successful when waiting for std flush pool --- trains/backend_interface/task/log.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/trains/backend_interface/task/log.py b/trains/backend_interface/task/log.py index 8582c03f..ff4dd6d2 100644 --- a/trains/backend_interface/task/log.py +++ b/trains/backend_interface/task/log.py @@ -150,8 +150,9 @@ class TaskHandler(BufferingHandler): if self._pending <= 0: break self.__log_stderr('INFO: trains.Task - flushing console logs (timeout {}s)'.format( - self.__wait_for_flush_timeout-i)) - threadpool_waited_join(t, timeout=1.0) + float(self.__wait_for_flush_timeout-i))) + if threadpool_waited_join(t, timeout=1.0): + break ll(msg % 7) except Exception: ll(msg % 8) @@ -164,9 +165,8 @@ class TaskHandler(BufferingHandler): ll(msg % 11) def close(self, wait=False): - self.__log_stderr('Closing {} {}'.format(self._task_id, wait)) - # import traceback - # self.__log_stderr('trace: {}'.format(traceback.format_stack())) + import os + self.__log_stderr('Closing {} wait={}'.format(os.getpid(), wait)) # super already calls self.flush() super(TaskHandler, self).close() # shut down the TaskHandler, from this point onwards. No events will be logged