diff options
author | Rodolfo Alonso Hernandez <ralonsoh@redhat.com> | 2020-09-30 11:27:31 +0000 |
---|---|---|
committer | Rodolfo Alonso Hernandez <ralonsoh@redhat.com> | 2020-10-09 08:57:33 +0000 |
commit | adde6d913fd13b8c2369fa32e15fddf52b42a874 (patch) | |
tree | e89028029c6445817a4cfae78652d3e627bfb924 | |
parent | 27585e453a56490531c5d8e2ee780147d586e122 (diff) | |
download | oslo-concurrency-ussuri-em.tar.gz |
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
Change-Id: I0a2c1e0d8a8cad99d68100d25e88e0d3a2eb8f5c
Related-Bug: #1863021
(cherry picked from commit 6533958f5fcec8b1577f56834ea2dc75a4f211e3)
-rw-r--r-- | oslo_concurrency/processutils.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/oslo_concurrency/processutils.py b/oslo_concurrency/processutils.py index fc815de..85d1283 100644 --- a/oslo_concurrency/processutils.py +++ b/oslo_concurrency/processutils.py @@ -56,6 +56,13 @@ if eventlet_patched: from eventlet.green import subprocess from eventlet import tpool + + # 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 + import threading + orig_threading.current_thread.__globals__['_active'] = threading._active else: import subprocess |