Issue #17887 has been updated by Dominic Cleal.
Dominic Cleal wrote: > Josh Cooper wrote: > > Dominic, I'm marking the PR as code as insufficient, because we still want > > to log the exception that results from the failure to sync the property. > > Generally, we don't want to be catching things that aren't StandardErrors > here, they should still be propagating up. It's still not clear to me what behaviour you're looking for (network timeout stuff is out of scope IMO, should be another ticket). I'm wondering if you mean it should catch all exceptions (not just derivatives of StandardError), log in all cases, but then raise non-StandardErrors back again? We definitely don't want to squash non-StandardErrors, as they could be a variety of things that genuinely should be propagated. I'm also unsure about any side-effects that would come from catching some errors (e.g. OOMs). ---------------------------------------- Bug #17887: Failure during property sync results in "Puppet::Util::Log requires a message" https://projects.puppetlabs.com/issues/17887#change-83004 Author: Dominic Cleal Status: Code Insufficient Priority: Normal Assignee: Dominic Cleal Category: transactions Target version: 3.x Affected Puppet version: development Keywords: resource harness, transaction Branch: https://github.com/puppetlabs/puppet/pull/1358 During provider development and testing with rspec+mocha and using a test catalog, an expectation failure can cause the following log message: Could not evaluate: Puppet::Util::Log requires a message This occurs if the property sync calls a method that has a mocha expectation set, but has reached the max call count or similar. When testing a catalog from a test, the `Puppet::Transaction::ResourceHarness` calls `apply_parameter` for a given parameter, which then calls `property.sync`. If the mocha expectation fails inside this sync, the `rescue` block is never called (it isn't an exception) but the `ensure` block is still run. This calls `send_log` on the event, but the message is uninitialised at that point so the logging fails with the above error. -- 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 unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-bugs?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
