Issue #3019 has been updated by Stepan Kadlec.
actually I can see the issue is related to the 'source=>' parameter of File resource. according to http://docs.puppetlabs.com/references/latest/type.html#source following syntax is supported file { "/path/to/my/file": source => [ "/modules/nfs/files/file.$host", "/modules/nfs/files/file.$operatingsystem", "/modules/nfs/files/file" ] } and the first existing source should be picked up. however this seems be the case of random failures (in my case) - in about 30% cases it sends false report complaining about some missing file with the suffix (eg. /modules/nfs/files/file.$host) instead of continuing in checking the next source - in my case there is always at least the file without any suffix (/modules/nfs/files/file) but the processing doesn't get to this file. To point out - this happens randomly in about 30% of runs. if the issue occurs and I restart the puppet agent to rerun again the issue doesn't repeat. it is always related to the file {'something": source = [".../file.$host", ".../file.$operatingsystem", ".../file" ] } Steve. ---------------------------------------- Bug #3019: Failed to generate resources / Could not retieve file metadata http://projects.puppetlabs.com/issues/3019 Author: Markus Roberts Status: Needs more information Priority: Normal Assigned to: Markus Roberts Category: fileserving Target version: 0.25.6 Affected version: 0.24.4 Keywords: Branch: (Reported by Mark Plaksin) I think I'm getting 3 different stack traces on our RHEL 4.7 box. (1) has "connect" at the top and is about a recursive file resource. (2) and (3) both start with "fail". In (2) the file on the file server is symlink (and is inside a recursive file resource, in (3) the file is a normal file. The traces don't always happen on the same files from run to run. ------------------------------------------------------------------------------ 1: /usr/lib/ruby/1.8/net/protocols.rb:49:in `connect' /usr/lib/ruby/1.8/net/protocols.rb:49:in `ssl_connect' /usr/lib/ruby/1.8/net/https.rb:181:in `on_connect' /usr/lib/ruby/1.8/net/http.rb:433:in `do_start' /usr/lib/ruby/1.8/net/http.rb:419:in `start' /usr/lib/ruby/1.8/net/http.rb:824:in `request' /usr/lib/ruby/1.8/net/http.rb:618:in `get' /usr/src/git/puppet/lib/puppet/indirector/rest.rb:73:in `search' /usr/src/git/puppet/lib/puppet/indirector/indirection.rb:240:in `search' /usr/src/git/puppet/lib/puppet/indirector.rb:59:in `search' /usr/src/git/puppet/lib/puppet/type/file.rb:595:in `perform_recursion' /usr/src/git/puppet/lib/puppet/type/file.rb:562:in `recurse_remote' /usr/src/git/puppet/lib/puppet/type/file.rb:561:in `collect' /usr/src/git/puppet/lib/puppet/type/file.rb:561:in `recurse_remote' /usr/src/git/puppet/lib/puppet/type/file.rb:483:in `recurse' /usr/src/git/puppet/lib/puppet/type/file.rb:385:in `eval_generate' /usr/src/git/puppet/lib/puppet/transaction.rb:349:in `send' /usr/src/git/puppet/lib/puppet/transaction.rb:349:in `generate_additional_resources' /usr/src/git/puppet/lib/puppet/transaction.rb:193:in `eval_generate' /usr/src/git/puppet/lib/puppet/transaction.rb:240:in `eval_children_and_apply_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:207:in `eval_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:296:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:295:in `thinmark' /usr/src/git/puppet/lib/puppet/util.rb:405:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:405:in `thinmark' /usr/src/git/puppet/lib/puppet/transaction.rb:297:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:289:in `collect' /usr/src/git/puppet/lib/puppet/transaction.rb:289:in `evaluate' /usr/src/git/puppet/lib/puppet/resource/catalog.rb:142:in `apply' /usr/src/git/puppet/lib/puppet/configurer.rb:153:in `run' /usr/src/git/puppet/lib/puppet/configurer.rb:152:in `benchmark' /usr/src/git/puppet/lib/puppet/util.rb:177:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:177:in `benchmark' /usr/src/git/puppet/lib/puppet/configurer.rb:152:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `lock' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `synchronize' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:51:in `with_client' /usr/src/git/puppet/lib/puppet/agent.rb:58:in `run' /usr/src/git/puppet/lib/puppet/application/puppetd.rb:103:in `onetime' /usr/src/git/puppet/lib/puppet/application/puppetd.rb:94:in `onetime' /usr/src/git/puppet/lib/puppet/application.rb:226:in `send' /usr/src/git/puppet/lib/puppet/application.rb:226:in `run_command' /usr/src/git/puppet/lib/puppet/application.rb:217:in `run' /usr/src/git/puppet/lib/puppet/application.rb:217:in `exit_on_fail' /usr/src/git/puppet/lib/puppet/application.rb:217:in `run' sbin/puppetd:159 err: //allusers::bjones/Allusers::Userfile[bjones/bin]/File[/home/bjones/bin]: Failed to generate additional resources using 'eval_generate': NOTE: There's nothing after that final colon except for a single space. ------------------------------------------------------------------------------ 2: /usr/src/git/puppet/lib/puppet/parameter.rb:401:in `fail' /usr/src/git/puppet/lib/puppet/type/file/source.rb:157:in `init_metadata' /usr/src/git/puppet/lib/puppet/type/file/source.rb:149:in `each' /usr/src/git/puppet/lib/puppet/type/file/source.rb:149:in `init_metadata' /usr/src/git/puppet/lib/puppet/type/file/source.rb:146:in `init_metadata' /usr/src/git/puppet/lib/puppet/util/cacher.rb:106:in `send' /usr/src/git/puppet/lib/puppet/util/cacher.rb:106:in `cached_value' /usr/src/git/puppet/lib/puppet/util/cacher.rb:46:in `metadata' /usr/src/git/puppet/lib/puppet/util/cacher.rb:45:in `metadata' /usr/src/git/puppet/lib/puppet/type/file/source.rb:111:in `copy_source_values' /usr/src/git/puppet/lib/puppet/type/file.rb:630:in `retrieve' /usr/src/git/puppet/lib/puppet/type.rb:726:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:62:in `apply' /usr/src/git/puppet/lib/puppet/transaction.rb:251:in `eval_children_and_apply_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:250:in `thinmark' /usr/src/git/puppet/lib/puppet/util.rb:405:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:405:in `thinmark' /usr/src/git/puppet/lib/puppet/transaction.rb:252:in `eval_children_and_apply_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:207:in `eval_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:296:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:295:in `thinmark' /usr/src/git/puppet/lib/puppet/util.rb:405:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:405:in `thinmark' /usr/src/git/puppet/lib/puppet/transaction.rb:297:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:289:in `collect' /usr/src/git/puppet/lib/puppet/transaction.rb:289:in `evaluate' /usr/src/git/puppet/lib/puppet/resource/catalog.rb:142:in `apply' /usr/src/git/puppet/lib/puppet/configurer.rb:153:in `run' /usr/src/git/puppet/lib/puppet/configurer.rb:152:in `benchmark' /usr/src/git/puppet/lib/puppet/util.rb:177:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:177:in `benchmark' /usr/src/git/puppet/lib/puppet/configurer.rb:152:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `lock' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `synchronize' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:51:in `with_client' /usr/src/git/puppet/lib/puppet/agent.rb:58:in `run' /usr/src/git/puppet/lib/puppet/application/puppetd.rb:103:in `onetime' /usr/src/git/puppet/lib/puppet/application/puppetd.rb:94:in `onetime' /usr/src/git/puppet/lib/puppet/application.rb:226:in `send' /usr/src/git/puppet/lib/puppet/application.rb:226:in `run_command' /usr/src/git/puppet/lib/puppet/application.rb:217:in `run' /usr/src/git/puppet/lib/puppet/application.rb:217:in `exit_on_fail' /usr/src/git/puppet/lib/puppet/application.rb:217:in `run' sbin/puppetd:159 err: //allusers::tss/Allusers::Userfile[tss/.screenrc]/File[/home/tss/.screenrc]: Failed to retrieve current state of resource: Could not retrieve file metadata for puppet://billy.bor.usg.edu/allusers/tss/.screenrc: at /usr/src/git/bor/puppet/modules/allusers/manifests/init.pp:23 ------------------------------------------------------------------------------ 3: /usr/src/git/puppet/lib/puppet/parameter.rb:401:in `fail' /usr/src/git/puppet/lib/puppet/type/file/source.rb:157:in `init_metadata' /usr/src/git/puppet/lib/puppet/type/file/source.rb:149:in `each' /usr/src/git/puppet/lib/puppet/type/file/source.rb:149:in `init_metadata' /usr/src/git/puppet/lib/puppet/type/file/source.rb:146:in `init_metadata' /usr/src/git/puppet/lib/puppet/util/cacher.rb:106:in `send' /usr/src/git/puppet/lib/puppet/util/cacher.rb:106:in `cached_value' /usr/src/git/puppet/lib/puppet/util/cacher.rb:46:in `metadata' /usr/src/git/puppet/lib/puppet/util/cacher.rb:45:in `metadata' /usr/src/git/puppet/lib/puppet/type/file/source.rb:111:in `copy_source_values' /usr/src/git/puppet/lib/puppet/type/file.rb:630:in `retrieve' /usr/src/git/puppet/lib/puppet/type.rb:726:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:62:in `apply' /usr/src/git/puppet/lib/puppet/transaction.rb:251:in `eval_children_and_apply_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:250:in `thinmark' /usr/src/git/puppet/lib/puppet/util.rb:405:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:405:in `thinmark' /usr/src/git/puppet/lib/puppet/transaction.rb:252:in `eval_children_and_apply_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:207:in `eval_resource' /usr/src/git/puppet/lib/puppet/transaction.rb:296:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:295:in `thinmark' /usr/src/git/puppet/lib/puppet/util.rb:405:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:405:in `thinmark' /usr/src/git/puppet/lib/puppet/transaction.rb:297:in `evaluate' /usr/src/git/puppet/lib/puppet/transaction.rb:289:in `collect' /usr/src/git/puppet/lib/puppet/transaction.rb:289:in `evaluate' /usr/src/git/puppet/lib/puppet/resource/catalog.rb:142:in `apply' /usr/src/git/puppet/lib/puppet/configurer.rb:153:in `run' /usr/src/git/puppet/lib/puppet/configurer.rb:152:in `benchmark' /usr/src/git/puppet/lib/puppet/util.rb:177:in `measure' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime' /usr/src/git/puppet/lib/puppet/util.rb:177:in `benchmark' /usr/src/git/puppet/lib/puppet/configurer.rb:152:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `lock' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `synchronize' /usr/src/git/puppet/lib/puppet/agent.rb:53:in `run' /usr/src/git/puppet/lib/puppet/agent.rb:51:in `with_client' /usr/src/git/puppet/lib/puppet/agent.rb:58:in `run' /usr/src/git/puppet/lib/puppet/application/puppetd.rb:103:in `onetime' /usr/src/git/puppet/lib/puppet/application/puppetd.rb:94:in `onetime' /usr/src/git/puppet/lib/puppet/application.rb:226:in `send' /usr/src/git/puppet/lib/puppet/application.rb:226:in `run_command' /usr/src/git/puppet/lib/puppet/application.rb:217:in `run' /usr/src/git/puppet/lib/puppet/application.rb:217:in `exit_on_fail' /usr/src/git/puppet/lib/puppet/application.rb:217:in `run' sbin/puppetd:159 err: //networker/File[/usr/local/bin/NSRpre_process]: Failed to retrieve current state of resource: Could not retrieve file metadata for puppet://billy.bor.usg.edu/networker/NSRpre_process: at /usr/src/git/bor/puppet/modules/networker/manifests/init.pp:26 -- 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://projects.puppetlabs.com/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.
