Project

General

Profile

Actions

Bug #1059

open

Support versions of RabbitMQ newer than 2.0.0

Added by Pavel Shved over 13 years ago. Updated over 13 years ago.

Status:
Open
Priority:
Normal
Assignee:
Category:
Cluster
Start date:
04/10/2011
Due date:
% Done:

0%

Estimated time:
Detected in build:
570063f (unreleased)
Platform:
Published in build:

Description

Today I've stumbled into an issue described in the following web page: http://comments.gmane.org/gmane.comp.networking.rabbitmq.general/8189. Rabbitmq. It is said to be fixed in the 2.4.0 version, which was released... two weeks ago.

We use RabbitMQ in a very wrong way. We use it excessively intensively, and pollute with a lot of trash; for instance, we create a lot of durable queues just to never use them after a few seconds.

The bug in AMQP causes its Ruby frontend to terminate with the following error:

  1862| 2011-04-08 16:25:42 Node::ldv.168: ERROR: INTERNAL_ERROR in inspect
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR: /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/mq.rb:870:in `reset': undefined method `reset' for nil:NilClass (NoMethodError)
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR: [Fri, 08 Apr 2011 16:24:30 +0400] DEBUG: [setup] setting log level to INFO
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/mq.rb:870:in `each'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR: [Fri, 08 Apr 2011 16:24:30 +0400] WARN: init.rb /mnt/cluster/toolset/ldv-core/../watcher/../cluster/tester.rb does not exist or is not reachable
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/mq.rb:870:in `reset'
  1862| 2011-04-08 16:25:43 Node::ldv.168:  INFO: watcher: Watcher returns 1, waitpid: 256
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/amqp/client.rb:182:in `reconnect'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR: watcher: WARNING: Fatal error.  Stopping services before reporting...
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/amqp/client.rb:182:in `each'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/amqp/client.rb:182:in `reconnect'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/amqp/client.rb:210:in `disconnected'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/amqp/client.rb:99:in `call'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/amqp-0.6.7/lib/amqp/client.rb:99:in `unbind'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `call'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `run_deferred_callbacks'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `each'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `run_deferred_callbacks'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/cluster/ruby/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/ldv-core/../watcher/../cluster/cluster-watcher.rb:63:in `queue'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/ldv-core/../watcher/ldv-watcher:78:in `send'
  1862| 2011-04-08 16:25:43 Node::ldv.168: ERROR:   from /mnt/cluster/toolset/ldv-core/../watcher/ldv-watcher:78

We should fix the fronend so that it either

  1. works with the latest RabbitMQ version; or
  2. doesn't create durable queues instead of temporal.

The best would be to fix them both.

Actions

Also available in: Atom PDF