The Puppet Labs Issue Tracker has Moved: https://tickets.puppetlabs.com

This issue tracker is now in read-only archive mode and automatic ticket export has been disabled. Redmine users will need to create a new JIRA account to file tickets using https://tickets.puppetlabs.com. See the following page for information on filing tickets with JIRA:

Bug #5095

Handle STOMP errors better

Added by R.I. Pienaar over 4 years ago. Updated over 1 year ago.

Status:Needs DecisionStart date:10/25/2010
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:Plugins
Target version:-
Keywords: Affected mCollective version:0.4.10
Branch:

We've Moved!

Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com

This ticket is now tracked at: https://tickets.puppetlabs.com/browse/MCO-35


Description

In cases where the Stomp connection fails for whatever reason we get exceptions like these:

W, [2010-04-21T11:11:48.994749 #3225]  WARN -- : 3225 runner.rb:75:in `run': Failed to 
handle message: undefined method `body' for nil:NilClass - NoMethodError

W, [2010-04-21T11:11:48.994878 #3225]  WARN -- : 3225 runner.rb:76:in `run': 
/usr/share/mcollective/plugins/mcollective/connector/stomp.rb:64:in `receive'
        /usr/lib/ruby/1.8/mcollective/runner.rb:151:in `receive'
        /usr/lib/ruby/1.8/mcollective/runner.rb:52:in `run'
        /usr/lib/ruby/1.8/mcollective/runner.rb:50:in `loop'
        /usr/lib/ruby/1.8/mcollective/runner.rb:50:in `run'
        /usr/sbin/mcollectived:49
        /usr/lib/ruby/1.8/mcollective/runner.rb:38:in `daemonize'
        /usr/lib/ruby/1.8/mcollective/runner.rb:30:in `fork'
        /usr/lib/ruby/1.8/mcollective/runner.rb:30:in `daemonize'
        /usr/sbin/mcollectived:40

Ideal behavior would be to get a usable error message saying you gave the wrong password.

This is problematic in that the Stomp gem prefers to do all its own error handling, reconnection handling etc and in many cases just dont raise errors.

I can catch this specific error but later on then errors just get logged to STDERR by the gem and no exceptions raised for publish errors. Handling the error above and exiting or at least logging a useful hint about the problem would be better

History

#1 Updated by Pieter Loubser over 1 year ago

  • Status changed from Unreviewed to Needs Decision

Also available in: Atom PDF