Skip to content

Commit

Permalink
Monkey patch original current_thread _active
Browse files Browse the repository at this point in the history
Monkey patch the original current_thread to use the up-to-date _active
global variable. This solution is based on that documented at:
eventlet/eventlet#592

Change-Id: I4872169413f27aeaff8d8fdfa5cdaf6ee32f4680
Closes-Bug: #1863021
  • Loading branch information
Corey Bryant committed Feb 12, 2020
1 parent 1fcd747 commit 2078ef8
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions nova/monkey_patch.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,13 @@ def _monkey_patch():
else:
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
import threading
orig_threading.current_thread.__globals__['_active'] = threading._active

# NOTE(rpodolyaka): import oslo_service first, so that it makes eventlet
# hub use a monotonic clock to avoid issues with drifts of system time (see
# LP 1510234 for details)
Expand Down

0 comments on commit 2078ef8

Please sign in to comment.