I am consistently getting the following error from puppetd when an exec resource is triggered by a refresh event: Apr 23 10:36:11 mailhub puppetd[37884]: Reopening log files Apr 23 10:36:11 mailhub puppetd[37884]: Starting Puppet client version 0.22.3 Apr 23 10:36:11 mailhub puppetd[37884]: Starting configuration run Apr 23 10:36:12 mailhub puppetd[37884]: (//mailhub/File[global-sieve-scripts]/checksum) checksum changed ''{time}Mon Apr 23 09:59:23 -0700 2007'' to ''{time}Mon Apr 23 10:13:41 -0700 2007'' Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install-global-sieve-scripts]) Triggering ''refresh'' from 1 dependencies Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install-global-sieve-scripts]) Failed to call refresh on Exec[install-global-sieve-scripts]: wrong number of arguments (4 for 2) Apr 23 10:36:16 mailhub puppetd[37884]: Finished configuration run in 4.41 seconds Here are the entries in site.pp: node mailhub { file { "global-sieve-scripts": path => "/usr/local/etc/sieve", recurse => true, source => "puppet://svn.csub.edu/dist/sieve" } exec { "install-global-sieve-scripts": command => "/usr/bin/make install", cwd => "/usr/local/etc/sieve", subscribe => File["global-sieve-scripts"], refreshonly => true } } platform info: FreeBSD mailhub.csub.edu 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 23:04:49 PST 2007 rjackson3@thor.csub.edu:/usr/obj/usr/src/sys/THOR i386 ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-freebsd6] puppetd -V: 0.22.3 (from ports) I''m at a complete loss as to what arguments it is talking about. I can find no reference anywhere on the wiki (or google) about this, and, as far as I can tell, my manifest should just work. Thanks ahead of time, -- Russell A. Jackson <raj@csub.edu> Network Analyst California State University, Bakersfield Joe Cool always spends the first two weeks at college sailing his frisbee. -- Snoopy _______________________________________________ Puppet-users mailing list Puppet-users@madstop.com https://mail.madstop.com/mailman/listinfo/puppet-users
On Apr 23, 2007, at 12:48 PM, Russell Jackson wrote:> I am consistently getting the following error from puppetd when an > exec resource is > triggered by a refresh event: > > Apr 23 10:36:11 mailhub puppetd[37884]: Reopening log files > Apr 23 10:36:11 mailhub puppetd[37884]: Starting Puppet client > version 0.22.3 > Apr 23 10:36:11 mailhub puppetd[37884]: Starting configuration run > Apr 23 10:36:12 mailhub puppetd[37884]: (//mailhub/File[global- > sieve-scripts]/checksum) > checksum changed ''{time}Mon Apr 23 09:59:23 -0700 2007'' to ''{time} > Mon Apr 23 10:13:41 > -0700 2007'' > Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install- > global-sieve-scripts]) > Triggering ''refresh'' from 1 dependencies > Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install- > global-sieve-scripts]) > Failed to call refresh on Exec[install-global-sieve-scripts]: wrong > number of arguments (4 > for 2) > Apr 23 10:36:16 mailhub puppetd[37884]: Finished configuration run > in 4.41 secondsThat looks like an internal error. ...> I''m at a complete loss as to what arguments it is talking about. I > can find no reference > anywhere on the wiki (or google) about this, and, as far as I can > tell, my manifest should > just work.Can you run it with --trace? -- I conclude that there are two ways of constructing a software design: One way is to make it so simple that there are ''obviously'' no deficiencies and the other way is to make it so complicated that there are no ''obvious'' deficiencies. -- C.A.R. Hoare, Turing Lecture "The Emperor''s Old Clothes" CACM February 1981, pp. 75-83. --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com
Luke Kanies wrote:> On Apr 23, 2007, at 12:48 PM, Russell Jackson wrote: > >> I am consistently getting the following error from puppetd when an >> exec resource is >> triggered by a refresh event: >> >> Apr 23 10:36:11 mailhub puppetd[37884]: Reopening log files >> Apr 23 10:36:11 mailhub puppetd[37884]: Starting Puppet client >> version 0.22.3 >> Apr 23 10:36:11 mailhub puppetd[37884]: Starting configuration run >> Apr 23 10:36:12 mailhub puppetd[37884]: (//mailhub/File[global- >> sieve-scripts]/checksum) >> checksum changed ''{time}Mon Apr 23 09:59:23 -0700 2007'' to ''{time} >> Mon Apr 23 10:13:41 >> -0700 2007'' >> Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install- >> global-sieve-scripts]) >> Triggering ''refresh'' from 1 dependencies >> Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install- >> global-sieve-scripts]) >> Failed to call refresh on Exec[install-global-sieve-scripts]: wrong >> number of arguments (4 >> for 2) >> Apr 23 10:36:16 mailhub puppetd[37884]: Finished configuration run >> in 4.41 seconds > > That looks like an internal error. > ... >> I''m at a complete loss as to what arguments it is talking about. I >> can find no reference >> anywhere on the wiki (or google) about this, and, as far as I can >> tell, my manifest should >> just work. > > Can you run it with --trace? >$ puppetd --confdir /usr/local/etc/puppet --trace -v notice: Starting Puppet client version 0.22.3 info: Config is up to date notice: Starting configuration run notice: //mailhub/File[/usr/local/etc/sieve/foobar]/source: Could not retrieve contents for puppet://svn.csub.edu/dist/sieve/foobar notice: //mailhub/File[/usr/local/etc/sieve/foobar]/ensure: created info: //mailhub/File[global-sieve-scripts]: Scheduling refresh of Exec[install-global-sieve-scripts] notice: //mailhub/Exec[install-global-sieve-scripts]: Triggering ''refresh'' from 1 dependencies err: //mailhub/Exec[install-global-sieve-scripts]: Failed to call refresh on Exec[install-global-sieve-scripts]: wrong number of arguments (4 for 2) /usr/local/lib/ruby/site_ruby/1.8/puppet/util/suidmanager.rb:67:in `execute'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util/suidmanager.rb:67:in `run_and_capture'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:563:in `run'' /usr/local/lib/ruby/1.8/timeout.rb:56:in `timeout'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:562:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util/execution.rb:14:in `withenv'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:561:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:535:in `chdir'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:535:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:107:in `sync'' /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:502:in `refresh'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:713:in `send'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:713:in `trigger'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:682:in `each'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:682:in `trigger'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:274:in `eval_resource'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:314:in `evaluate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:434:in `thinmark'' /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure'' /usr/local/lib/ruby/1.8/benchmark.rb:307:in `realtime'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:433:in `thinmark'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:313:in `evaluate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:307:in `collect'' /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:307:in `evaluate'' /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:63:in `apply'' /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:306:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:212:in `benchmark'' /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure'' /usr/local/lib/ruby/1.8/benchmark.rb:307:in `realtime'' /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:211:in `benchmark'' /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:305:in `run'' /usr/local/lib/ruby/1.8/sync.rb:229:in `synchronize'' /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:291:in `run'' /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client.rb:119:in `runnow'' /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client.rb:169:in `start'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:296:in `start'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:164:in `newthread'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:163:in `initialize'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:163:in `new'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:163:in `newthread'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:294:in `start'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:293:in `each'' /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:293:in `start'' /usr/local/bin/puppetd:444 notice: Finished configuration run in 4.62 seconds -- Russell A. Jackson <raj@csub.edu> Network Analyst California State University, Bakersfield Joe Cool always spends the first two weeks at college sailing his frisbee. -- Snoopy _______________________________________________ Puppet-users mailing list Puppet-users@madstop.com https://mail.madstop.com/mailman/listinfo/puppet-users
Russell Jackson wrote:> Luke Kanies wrote: >> On Apr 23, 2007, at 12:48 PM, Russell Jackson wrote: >> >>> I am consistently getting the following error from puppetd when an >>> exec resource is >>> triggered by a refresh event: >>> >>> Apr 23 10:36:11 mailhub puppetd[37884]: Reopening log files >>> Apr 23 10:36:11 mailhub puppetd[37884]: Starting Puppet client >>> version 0.22.3 >>> Apr 23 10:36:11 mailhub puppetd[37884]: Starting configuration run >>> Apr 23 10:36:12 mailhub puppetd[37884]: (//mailhub/File[global- >>> sieve-scripts]/checksum) >>> checksum changed ''{time}Mon Apr 23 09:59:23 -0700 2007'' to ''{time} >>> Mon Apr 23 10:13:41 >>> -0700 2007'' >>> Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install- >>> global-sieve-scripts]) >>> Triggering ''refresh'' from 1 dependencies >>> Apr 23 10:36:16 mailhub puppetd[37884]: (//mailhub/Exec[install- >>> global-sieve-scripts]) >>> Failed to call refresh on Exec[install-global-sieve-scripts]: wrong >>> number of arguments (4 >>> for 2) >>> Apr 23 10:36:16 mailhub puppetd[37884]: Finished configuration run >>> in 4.41 seconds >> That looks like an internal error. >> ... >>> I''m at a complete loss as to what arguments it is talking about. I >>> can find no reference >>> anywhere on the wiki (or google) about this, and, as far as I can >>> tell, my manifest should >>> just work. >> Can you run it with --trace? >> > > $ puppetd --confdir /usr/local/etc/puppet --trace -v > notice: Starting Puppet client version 0.22.3 > info: Config is up to date > notice: Starting configuration run > notice: //mailhub/File[/usr/local/etc/sieve/foobar]/source: Could not retrieve contents > for puppet://svn.csub.edu/dist/sieve/foobar > notice: //mailhub/File[/usr/local/etc/sieve/foobar]/ensure: created > info: //mailhub/File[global-sieve-scripts]: Scheduling refresh of > Exec[install-global-sieve-scripts] > notice: //mailhub/Exec[install-global-sieve-scripts]: Triggering ''refresh'' from 1 dependencies > err: //mailhub/Exec[install-global-sieve-scripts]: Failed to call refresh on > Exec[install-global-sieve-scripts]: wrong number of arguments (4 for 2) > /usr/local/lib/ruby/site_ruby/1.8/puppet/util/suidmanager.rb:67:in `execute'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/util/suidmanager.rb:67:in `run_and_capture'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:563:in `run'' > /usr/local/lib/ruby/1.8/timeout.rb:56:in `timeout'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:562:in `run'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/util/execution.rb:14:in `withenv'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:561:in `run'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:535:in `chdir'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:535:in `run'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:107:in `sync'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/type/exec.rb:502:in `refresh'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:713:in `send'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:713:in `trigger'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:682:in `each'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:682:in `trigger'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:274:in `eval_resource'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:314:in `evaluate'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:434:in `thinmark'' > /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure'' > /usr/local/lib/ruby/1.8/benchmark.rb:307:in `realtime'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:433:in `thinmark'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:313:in `evaluate'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:307:in `collect'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/transaction.rb:307:in `evaluate'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:63:in `apply'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:306:in `run'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:212:in `benchmark'' > /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure'' > /usr/local/lib/ruby/1.8/benchmark.rb:307:in `realtime'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb:211:in `benchmark'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:305:in `run'' > /usr/local/lib/ruby/1.8/sync.rb:229:in `synchronize'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client/master.rb:291:in `run'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client.rb:119:in `runnow'' > /usr/local/lib/ruby/site_ruby/1.8/puppet/network/client.rb:169:in `start'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:296:in `start'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:164:in `newthread'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:163:in `initialize'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:163:in `new'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:163:in `newthread'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:294:in `start'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:293:in `each'' > /usr/local/lib/ruby/site_ruby/1.8/puppet.rb:293:in `start'' > /usr/local/bin/puppetd:444 > notice: Finished configuration run in 4.62 seconds >Okay. It looks like the FreeBSD port has a patch that touches the util stuff to fix a ''hang on exec'' problem. I''ll try removing it and seeing if that corrects the problem. -- Russell A. Jackson <raj@csub.edu> Network Analyst California State University, Bakersfield Joe Cool always spends the first two weeks at college sailing his frisbee. -- Snoopy _______________________________________________ Puppet-users mailing list Puppet-users@madstop.com https://mail.madstop.com/mailman/listinfo/puppet-users
On Apr 23, 2007, at 1:30 PM, Russell Jackson wrote:> Okay. It looks like the FreeBSD port has a patch that touches the > util stuff to fix a > ''hang on exec'' problem. I''ll try removing it and seeing if that > corrects the problem.Yeah, looks like you''re having a problem with the work that Jeff McCune did to fix this problem; maybe the patch only included a subset of Jeff''s work. -- Silence is a text easy to misread. -- A. A. Attanasio, ''The Eagle and the Sword'' --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com
Luke Kanies wrote:> On Apr 23, 2007, at 1:30 PM, Russell Jackson wrote: > >> Okay. It looks like the FreeBSD port has a patch that touches the >> util stuff to fix a >> ''hang on exec'' problem. I''ll try removing it and seeing if that >> corrects the problem. > > Yeah, looks like you''re having a problem with the work that Jeff > McCune did to fix this problem; maybe the patch only included a > subset of Jeff''s work. >Removing the patch fixed *my* problem. Now I just have to deal with the problem that the patch was supposed to fix ;-). -- Russell A. Jackson <raj@csub.edu> Network Analyst California State University, Bakersfield Reality -- what a concept! -- Robin Williams _______________________________________________ Puppet-users mailing list Puppet-users@madstop.com https://mail.madstop.com/mailman/listinfo/puppet-users
On Apr 23, 2007, at 1:49 PM, Russell Jackson wrote:> > Removing the patch fixed *my* problem. Now I just have to deal with > the problem that the > patch was supposed to fix ;-).Okay, great. When I get a chance (unless someone else beats me to it, hint hint) I''ll try to reproduce the problem elsewhere; hopefully it was just a bad patch and the codebase itself is correct. -- I''m worried about Bart. Today, he''s sucking people''s blood, tommorrow he might be smoking. -Marge Simpson --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com
Russell Jackson wrote:> Luke Kanies wrote: >> On Apr 23, 2007, at 1:30 PM, Russell Jackson wrote: >> >>> Okay. It looks like the FreeBSD port has a patch that touches the >>> util stuff to fix a >>> ''hang on exec'' problem. I''ll try removing it and seeing if that >>> corrects the problem. >> Yeah, looks like you''re having a problem with the work that Jeff >> McCune did to fix this problem; maybe the patch only included a >> subset of Jeff''s work. >> > > Removing the patch fixed *my* problem. Now I just have to deal with the problem that the > patch was supposed to fix ;-).What''s the patch look like? My changes to the way execute behaves is also to address a "hang on exec" problem, though I did so by not reading STDOUT from the forked child in most circumstances. It may have been the same fix, or the freebsd patch might be a more general solution. -- Jeff McCune The Ohio State University Department of Mathematics Systems Manager _______________________________________________ Puppet-users mailing list Puppet-users@madstop.com https://mail.madstop.com/mailman/listinfo/puppet-users
On Apr 26, 2007, at 8:40 AM, Jeff McCune wrote:> > What''s the patch look like? > > My changes to the way execute behaves is also to address a "hang on > exec" problem, though I did so by not reading STDOUT from the forked > child in most circumstances. > > It may have been the same fix, or the freebsd patch might be a more > general solution.I suspect the problem came from the change to execute() expecting its arguments in a hash, since he was getting a failure that the wrong number of arguments was being passed. Most likely, the execute() method was patched but not all the places that call it. -- Levy''s Law: The truth is always more interesting than your preconception of what it might be. --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com