Clark, I adjusted the version of greenlet/eventlet as required by other modules. here is the output: ImportError: No module named dnskeybase sh-4.2# yum list installed | grep "greenlet\|eventlet\|gevent" python2-eventlet.noarch 0.25.1-1.el7 @local_openstack-tnrp python2-gevent.x86_64 1.1.2-2.el7 @local_openstack-tnrp python2-greenlet.x86_64 0.4.12-1.el7 @local_openstack-tnrp sh-4.2# python2 Python 2.7.5 (default, Oct 30 2018, 23:45:53) [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux2 Type "help", "copyright", "credits" or "license" for more information.
from eventlet import greenpool
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/site-packages/eventlet/__init__.py", line 10, in <module> from eventlet import convenience File "/usr/lib/python2.7/site-packages/eventlet/convenience.py", line 7, in <module> from eventlet.green import socket File "/usr/lib/python2.7/site-packages/eventlet/green/socket.py", line 21, in <module> from eventlet.support import greendns File "/usr/lib/python2.7/site-packages/eventlet/support/greendns.py", line 67, in <module> setattr(dns.rdtypes, pkg, import_patched('dns.rdtypes.' + pkg)) File "/usr/lib/python2.7/site-packages/eventlet/support/greendns.py", line 59, in import_patched return patcher.import_patched(module_name, **modules) File "/usr/lib/python2.7/site-packages/eventlet/patcher.py", line 126, in import_patched *additional_modules + tuple(kw_additional_modules.items())) File "/usr/lib/python2.7/site-packages/eventlet/patcher.py", line 100, in inject module = __import__(module_name, {}, {}, module_name.split('.')[:-1]) ImportError: No module named dnskeybase
On Thu, Jun 17, 2021 at 10:44 AM Clark Boylan <cboylan@sapwetik.org> wrote:
On Thu, Jun 17, 2021, at 10:03 AM, Pete Zhang wrote:
Not sure if my previous email went through or not. Just resend it.
We hit this error during "glance-manage db_sync": *ImportError: cannot import name greenpool.* Any idea what the root cause is and how to fix it? We have the following rpms installed (thought related).
`python2-greenlet-0.4.9-1.el7.x86_64.rpm` `python2-eventlet-0.18.4-2.el7.noarch.rpm` `python2-gevent-1.1.2-2.el7.x86_64.rpm`
snip
Notice: /Stage[main]/Neutron::Db::Sync/Exec[neutron-db-sync]/returns: from eventlet import greenpool
Notice: /Stage[main]/Neutron::Db::Sync/Exec[neutron-db-sync]/returns: ImportError: cannot import name greenpool
I'm not familiar with the CentOS7 packaging, but as a sanity check I ran `pip install greenlet==0.4.9 eventlet==0.18.4` in a python2 virtualenv then in a python2 interpreter `from eventlet import greenpool` runs successfully. I would try running this import by hand on your system to see if you can get any more information. Could be a packaging issue or potentially some sort of name collision between script names?
Clark
-- <https://smart.salesforce.com/sig/peiyong.zhang//us_mb/default/link.html>