Issue #3013 has been updated by Markus Roberts.

I like the WNOHANG idea, and have incorporated it into my next round; it 
greatly simplifies the abandon pipes of ill-behaved children idea.

So we now have a version that passes all the tests (translation: "it's time to 
write more tests"), but what we really need is to decide how far we want to go 
to deal with exec tasks that launch psychotic daemons.  We may be dealing with 
a real issue, or we may be fading off into hypothetical situations that will 
never arise.

If they're chimeral (specifically if they wouldn't ever write to the pipe, but 
just hold on to it in error) we should probably just close our end and move on.

If it is a real issue the best approach might be to fight fire with fire and 
pass our end of the pipe off to a new (detached) process that waits for the 
prodigal daemons to either close the pipe or die, and then closes our end and 
exits cleanly.

Any idea what pragmatic situation with regards to such daemons is, our how we 
might ascertain it?

P.S. I've updated the branch, and am now going to write more tests.
----------------------------------------
Bug #3013: util.rb:execute broken on Ruby <1.8.3
http://projects.reductivelabs.com/issues/3013

Author: Ricky Zhou
Status: Ready for Testing
Priority: Urgent
Assigned to: Markus Roberts
Category: exec
Target version: 0.25.3
Affected version: 0.25.2
Keywords: 
Branch: http://github.com/MarkusQ/puppet/tree/ticket/0.25.x/3013


Apparently the patch in ticket #2731 introduced one more issue by using 
readpartial, which isn't available until ruby 1.8.3 (RHEL4 at least is 
affected).  I'm not sure how this is normally handled in ruby, but if the 
readpartial function is not available, the code should fall back to sysread 
(along with some code for handling EINTR).

Anybody with better ruby knowledge know how this should be done?


-- 
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://reductivelabs.com/redmine/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