Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1175882

Summary: [RHEL 7]neutron-server gets stuck in poll python-qpid 0.22
Product: Red Hat Enterprise MRG Reporter: Irina Boverman <iboverma>
Component: python-qpidAssignee: messaging-bugs <messaging-bugs>
Status: CLOSED UPSTREAM QA Contact: Messaging QE <messaging-qe-bugs>
Severity: high Docs Contact:
Priority: high    
Version: 3.0CC: acathrow, jross, kgiusti, lbezdick, lhh, mburns, messaging-bugs, messaging-qe-bugs, mschuppe, pematous, tfreger
Target Milestone: 3.0.2   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-qpid-0.22-19 Doc Type: Bug Fix
Doc Text:
Previously, the neutron messaging client rewrote (by method of "monkey-patching") the python selector module to support eventlet threading. The rewritten client did not update select.poll() during this process, which is used by qpid-python to manage I/O. This resulted in poll() deadlocks and neutron server hangs. The fix introduces updates to the qpid-python library that avoid calling poll() if eventlet threading is detected. Instead, the eventlet-aware select() is called, which prevents deadlocks from occurring and corrects the originally reported issue.
Story Points: ---
Clone Of: 1175872 Environment:
Last Closed: 2025-02-10 03:43:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1175872    
Bug Blocks:    

Comment 6 Toni Freger 2015-01-18 11:58:11 UTC
Have tested RHOS6 on RHEL7

Packages:
qpid-cpp-server-0.22-50.el7.x86_64
qpid-proton-c-0.7-4.el7.x86_64
qpid-cpp-client-0.22-50.el7.x86_64
python-qpid-0.22-19.el7.noarch

openstack-neutron-ml2-2014.2.1-6.el7ost.noarch
openstack-neutron-openvswitch-2014.2.1-6.el7ost.noarch

The installation works properly.
Also tested:
1.Internal\External networks
2.FloatingIP
3.Security Group - SSH and ICMP

Comment 8 Jared MORGAN 2015-03-02 23:21:54 UTC
Hey Petr

Could you please sanity check my Release Note for this issue. I want to ensure I haven't reversed the conditions/servers/poll issue when I constructed the RN.

Cheers

J

Comment 9 Petr Matousek 2015-03-03 11:05:28 UTC
Hi Jared, I believe you're wrong in the RN.

"..qpid client has been improved to change the implementation to prefer poll() over select(), which fixes the original issue."
^^ is wrong, because select() shall be preferred to poll() if patched by eventlet. That fixes the original issue.

More detail:
previously the python client was changed to prefer poll instead of select (QPID-5588), and as eventlet greenthreads library used by openstack-neutron works only with select() this issue arise (QPID-5790). Because the selection between select() and poll() is being done dynamically, the condition was improved to prefer select() to poll() if patched by eventlet.

ALSO I believe that doc text used here: bug 1102040 (probably written by you:) is precise and exactly the same text may be used here as well (this bug is a clone of 1102040).

Comment 10 Jared MORGAN 2015-03-03 21:50:45 UTC
(In reply to Petr Matousek from comment #9)
> Hi Jared, I believe you're wrong in the RN.
> 
> "..qpid client has been improved to change the implementation to prefer
> poll() over select(), which fixes the original issue."
> ^^ is wrong, because select() shall be preferred to poll() if patched by
> eventlet. That fixes the original issue.
> 
> More detail:
> previously the python client was changed to prefer poll instead of select
> (QPID-5588), and as eventlet greenthreads library used by openstack-neutron
> works only with select() this issue arise (QPID-5790). Because the selection
> between select() and poll() is being done dynamically, the condition was
> improved to prefer select() to poll() if patched by eventlet.
> 
> ALSO I believe that doc text used here: bug 1102040 (probably written by
> you:) is precise and exactly the same text may be used here as well (this
> bug is a clone of 1102040).

Thanks for the link to the above related BZ, Petr. I've updated the text with the info from BZ#1102040

Comment 16 Red Hat Bugzilla 2025-02-10 03:43:47 UTC
This product has been discontinued or is no longer tracked in Red Hat Bugzilla.