openstack team mailing list archive
-
openstack team
-
Mailing list archive
-
Message #02565
openstack on RHEL 6.1
Hi All,
Several people have reported on IRC that they can't get openstack
working on RHEL 6.1. Starting the openstack-nova-network service (and
various others) causes this traceback:
(nova): TRACE: File "/usr/lib64/python2.6/subprocess.py", line 725,
in communicate
(nova): TRACE: stdout, stderr = self._communicate(input, endtime)
(nova): TRACE: File "/usr/lib64/python2.6/subprocess.py", line 1322,
in _communicate
(nova): TRACE: self.wait(timeout=self._remaining_time(endtime))
(nova): TRACE: TypeError: wait() got an unexpected keyword argument 'timeout'
Red Hat have backported the 'timeout' feature for subprocess.Popen to
Python-2.6.6 in RHEL 6.1. At first glance it looks like they've broken
subprocess but infact they haven't - its Eventlet that's causing the
problem because its 'wait' function doesn't expect the timeout
argument.
I've reported the problem upstream here:
https://bitbucket.org/which_linden/eventlet/issue/89/add-a-timeout-argument-to-subprocesspopen
The patch below fixed the problem for me:
--- /usr/lib/python2.6/site-packages/eventlet/green/subprocess.py.orig 2011-05-25
23:31:34.597271402 +0000
+++ /usr/lib/python2.6/site-packages/eventlet/green/subprocess.py 2011-05-25
23:33:24.055602468 +0000
@@ -32,7 +32,7 @@
setattr(self, attr, wrapped_pipe)
__init__.__doc__ = subprocess_orig.Popen.__init__.__doc__
- def wait(self, check_interval=0.01):
+ def wait(self, check_interval=0.01, timeout=None):
# Instead of a blocking OS call, this version of wait() uses logic
# borrowed from the eventlet 0.2 processes.Process.wait() method.
try:
--
Dave