Bug 1762854

Summary: Rebase python-cotyledon to 1.7.3
Product: Red Hat OpenStack Reporter: John Eckersberg <jeckersb>
Component: python-cotyledonAssignee: Lon Hohberger <lhh>
Status: CLOSED ERRATA QA Contact: nlevinki <nlevinki>
Severity: low Docs Contact:
Priority: low    
Version: 15.0 (Stein)CC: jjoyce, jschluet, michele, slinaber, tvignaud
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-cotyledon-1.7.3-4.el8ost Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-03-05 12:02:22 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:

Description John Eckersberg 2019-10-17 16:40:07 UTC
Description of problem:
cotyledon is used as the service manager by ceilometer.  The version currently in OSP (1.6.3) unnecessarily spams syscalls in a tight loop.  Newest upstream corrects this problem.

Version-Release number of selected component (if applicable):
python-cotyledon-1.6.3-2.el8ost

How reproducible:
Always

Steps to Reproduce:
strace ceilometer-polling master process

Actual results:
[root@compute-0 ~]# ps -f 879305
UID          PID    PPID  C STIME TTY      STAT   TIME CMD
root      879305  879292 20 16:35 ?        Ss     0:02 ceilometer-polling: master process [/usr/bin/ceilometer-polling --polling-namespaces compute --logfile /var/log/ceilometer/compute.log]
[root@compute-0 ~]# strace -f -p 879305
strace: Process 879305 attached
select(5, [4], [], [], {tv_sec=0, tv_usec=9024}) = 0 (Timeout)
read(4, 0x5564f73657b0, 4096)           = -1 EAGAIN (Resource temporarily unavailable)
getpid()                                = 6
wait4(19, 0x7ffde4179124, WNOHANG, NULL) = 0
select(5, [4], [], [], {tv_sec=0, tv_usec=10000}) = 0 (Timeout)
read(4, 0x5564f73657b0, 4096)           = -1 EAGAIN (Resource temporarily unavailable)
getpid()                                = 6
wait4(19, 0x7ffde4179124, WNOHANG, NULL) = 0
select(5, [4], [], [], {tv_sec=0, tv_usec=10000}) = 0 (Timeout)
read(4, 0x5564f73657b0, 4096)           = -1 EAGAIN (Resource temporarily unavailable)
getpid()                                = 6
wait4(19, 0x7ffde4179124, WNOHANG, NULL) = 0

(repeat forever in a tight loop)

Expected results:
[root@compute-0 ~]# ps -f 876955
UID          PID    PPID  C STIME TTY      STAT   TIME CMD
root      876955  876943  0 16:21 ?        Ssl    0:02 ceilometer-polling: master process [/usr/bin/ceilometer-polling --polling-namespaces compute --logfile /var/log/ceilometer/compute.log]
[root@compute-0 ~]# strace -f -p 876955
strace: Process 876955 attached with 2 threads
[pid 877001] futex(0x7fe538001740, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, 0xffffffff <unfinished ...>
[pid 876955] select(5, [4], [], [], NULL

(should block here indefinitely until a signal is received)

Additional info:

Repo for scratch-build I did from fedora rawhide for OSP15:  http://brew-task-repos.usersys.redhat.com/repos/scratch/jeckersb/python-cotyledon/1.7.3/4.el8ost/

Comment 1 John Eckersberg 2019-10-17 16:58:03 UTC
I filed this against OSP15 but it should go to all branches where we ship this.

Comment 5 errata-xmlrpc 2020-03-05 12:02:22 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-2020:0710