group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #31416
[Bug 1834072] Re: Puppet agent using 100% CPU, in sched_yield() loop. Looks like an issue with ruby2.3 which has been fixed but not yet made it into Ubuntu.
Hello DAN, or anyone else affected,
Accepted ruby2.3 into xenial-proposed. The package will build now and be
available at
https://launchpad.net/ubuntu/+source/ruby2.3/2.3.1-2~ubuntu16.04.13 in a
few hours, and then in the -proposed repository.
Please help us by testing this new package. See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.Your feedback will aid us getting this
update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-xenial to verification-done-xenial. If it does not
fix the bug for you, please add a comment stating that, and change the
tag to verification-failed-xenial. In either case, details of your
testing will help us make a better decision.
Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in
advance!
** Changed in: ruby2.3 (Ubuntu Xenial)
Status: New => Fix Committed
** Tags added: verification-needed verification-needed-xenial
** Changed in: ruby2.3 (Ubuntu)
Status: In Progress => Invalid
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1834072
Title:
Puppet agent using 100% CPU, in sched_yield() loop. Looks like an
issue with ruby2.3 which has been fixed but not yet made it into
Ubuntu.
Status in ruby2.3 package in Ubuntu:
Invalid
Status in ruby2.3 source package in Xenial:
Fix Committed
Status in ruby2.3 package in Debian:
Fix Released
Bug description:
[Impact]
Ruby processes can sometimes get stuck in a loop consuming 100% CPU,
as described upstream and in the debian bug report. It has most
commonly been seen in the puppet agent.
[Test Case]
It's not easy to reproduce. It has been suggested that this script eventually reproduces the problem:
while nice -n19 /opt/puppetlabs/puppet/bin/ruby sched_yield_loop.rb;
do :; done
Where sched_yield_loop.rb comes from "https://bugs.debian.org/cgi-
bin/bugreport.cgi?att=1;bug=876377;filename=sched_yield_loop.rb;msg=22"
I personally haven't seen it happen with the script, but maybe it
could take days.
[Regression Potential]
Races with threads can be hard to reproduce, and so can regressions.
Patch has been applied upstream and to debian for more than a year now.
[Other Info]
Bionic has ruby 2.5.1 and it has this fix already, as do all later ubuntu releaes.
[Original Description]
Ubuntu 16.04
ruby 2.3.1-2~16.04.12
kernel 4.4.0-148-generic
We've noticed an issue across multiple servers where puppet agent will
seem to get stuck and consume 100% CPU for days or weeks on end until
manually killed.
root@ps-prod-jenkins-qa-ui02:~# ps auxwwww|grep -i puppe[t]
root 1412 0.0 0.2 143716 38680 ? Ssl Jun11 0:39 /usr/bin/ruby /usr/bin/puppet agent
root 34884 74.4 0.3 286848 53724 ? Rs Jun23 1141:44 puppet agent: applying configuration
root 111481 94.1 0.3 288572 54996 ? Rs Jun18 8642:32 puppet agent: applying configuration
root 128479 54.8 0.3 286744 53596 ? Rs 10:30 250:17 puppet agent: applying configuration
Strace shows it in a sched_yield() loop:
root@ps-prod-jenkins-qa-ui02:~# strace -p 34884 -c
strace: Process 34884 attached
^Cstrace: Process 34884 detached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
100.00 0.002130 0 123189 sched_yield
------ ----------- ----------- --------- --------- ----------------
100.00 0.002130 123189 total
Some googling shows this is a common issue which was supposedly
fixed/backported to ruby 2.3:
https://tickets.puppetlabs.com/browse/PA-1743
https://bugs.ruby-lang.org/issues/13794
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=876377
The following open Ubuntu bugs look to be having the same issue and
suggest that this fix made it into Debian but never made it into
Ubuntu:
https://bugs.launchpad.net/ubuntu/+source/pcs/+bug/1783161
https://bugs.launchpad.net/ubuntu/+source/pcs/+bug/1772998
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ruby2.3/+bug/1834072/+subscriptions