From f5d47b0167a4f8e88aa839d6c8d9cc9646421dea Mon Sep 17 00:00:00 2001 From: Romuald Juchnowicz-Bierbasz Date: Fri, 15 Nov 2019 18:16:42 +0100 Subject: [PATCH] Add timeout to shutdown --- src/galaxy/api/plugin.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/galaxy/api/plugin.py b/src/galaxy/api/plugin.py index 1ccfa7f..d37aa8e 100644 --- a/src/galaxy/api/plugin.py +++ b/src/galaxy/api/plugin.py @@ -200,7 +200,14 @@ class Plugin: logger.info("Closing plugin") self._connection.close() self._external_task_manager.cancel() - self._internal_task_manager.create_task(self.shutdown(), "shutdown") + + async def shutdown(): + try: + await asyncio.wait_for(self.shutdown(), 30) + except asyncio.TimeoutError: + logging.warning("Plugin shutdown timed out") + + self._internal_task_manager.create_task(shutdown(), "shutdown") self._active = False async def wait_closed(self) -> None: