Merge pull request #847 from youknowone/gunicorn

ensure loop.close() and sys.exit() in gunicorn worker
This commit is contained in:
Raphael Deem 2017-07-12 18:19:39 -07:00 committed by GitHub
commit 48549ce97b

View File

@ -3,6 +3,7 @@ import sys
import signal
import asyncio
import logging
import traceback
try:
import ssl
@ -69,10 +70,16 @@ class GunicornWorker(base.Worker):
trigger_events(self._server_settings.get('before_stop', []),
self.loop)
self.loop.run_until_complete(self.close())
except:
traceback.print_exc()
finally:
trigger_events(self._server_settings.get('after_stop', []),
self.loop)
self.loop.close()
try:
trigger_events(self._server_settings.get('after_stop', []),
self.loop)
except:
traceback.print_exc()
finally:
self.loop.close()
sys.exit(self.exit_code)