Package: puppet Version: 0.18.4-1 Severity: important
Hi, I'm finding that running puppetd with a very simple (but possibly wrong) setup leads to random Ruby back traces and SegVs. Here is the setup: The server ("home.phy.bnl.gov") is run like: puppetmasterd --debug The client ("lycastus.phy.bnl.gov") is run like: puppetd --server servername --test The site.pp file contains: # site.pp define remotefile(owner = root, server = "home.phy.bnl.gov", group = root, mode, source, backup = false, recurse = false) { file { $name: mode => $mode, owner => $owner, group => $group, backup => $backup, source => "puppet://$server/$source" } } class banner { remotefile { "/etc/issue.net": mode => 444, source => "files/issue.net" } } node lycastus { include banner } ### end site.pp The fileserver.conf file contains: ### fileserver.conf [files] path /etc/puppet/dist/files allow *.phy.bnl.gov [private] path /etc/puppet/dist/nodes/%h allow * ### end fileserver.conf Running the server shows no errors other than some (harmless?) missing files. When the client attempts to connect the server gives: info: Allowing lycastus.phy.bnl.gov(130.199.36.67) trusted access to puppetmaster.getconfig debug: Our client is remote notice: Compiled configuration for lycastus.phy.bnl.gov in 0.01 seconds info: Allowing lycastus.phy.bnl.gov(130.199.36.67) trusted access to fileserver.describe debug: mount[files]: Describing /files/issue.net for lycastus.phy.bnl.gov Regardless of whether the client crashes or not. Finally, here are some examples of failed and successful client runs: lycastus:~# puppetd --server home.phy.bnl.gov --test info: Caching configuration at /etc/puppet/localconfig.yaml notice: Starting configuration run /usr/lib/ruby/1.8/xmlrpc/client.rb:412:in `call': negative allocation size (or too big) (NoMemoryError) from /usr/lib/ruby/1.8/puppet/networkclient.rb:64:in `describe' from /usr/lib/ruby/1.8/puppet/client/proxy.rb:15:in `describe' from /usr/lib/ruby/1.8/puppet/type/pfile/source.rb:41:in `describe' from /usr/lib/ruby/1.8/puppet/type/pfile/source.rb:93:in `retrieve' from /usr/lib/ruby/1.8/puppet/type/pfile/source.rb:92:in `retrieve' from /usr/lib/ruby/1.8/puppet/type/pfile.rb:731:in `retrieve' from /usr/lib/ruby/1.8/puppet/type.rb:1847:in `evaluate' from /usr/lib/ruby/1.8/puppet/transaction.rb:46:in `apply' ... 13 levels... from /usr/lib/ruby/1.8/puppet/client/master.rb:435:in `run' from /usr/lib/ruby/1.8/puppet/client/master.rb:349:in `lock' from /usr/lib/ruby/1.8/puppet/client/master.rb:425:in `run' from /usr/sbin/puppetd:421 lycastus:~# puppetd --server home.phy.bnl.gov --test info: Caching configuration at /etc/puppet/localconfig.yaml notice: Starting configuration run /usr/lib/ruby/1.8/xmlrpc/client.rb:412: [BUG] Segmentation fault ruby 1.8.4 (2005-12-24) [i486-linux] Aborted lycastus:~# puppetd --server home.phy.bnl.gov --test notice: Stale lockfile /var/lib/puppet/state/puppetdlock left by process 17124; removing info: Caching configuration at /etc/puppet/localconfig.yaml notice: Starting configuration run notice: Finished configuration run in 0.17 seconds If I call the client with --debug I get: lycastus:~# puppetd --debug --server home.phy.bnl.gov --test ... debug: puppetconfig/puppetd/file=/etc/puppet/localconfig: File does not exist debug: puppetconfig/puppetd/file=/etc/puppet/localconfig: Changing owner,mode debug: puppetconfig/puppetd/file=/etc/puppet/localconfig: 2 change(s) debug: puppetconfig/puppetd/file=/etc/puppet/localconfig/owner: File does not exist; cannot set owner debug: puppetconfig/puppetd/file=/etc/puppet/localconfig/mode: File does not exist; cannot set mode debug: Finishing transaction -743089528 with 4 changes info: Caching configuration at /etc/puppet/localconfig.yaml debug: Creating default schedules /usr/lib/ruby/1.8/puppet/parameter.rb:213: [BUG] Segmentation fault ruby 1.8.4 (2005-12-24) [i486-linux] Aborted lycastus:~# puppetd --debug --server home.phy.bnl.gov --test ... debug: puppetconfig/puppetd/file=/etc/puppet/localconfig: File does not exist debug: puppetconfig/puppetd/file=/etc/puppet/localconfig: Changing owner,mode debug: puppetconfig/puppetd/file=/etc/puppet/localconfig: 2 change(s) debug: puppetconfig/puppetd/file=/etc/puppet/localconfig/owner: File does not exist; cannot set owner debug: puppetconfig/puppetd/file=/etc/puppet/localconfig/mode: File does not exist; cannot set mode debug: Finishing transaction -742838468 with 4 changes info: Caching configuration at /etc/puppet/localconfig.yaml debug: Creating default schedules /usr/lib/ruby/1.8/puppet/parameter.rb:335: [BUG] Segmentation fault ruby 1.8.4 (2005-12-24) [i486-linux] Aborted Note the locations are different. Please let me know if I can provide additional info. -Brett. -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.17-1-k7 Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Versions of packages puppet depends on: ii adduser 3.85 Add and remove users and groups ii facter 1.3.3-1 a library for retrieving facts fro ii libopenssl-ruby 1.0.0+ruby1.8.2-1 OpenSSL interface for Ruby ii libxmlrpc-ruby 1.8.2-1 XML-RPC support for Ruby ii lsb-base 3.1-4 Linux Standard Base 3.1 init scrip ii ruby 1.8.2-1 An interpreter of object-oriented Versions of packages puppet recommends: ii rdoc 1.8.2-1 Generate documentation from ruby s -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]