Bug 1301103 - goferd taking 100% CPU after successful reconnect to qdrouterd after a longer time
Summary: goferd taking 100% CPU after successful reconnect to qdrouterd after a longer...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Foreman Proxy
Version: 6.1.5
Hardware: All
OS: Linux
urgent
high
Target Milestone: Unspecified
Assignee: Katello Bug Bin
QA Contact: Katello QA List
URL:
Whiteboard:
Depends On: 1295957
Blocks: 1122832
TreeView+ depends on / blocked
 
Reported: 2016-01-22 15:32 UTC by Bryan Kearney
Modified: 2019-12-16 05:18 UTC (History)
28 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Previously, the Qpid proton reactor class did not abort internal pipes correctly when a connection was reset. During reconnect, the reactor thread occasionally entered an infinite loop, causing high CPU consumption. The internal pipes are now properly closed and the high CPU consumption no longer occurs on reconnect.
Clone Of: 1295957
Environment:
Last Closed: 2016-01-28 07:25:41 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Apache JIRA PROTON-1090 0 None None None 2016-01-22 15:32:08 UTC
Red Hat Knowledge Base (Solution) 2113371 0 None None None 2016-01-22 15:32:08 UTC
Red Hat Product Errata RHBA-2016:0076 0 normal SHIPPED_LIVE Satellite 6.1 bug fix update 2016-01-28 12:25:23 UTC

Comment 2 Sachin Ghai 2016-01-27 10:11:31 UTC
Verified with satellite 6.1.6 compose 7 (async errata).

I was able to reproduce the reported issue with:

]# rpm -qa | grep qpid-proton
qpid-proton-c-0.9-11.el7.x86_64
python-qpid-proton-0.9-11.el7.x86_64

---
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                           
28593 root      20   0 1535020  39796   9772 S 100.0  0.1   2:18.76 python 

root     28593     1  5 04:14 ?        00:00:40 python /usr/bin/goferd --foreground
---


Later, I tested with latest compose7 and with following packages:
[root@apollo ~]# rpm -qa | grep qpid
python-qpid-proton-0.9-12.el7sat.x86_64
qpid-proton-c-0.9-12.el7sat.x86_64


And this time I don't see any process like python/goferd consuming more that 100% CPU on re-connection to qdrouterd. here is the result after fix:


  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                           
14834 root      20   0 1939924  46960  10328 S   0.7  0.6   0:07.83 python  

root     14834     1  0 04:03 ?        00:00:07 python /usr/bin/goferd --foreground


Please note that I've done this testing against Satellite/capsule installed on rhel7.

Comment 3 Sachin Ghai 2016-01-27 13:17:50 UTC
Moving this bz to verified as per comment2. The other clients (rhel6, rhel5.11) tests can be covered in other bz 1295957

Comment 5 errata-xmlrpc 2016-01-28 07:25:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2016:0076


Note You need to log in before you can comment on or make changes to this bug.