Issue #2254 has been updated by Markus Roberts.
Fixed as #2637 ---------------------------------------- Bug #2254: puppetmaster hangs after client connects from behind a NAT http://projects.reductivelabs.com/issues/2254 Author: Alex Urbanowicz Status: Rejected Priority: Normal Assigned to: Category: network Target version: Affected version: 0.24.8 Keywords: select puppetmaster hang network Branch: This issue affects both 0.24.8 and 0.22.4 (tested with both clients and servers): The network setup is such that some puppets connect from behind a static NAT. They connect to address and port that passes connections to puppetmaster:8140. In this setup, after a NAT-ed puppet connects, puppetmaster hangs and stops servicing all incoming connections. After it is stopped, it barfs the following: <pre> May 13 12:40:48 stonka puppetmasterd[28832]: Caught TERM; shutting down May 13 12:40:48 stonka puppetmasterd[28832]: Signal caught here: May 13 12:40:48 stonka puppetmasterd[28832]: /usr/lib/ruby/site_ruby/1.8/puppet/external/event-loop/event-loop.rb:127:in `call' May 13 12:40:48 stonka puppetmasterd[28832]: /usr/lib/ruby/site_ruby/1.8/puppet/external/event-loop/event-loop.rb:127:in `select' May 13 12:40:48 stonka puppetmasterd[28832]: /usr/lib/ruby/site_ruby/1.8/puppet/external/event-loop/event-loop.rb:127:in `select' May 13 12:40:48 stonka puppetmasterd[28832]: /usr/lib/ruby/site_ruby/1.8/puppet/external/event-loop/event-loop.rb:116:in `iterate' May 13 12:40:48 stonka puppetmasterd[28832]: /usr/lib/ruby/site_ruby/1.8/puppet/external/event-loop/event-loop.rb:107:in `run' May 13 12:40:48 stonka puppetmasterd[28832]: /usr/lib/ruby/site_ruby/1.8/puppet.rb:320:in `start' May 13 12:40:48 stonka puppetmasterd[28832]: /usr/sbin/puppetmasterd:285 May 13 12:40:48 stonka puppetmasterd[28832]: Shutting down </pre> Here is puppetmaster's strace of a hang: <pre> 8832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 499969} <unfinished ...> 28832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 499968} <unfinished ...> 28832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 499966} <unfinished ...> 28832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 499964} <unfinished ...> 28832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 499969} <unfinished ...> 28832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 195} <unfinished ...> 28832 <... select resumed> ) = 0 (Timeout) 28832 select(13, [8 10 11], [], [], {0, 0}) = 0 (Timeout) 28832 select(13, [8 11], [], [], {0, 0}) = 0 (Timeout) 28832 stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2679, ...}) = 0 28832 write(10, "\25\3\1\0 Li,T\2\26\300\313~\22\341\217\325\300\3061v-\340\245\262) \265#M\275"..., 37) = 37 28832 close(10) = 0 28832 munmap(0xb7f70000, 4096) = 0 28832 close(10) = -1 EBADF (Bad file descriptor) 28832 munmap(0xb7f71000, 4096) = 0 28832 select(13, [8 11], [], [], NULL <unfinished ...> </pre> [here it hangs untill killed] meanwhile all client puppetds hang on: <pre> debug: Loaded state in 0.00 seconds debug: Retrieved facts in 1.54 seconds debug: Retrieving catalog debug: Calling puppetmaster.getconfig </pre> until it timeouts complete strace log is attached As for network connection checks, they were done: SSL cetificates negotiation between puppets and puppetmaster works all the way, also the connection was checked using netcat, so it is not na network setup problem. -- 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.
