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 deede2ed03..1ec4eca57f 100644 --- a/pype/ftrack/ftrack_server/parallel_event_server/socket_thread.py +++ b/pype/ftrack/ftrack_server/parallel_event_server/socket_thread.py @@ -68,7 +68,7 @@ class SocketThread(threading.Thread): if (time.time() - time_socket) > self.MAX_TIMEOUT: self.log.error("Connection timeout passed. Terminating.") self._is_running = False - os.kill(self.subproc.pid, signal.SIGINT) + self.subproc.terminate() break continue @@ -89,7 +89,7 @@ class SocketThread(threading.Thread): "Connection timeout passed. Terminating." ) self._is_running = False - os.kill(self.subproc.pid, signal.SIGINT) + self.subproc.terminate() break continue @@ -109,6 +109,6 @@ class SocketThread(threading.Thread): # Clean up the connection connection.close() if self.subproc.poll() is None: - os.kill(self.subproc.pid, signal.SIGINT) + self.subproc.terminate() self.finished = True 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 bd3118a893..a795775a94 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 @@ -42,5 +42,6 @@ if __name__ == "__main__": sys.exit(0) signal.signal(signal.SIGINT, signal_handler) + signal.signal(signal.SIGTERM, signal_handler) main(sys.argv) diff --git a/pype/ftrack/ftrack_server/parallel_event_server/sub_event_storer.py b/pype/ftrack/ftrack_server/parallel_event_server/sub_event_storer.py index bf2dd0eefa..864b4b7c1d 100644 --- a/pype/ftrack/ftrack_server/parallel_event_server/sub_event_storer.py +++ b/pype/ftrack/ftrack_server/parallel_event_server/sub_event_storer.py @@ -98,5 +98,6 @@ if __name__ == "__main__": sys.exit(0) signal.signal(signal.SIGINT, signal_handler) + signal.signal(signal.SIGTERM, signal_handler) main(sys.argv)