From f1c873fedc7ec05bb4d67436d534e0348e6fd376 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Wed, 23 Oct 2019 14:38:32 +0200 Subject: [PATCH] minor fixes, occupied socket ports are skipped and logger is renamed --- .../parallel_event_server/event_server_cli.py | 10 ++++++++++ .../parallel_event_server/socket_thread.py | 13 +++++++++---- .../parallel_event_server/sub_event_processor.py | 2 +- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/pype/ftrack/ftrack_server/parallel_event_server/event_server_cli.py b/pype/ftrack/ftrack_server/parallel_event_server/event_server_cli.py index 15afb6672d..55670178e2 100644 --- a/pype/ftrack/ftrack_server/parallel_event_server/event_server_cli.py +++ b/pype/ftrack/ftrack_server/parallel_event_server/event_server_cli.py @@ -170,6 +170,16 @@ def main_loop(ftrack_url, username, api_key, event_paths): if not ftrack_accessible and not printed_ftrack_error: print("Can't access Ftrack {}".format(ftrack_url)) + if storer_thread is not None: + storer_thread.stop() + storer_thread.join() + storer_thread = None + + if processor_thread is not None: + processor_thread.stop() + processor_thread.join() + processor_thread = None + printed_ftrack_error = True printed_mongo_error = True diff --git a/pype/ftrack/ftrack_server/parallel_event_server/socket_thread.py b/pype/ftrack/ftrack_server/parallel_event_server/socket_thread.py index 1ec4eca57f..e787004afc 100644 --- a/pype/ftrack/ftrack_server/parallel_event_server/socket_thread.py +++ b/pype/ftrack/ftrack_server/parallel_event_server/socket_thread.py @@ -24,7 +24,6 @@ class SocketThread(threading.Thread): def stop(self): self._is_running = False - super().stop() def process_to_die(self): if not self.connection: @@ -40,9 +39,15 @@ class SocketThread(threading.Thread): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.sock = sock - # Bind the socket to the port - server_address = ("localhost", self.port) - sock.bind(server_address) + # Bind the socket to the port - skip already used ports + while True: + try: + server_address = ("localhost", self.port) + sock.bind(server_address) + break + except OSError: + self.port += 1 + self.log.debug( "Running Socked thread on {}:{}".format(*server_address) ) diff --git a/pype/ftrack/ftrack_server/parallel_event_server/sub_event_processor.py b/pype/ftrack/ftrack_server/parallel_event_server/sub_event_processor.py index a795775a94..c94223deae 100644 --- a/pype/ftrack/ftrack_server/parallel_event_server/sub_event_processor.py +++ b/pype/ftrack/ftrack_server/parallel_event_server/sub_event_processor.py @@ -9,7 +9,7 @@ from pype.ftrack.ftrack_server import FtrackServer from session_processor import ProcessSession from pypeapp import Logger -log = Logger().get_logger("Event storer") +log = Logger().get_logger("Event processor") def main(args):