Issue #10909 has been updated by Josh Cooper.

> Working around these because a vendor reintroduced the bug briefly as part of 
> a kernel update doesn't make that any wiser.

Just to be clear, implementing this change wouldn't have prevented the hang 
from occurring. It would occur anytime Puppet performed a blocking read with 
it's listener thread blocked in accept, so pretty much all the time.

While reviewing this issue, Jacob said that facter shouldn't be calling 
IO.readlines, etc, generally speaking, and so this is why I filed it.

----------------------------------------
Bug #10909: Shell out when reading from /proc
https://projects.puppetlabs.com/issues/10909

Author: Josh Cooper
Status: Rejected
Priority: Normal
Assignee: 
Category: 
Target version: 
Keywords: 
Branch: 
Affected Facter version: 


There are many places in facter where it using ruby's IO.read or IO.readlines 
to read the contents of files in /proc. This is problematic, as it can cause 
ruby to block definitely. It is better to use:

<pre>
Facter::Util::Resolution.exec("/bin/cat #{uptime_file} 2>/dev/null")
</pre>

with an appropriate timeout. This issue was triggering 
https://support.puppetlabs.com/tickets/482 (though not the cause)


-- 
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