fix eventlet worker boot

new version of eventlet uses an external process to check a feature at
runtime (monotonic). ut since gunicorn already installed a signal handler,
eventlet never get the return and then was raising a runtime error making the worker crash.

This patch fix it by patching the worker after it has been initialized
and the signals resetted.

fix #1584
This commit is contained in:
Benoit Chesneau 2017-11-12 11:10:17 +01:00
parent 61431d47f3
commit 120f503f68

View File

@ -99,8 +99,8 @@ class EventletWorker(AsyncWorker):
return super(EventletWorker, self).is_already_handled(respiter)
def init_process(self):
self.patch()
super(EventletWorker, self).init_process()
self.patch()
def handle_quit(self, sig, frame):
eventlet.spawn(super(EventletWorker, self).handle_quit, sig, frame)