yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #82092
[Bug 1863021] Re: eventlet monkey patch results in assert len(_active) == 1 AssertionError
** Also affects: glance (Ubuntu)
Importance: Undecided
Status: New
** Also affects: glance
Importance: Undecided
Status: New
** Changed in: glance (Ubuntu)
Status: New => Triaged
** Changed in: glance (Ubuntu)
Importance: Undecided => High
** Description changed:
This appears to be the same issue documented here:
https://github.com/eventlet/eventlet/issues/592
- However I seem to only hit this with python3.8. Basically nova services
- fail with:
+ However I seem to only hit this with python3.8. Basically nova and
+ glance services fail with:
- Exception ignored in: <function _after_fork at 0x7f1100d075e0>
- Traceback (most recent call last):
- File "/usr/lib/python3.8/threading.py", line 1454, in _after_fork
- assert len(_active) == 1
- AssertionError:
- Exception ignored in: <function _after_fork at 0x7f1100d075e0>
- Traceback (most recent call last):
- File "/usr/lib/python3.8/threading.py", line 1454, in _after_fork
- assert len(_active) == 1
- AssertionError:
+ Exception ignored in: <function _after_fork at 0x7f1100d075e0>
+ Traceback (most recent call last):
+ File "/usr/lib/python3.8/threading.py", line 1454, in _after_fork
+ assert len(_active) == 1
+ AssertionError:
+ Exception ignored in: <function _after_fork at 0x7f1100d075e0>
+ Traceback (most recent call last):
+ File "/usr/lib/python3.8/threading.py", line 1454, in _after_fork
+ assert len(_active) == 1
+ AssertionError:
Patching nova/monkey_patch.py with the following appears to fix this:
diff --git a/nova/monkey_patch.py b/nova/monkey_patch.py
index a07ff91dac..bb7252c643 100644
--- a/nova/monkey_patch.py
+++ b/nova/monkey_patch.py
@@ -59,6 +59,9 @@ def _monkey_patch():
- else:
- eventlet.monkey_patch()
-
+ else:
+ eventlet.monkey_patch()
+
+ import __original_module_threading
+ import threading
+ __original_module_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
+ # 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
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1863021
Title:
eventlet monkey patch results in assert len(_active) == 1
AssertionError
Status in Glance:
New
Status in OpenStack Compute (nova):
Fix Released
Status in glance package in Ubuntu:
Triaged
Status in nova package in Ubuntu:
Fix Released
Bug description:
This appears to be the same issue documented here:
https://github.com/eventlet/eventlet/issues/592
However I seem to only hit this with python3.8. Basically nova and
glance services fail with:
Exception ignored in: <function _after_fork at 0x7f1100d075e0>
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 1454, in _after_fork
assert len(_active) == 1
AssertionError:
Exception ignored in: <function _after_fork at 0x7f1100d075e0>
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 1454, in _after_fork
assert len(_active) == 1
AssertionError:
Patching nova/monkey_patch.py with the following appears to fix this:
diff --git a/nova/monkey_patch.py b/nova/monkey_patch.py
index a07ff91dac..bb7252c643 100644
--- a/nova/monkey_patch.py
+++ b/nova/monkey_patch.py
@@ -59,6 +59,9 @@ def _monkey_patch():
else:
eventlet.monkey_patch()
+ import __original_module_threading
+ import threading
+ __original_module_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
To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1863021/+subscriptions
References