Issue #10418 has been updated by Andrew  Parker.

After some investigation on this we discovered that this is a problem that 
seems to only occur if the program read `/proc/self/mounts`. When we modified 
the code to read from other places in `/proc` the hang didn't occur. That 
explains why we weren't seeing this with Facter 1.6.10 even though it uses 
`File.read` and `File.readlines` to read from `/proc`. The fix that the [pull 
request](https://github.com/puppetlabs/facter/pull/304) puts in place is to use 
an exec of `cat` to read from `/proc/self/mounts`.

However, as we were looking into this we weren't sure why the selinux facts 
were a mixture of reading from `/proc` or `/selinux` and executing the 
`sestatus` command. It looks like the `sestatus` command should be able to 
provide all of this information.
----------------------------------------
Bug #10418: Puppet agent hangs when listen is true and reading from /proc 
filesystem on redhat
https://projects.puppetlabs.com/issues/10418#change-70325

Author: Jo Rhett
Status: In Topic Branch Pending Review
Priority: Normal
Assignee: Patrick Otto
Category: agent
Target version: 
Affected Puppet version: 2.6.12
Keywords: enabledisable hang select proc listen redhat
Branch: https://github.com/puppetlabs/facter/pull/304


Mon Oct 31 23:03:31 +0000 2011 Puppet (notice): Caught TERM; calling stop

Ever since the 2.6.12 upgrade I've been seeing these reports reach us. As in, 
about a hundred of a half thou machines. Most of the time we find that 
$vardir/state/puppetdlock is in place and blocking further puppet runs, which 
requires a manual resolution.

I wrote a quick cron script to look for puppetdlock files older than one hour, 
remove them and mail me a report and I've received several dozen in the last 
few hours. Something is clearly broken in 2.6.12, we are backgrading our 
systems to 2.6.11.

No-- I have no other information than that it crosses all of our machine types, 
and we have had no significant changes in our modules in this time period.  
Many of the machines which have failed have had zero module or manifest changes 
which would apply to them.  I cannot get this to replicate on the command line.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to