For those people following along at home on this issue, Lucas Nussbaum
chased it up on behalf of Debian and has just gotten a patch uploaded
to Debian that resolves this problem.

http://redmine.ruby-lang.org/issues/show/2739



On Mon, Mar 1, 2010 at 8:44 AM, Nigel Kersten <nig...@google.com> wrote:
> On Mon, Mar 1, 2010 at 5:29 AM, Silviu Paragina <sil...@paragina.ro> wrote:
>> Sorry for reviving such an old thread :"> I've actually hit this today on a
>> single core machine (amd sempron if it matters..).
>>
>>
>> r...@testclient:~# ruby -v
>> ruby 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
>> r...@testclient:~# puppetd -V
>> 0.25.1
>>
>>
>> Any other solutions to this and/or if it has been fixed in ubuntu?
>
> It hasn't been. I've been kept busy with other things unfortunately.
>
> Feel free to update the Ubuntu bug, or check with ruby upstream to see
> if anyone has reproduced it.
>
> The Timeout module is all pure Ruby, so it shouldn't be too hard to
> work out what is triggering this.
>
> fwiw, the MacPorts version of p249 doesn't have this issue, but it has
> a bunch of patches applied to it.
>
> http://svn.macports.org/repository/macports/trunk/dports/lang/ruby/files/
>
> I was planning to work through them and see what patch was resolving
> this, but am kind of strapped this week.
>
>
>
>>
>>
>>
>> Silviu
>>
>> On 02/14/2010 04:13 AM, Joshua Anderson wrote:
>>>
>>> I'm afraid that I couldn't reproduce this on a Debian VM with Kai's
>>> example.
>>>
>>> Here's my attempt:
>>>
>>> j...@debian:~$ uname -a
>>> Linux debian 2.6.18.8-x86_64-linode10 #1 SMP Tue Nov 10 16:29:17 UTC 2009
>>> x86_64 GNU/Linux
>>> j...@debian:~$ ruby -v
>>> ruby 1.8.7 (2010-01-10 patchlevel 249) [x86_64-linux]
>>> j...@debian:~$ puppet --version
>>> 0.25.4
>>> j...@debian:~$ puppet --debug --trace test.pp
>>> Could not retrieve virtual: Permission denied - /proc/xen/capabilities
>>> Could not retrieve virtual: Permission denied - /proc/xen/capabilities
>>> Could not retrieve virtual: Permission denied - /proc/xen/capabilities
>>> Could not retrieve virtual: Permission denied - /proc/xen/capabilities
>>> debug: Creating default schedules
>>> debug: Failed to load library 'selinux' for feature 'selinux'
>>> debug: Failed to load library 'ldap' for feature 'ldap'
>>> debug: /File[/home/josh/.puppet/ssl]: Autorequiring
>>> File[/home/josh/.puppet]
>>> debug: /File[/home/josh/.puppet/var/client_yaml]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: /File[/home/josh/.puppet/ssl/certificate_requests]: Autorequiring
>>> File[/home/josh/.puppet/ssl]
>>> debug: /File[/home/josh/.puppet/var/log]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: /File[/home/josh/.puppet/var/lib]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: /File[/home/josh/.puppet/var/state]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: /File[/home/josh/.puppet/var/clientbucket]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: /File[/home/josh/.puppet/ssl/private_keys]: Autorequiring
>>> File[/home/josh/.puppet/ssl]
>>> debug: /File[/home/josh/.puppet/ssl/certs]: Autorequiring
>>> File[/home/josh/.puppet/ssl]
>>> debug: /File[/home/josh/.puppet/var]: Autorequiring
>>> File[/home/josh/.puppet]
>>> debug: /File[/home/josh/.puppet/ssl/private]: Autorequiring
>>> File[/home/josh/.puppet/ssl]
>>> debug: /File[/home/josh/.puppet/ssl/public_keys]: Autorequiring
>>> File[/home/josh/.puppet/ssl]
>>> debug: /File[/home/josh/.puppet/var/state/graphs]: Autorequiring
>>> File[/home/josh/.puppet/var/state]
>>> debug: /File[/home/josh/.puppet/var/facts]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: /File[/home/josh/.puppet/var/run]: Autorequiring
>>> File[/home/josh/.puppet/var]
>>> debug: Finishing transaction 23715921915640 with 0 changes
>>> info: Applying configuration version '1266113402'
>>> debug: //testmodule/Exec[TEST-EXEC]: Changing returns
>>> debug: //testmodule/Exec[TEST-EXEC]: 1 change(s)
>>> debug: //testmodule/Exec[TEST-EXEC]: Executing '/usr/bin/touch
>>> /tmp/7777>/tmp/123 2>&1'
>>> debug: Executing '/usr/bin/touch /tmp/7777>/tmp/123 2>&1'
>>> notice: //testmodule/Exec[TEST-EXEC]/returns: executed successfully
>>> debug: Finishing transaction 23715922698720 with 1 changes
>>> j...@debian:~$
>>>
>>> -Josh
>>>
>>>
>>> On Feb 13, 2010, at 9:49 AM, Nigel Kersten wrote:
>>>
>>>
>>>>
>>>> Note too that the same bug should be affecting Debian testing and
>>>> unstable if the Ruby 1.8.7 p249 package is the problem.
>>>>
>>>> Surely we have some people running Debian testing on the list? Seeing
>>>> any weird timeouts with execs?
>>>>
>>>>
>>>>
>>>> On Fri, Feb 12, 2010 at 11:57 AM, Joel Ebel<jbe...@google.com>  wrote:
>>>>
>>>>>
>>>>> Kai, and anyone else experiencing this problem, please go vote, and
>>>>> optionally chime in with any details you can provide on:
>>>>> https://bugs.launchpad.net/ubuntu/+source/ruby1.8/+bug/520715
>>>>>
>>>>> Thanks,
>>>>> Joel
>>>>>
>>>>> On Feb 11, 3:06 pm, Joel Ebel<jbe...@google.com>  wrote:
>>>>>
>>>>>>
>>>>>> I've reported this bug to Ubuntu.  The solution is to rebuild ruby1.8
>>>>>> without pthreads, unless ruby fixes the bug upstream which causes the
>>>>>> hang.
>>>>>>
>>>>>> https://bugs.launchpad.net/ubuntu/+source/ruby1.8/+bug/520715
>>>>>>
>>>>>> Joel
>>>>>>
>>>>>> On Feb 10, 2:42 pm, Nigel Kersten<nig...@google.com>  wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> On Wed, Feb 10, 2010 at 11:48 AM, Nigel Kersten<nig...@google.com>
>>>>>>>  wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Feb 9, 2010 at 5:06 AM, kai.steverding
>>>>>>>> <kai.steverd...@googlemail.com>  wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> I installed ruby on the above server and tried with a simple exec-
>>>>>>>>> test :
>>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>>
>>>>>>>>> class testmodule {
>>>>>>>>>                exec {"TEST-EXEC" :
>>>>>>>>>                        cwd =>  "/tmp/",
>>>>>>>>>                        command =>"/usr/bin/touch /tmp/7777>/tmp/123
>>>>>>>>> 2>&1",
>>>>>>>>>                        timeout =>  5,
>>>>>>>>>                        logoutput=>  on_failure
>>>>>>>>>                }
>>>>>>>>> }
>>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>>
>>>>>>>>> This simple thing gets the following output from "puppet --debug --
>>>>>>>>> test"
>>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>>
>>>>>>>>> debug: Loaded state in 0.00 seconds
>>>>>>>>> info: Applying configuration version '1265719507'
>>>>>>>>> debug: //testmodule/Exec[TEST-EXEC]: Changing returns
>>>>>>>>> debug: //testmodule/Exec[TEST-EXEC]: 1 change(s)
>>>>>>>>> debug: //testmodule/Exec[TEST-EXEC]: Executing '/usr/bin/touch /tmp/
>>>>>>>>> 7777'
>>>>>>>>> debug: Executing '/usr/bin/touch /tmp/7777'
>>>>>>>>> err: //testmodule/Exec[TEST-EXEC]/returns: change from notrun to 0
>>>>>>>>> failed: Command exceeded timeout at /etc/puppet/modules/testmodule/
>>>>>>>>> manifests/init.pp:6
>>>>>>>>> debug: Finishing transaction 69914685668640 with 1 changes
>>>>>>>>> debug: Storing state
>>>>>>>>> debug: Stored state in 0.01 seconds
>>>>>>>>> debug: Format pson not supported for Puppet::Transaction::Report;
>>>>>>>>> has
>>>>>>>>> not implemented method 'from_pson'
>>>>>>>>> debug: Format s not supported for Puppet::Transaction::Report; has
>>>>>>>>> not
>>>>>>>>> implemented method 'from_s'
>>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>>
>>>>>>>>> What can I do ? Did i make a mistake, or is exec broken ?
>>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>
>>>>>>>> Kai, something is definitely broken in Lucid.
>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>
>>>>>>>> We're seeing all sorts of process exec issues.
>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>>
>>>>>>>> Have you nailed this down at all?
>>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> So Kai, we've been doing some experimenting here today, and have
>>>>>>> reproduced these hangs in all the Debian Ruby1.8 packages back to
>>>>>>> 1.8.7.174-2.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> 1.8.7.174-1 we've been unable to reproduce it on though.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>  From the changelog I'm wondering if the first entry under 174-2 is
>>>>>>> responsible. Note this was later removed after upstream integrated it.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> ruby1.8 (1.8.7.174-2) unstable; urgency=medium
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>    [ akira yamada ]
>>>>>>>    * Added debian/patches/090811_thread_and_select.dpatch: threads may
>>>>>>> hangup
>>>>>>>      when IO.select called from two or more threads.
>>>>>>>    * Added debian/patches/090812_finalizer_at_exit.dpatch: finalizers
>>>>>>> should be
>>>>>>>      run at exit (Closes: #534241)
>>>>>>>    * Added debian/patches/090812_class_clone_segv.dpatch: avoid segv
>>>>>>> when an
>>>>>>>      object cloned.  (Closes: #533329)
>>>>>>>    * Added debian/patches/090812_eval_long_exp_segv.dpatch: fix segv
>>>>>>> when eval
>>>>>>>      a long expression.  (Closes: #510561)
>>>>>>>    * Added debian/patches/090812_openssl_x509_warning.dpatch: suppress
>>>>>>> warning
>>>>>>>      from OpenSSL::X509::ExtensionFactory.  (Closes: #489443)
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>    [ Lucas Nussbaum ]
>>>>>>>    * Removed Fumitoshi UKAI<u...@debian.or.jp>  from Uploaders. Thanks
>>>>>>> a
>>>>>>>      lot for the past help! Closes: #541037
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>    [ Daigo Moriwaki ]
>>>>>>>    * debian/fixshebang.sh: skip non-text files, which works around
>>>>>>> hanging of
>>>>>>>      sed on scanning gif images.
>>>>>>>    * Bumped up Standards-Version to 3.8.2.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> nigel
>>>>>>>
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Puppet Users" group.
>>>>> To post to this group, send email to puppet-us...@googlegroups.com.
>>>>> To unsubscribe from this group, send email to
>>>>> puppet-users+unsubscr...@googlegroups.com.
>>>>> For more options, visit this group at
>>>>> http://groups.google.com/group/puppet-users?hl=en.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> nigel
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google Groups
>>>> "Puppet Users" group.
>>>> To post to this group, send email to puppet-us...@googlegroups.com.
>>>> To unsubscribe from this group, send email to
>>>> puppet-users+unsubscr...@googlegroups.com.
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/puppet-users?hl=en.
>>>>
>>>>
>>>
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Puppet Users" group.
>> To post to this group, send email to puppet-us...@googlegroups.com.
>> To unsubscribe from this group, send email to
>> puppet-users+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/puppet-users?hl=en.
>>
>>
>
>
>
> --
> nigel
>



-- 
nigel

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-us...@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to