From 1204f428e3218c8e48df3d81b1f9a9170bcdda05 Mon Sep 17 00:00:00 2001 From: suzhengwei Date: Fri, 8 May 2020 17:23:54 +0800 Subject: [PATCH] Monkey patch original current_thread _active Monkey patch the original current_thread to use the up-to-date _active global variable. This solution is based on that documented at: https://github.com/eventlet/eventlet/issues/592 Closes-Bug: #1863021 Change-Id: I3ae99e3cae6fdfe430040ca7b4eb531ea4c22b18 --- cyborg/cmd/__init__.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cyborg/cmd/__init__.py b/cyborg/cmd/__init__.py index fd76ac1b..767af604 100644 --- a/cyborg/cmd/__init__.py +++ b/cyborg/cmd/__init__.py @@ -17,5 +17,11 @@ import eventlet import oslo_i18n as i18n eventlet.monkey_patch() +# Monkey patch the original current_thread to use the up-to-date _active +# global variable. See https://bugs.launchpad.net/bugs/1863021 and +# https://github.com/eventlet/eventlet/issues/592 +import __original_module_threading as orig_threading # noqa +import threading # noqa +orig_threading.current_thread.__globals__['_active'] = threading._active i18n.install('cyborg')