Short version:
Error message: AttributeError("'module' object has no attribute 'epolls'",)
Possible explanation:
https://github.com/shazow/urllib3/issues/1104 where urllib3 is intercepting
select calls, and not providing epoll or epolls.
Question:
How to bypass this? My script worked a few months ago when testing, so I am
trying to narrow down what changed.
Code in monotonic.py, I changed to get some debugging output (exception
occurs on the statement between 'line d' and 'line g', following code is
starting around line 132 in montonic.py:
else:
print "line b"
print sys.path
print ctypes
print ctypes.util
try:
print "line d"
print ctypes.util.find_library('c')
print "line g"
clock_gettime = ctypes.CDLL(ctypes.util.find_library('c'),
use_errno=True).clock_gettime
except AttributeError as e:
print( "line e ", e )
clock_gettime = ctypes.CDLL(ctypes.util.find_library('rt'),
use_errno=True).clock_gettime
print "line f"
search for 'line e' in the following output to spot the module with
problems.
root@edge:/home/vagrant# ryu run --observe-links /vagrant/test1.py
--install-lldp-flow
loading app /vagrant/test1.py
loading app ryu.topology.switches
loading app ryu.controller.dpset
loading app ryu.controller.ofp_handler
instantiating app ryu.controller.dpset of DPSet
instantiating app ryu.topology.switches of Switches
line a
line b
['/usr/share/python-wheels/CacheControl-0.11.7-py2.py3-none-any.whl',
'/usr/share/python-wheels/appdirs-1.4.0-py2.py3-none-any.whl',
'/usr/share/python-wheels/chardet-2.3.0-py2.py3-none-any.whl',
'/usr/share/python-wheels/colorama-0.3.7-py2.py3-none-any.whl',
'/usr/share/python-wheels/distlib-0.2.4-py2.py3-none-any.whl',
'/usr/share/python-wheels/distro-1.0.1-py2.py3-none-any.whl',
'/usr/share/python-wheels/html5lib-0.999999999-py2.py3-none-any.whl',
'/usr/share/python-wheels/ipaddress-0.0.0-py2.py3-none-any.whl',
'/usr/share/python-wheels/lockfile-0.12.2-py2.py3-none-any.whl',
'/usr/share/python-wheels/packaging-16.8-py2.py3-none-any.whl',
'/usr/share/python-wheels/pip-9.0.1-py2.py3-none-any.whl',
'/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl',
'/usr/share/python-wheels/progress-1.2-py2.py3-none-any.whl',
'/usr/share/python-wheels/pyparsing-2.1.10-py2.py3-none-any.whl',
'/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl',
'/usr/share/python-wheels/retrying-1.3.3-py2.py3-none-any.whl',
'/usr/share/python-wheels/setuptools-32.3.1-py2.py3-none-any.whl',
'/usr/share/python-wheels/six-1.10.0-py2.py3-none-any.whl',
'/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl',
'/usr/share/python-wheels/webencodings-0.5-py2.py3-none-any.whl',
'/usr/share/python-wheels/wheel-0.29.0-py2.py3-none-any.whl',
'/usr/local/bin', '/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk',
'/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages']
<module 'ctypes' from '/usr/lib/python2.7/ctypes/__init__.pyc'>
<module 'ctypes.util' from '/usr/lib/python2.7/ctypes/util.pyc'>
line d
('line e ', AttributeError("'module' object has no attribute 'epolls'",))
Exception AttributeError: "'_SocketDuckForFd' object has no attribute
'_closed'" in <bound method _SocketDuckForFd.__del__ of _SocketDuckForFd:7>
ignored
Exception AttributeError: "'_SocketDuckForFd' object has no attribute
'_closed'" in <bound method _SocketDuckForFd.__del__ of _SocketDuckForFd:8>
ignored
Traceback (most recent call last):
File "/usr/local/bin/ryu", line 11, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/ryu/cmd/ryu_base.py", line
74, in main
subcmd.run(base_conf.subcommand_args)
File "/usr/local/lib/python2.7/dist-packages/ryu/cmd/ryu_base.py", line
57, in run
self.entry(args=args, prog=prog)
File "/usr/local/lib/python2.7/dist-packages/ryu/cmd/manager.py", line 81,
in main
services.extend(app_mgr.instantiate_apps(**contexts))
File "/usr/local/lib/python2.7/dist-packages/ryu/base/app_manager.py",
line 509, in instantiate_apps
self._instantiate(app_name, cls, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/ryu/base/app_manager.py",
line 495, in _instantiate
app = cls(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/ryu/topology/switches.py",
line 532, in __init__
self.threads.append(hub.spawn(self.lldp_loop))
File "/usr/local/lib/python2.7/dist-packages/ryu/lib/hub.py", line 68, in
spawn
return eventlet.spawn(_launch, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py",
line 50, in spawn
hub = hubs.get_hub()
File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/__init__.py",
line 116, in get_hub
use_hub()
File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/__init__.py",
line 70, in use_hub
mod = get_default_hub()
File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/__init__.py",
line 38, in get_default_hub
import eventlet.hubs.epolls
File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/epolls.py",
line 27, in <module>
from eventlet.hubs.hub import BaseHub
File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line
23, in <module>
from eventlet.support import greenlets as greenlet, clear_sys_exc_info,
monotonic, six
File
"/usr/local/lib/python2.7/dist-packages/eventlet/support/monotonic.py", line
178, in <module>
raise RuntimeError('no suitable implementation for this system')
RuntimeError: no suitable implementation for this system
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel