Skip Menu |

This queue is for tickets about the Message-Passing-AMQP CPAN distribution.

Report information
The Basics
Id: 87705
Status: resolved
Priority: 0/
Queue: Message-Passing-AMQP

People
Owner: Nobody in particular
Requestors: abraxxa [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.003
Fixed in: 0.004



Subject: dies on closed connection instead of dropping or buffering messages
When e.g. the RabbitMQ server is restarted, e.g. because of an update, the Message::Passing daemon dies with the following errors: CLOSED at /home/cop/perl5/perlbrew/perls/LOGGING/lib/site_perl/5.16.3/Message/Passing/AMQP/ConnectionManager.pm line 59. {"class":"Message::Passing::Exception::ConnectionDisconnected"} CLOSED at /home/cop/perl5/perlbrew/perls/LOGGING/lib/site_perl/5.16.3/Message/Passing/AMQP/ConnectionManager.pm line 59. {"class":"Message::Passing::Exception::ConnectionDisconnected"} Can't call method "publish" on an undefined value at /home/cop/perl5/perlbrew/perls/LOGGING/lib/site_perl/5.16.3/Message/Passing/Output/AMQP.pm line 28. What I'd expect is the same behaviour as on startup until the connection is established: No exchange yet, dropping message at /home/cop/perl5/perlbrew/perls/LOGGING/lib/site_perl/5.16.3/Message/Passing/Output/AMQP.pm line 24.
This seems to be fixed in AnyEvent::RabbitMQ version 1.15. Now a RabbitMQ restart results in Message::Passing STDERR output: CLOSED at /home/radiator/perl5/perlbrew/perls/RADIATOR-DOT1X/lib/site_perl/5.18.2/Message/Passing/AMQP/ConnectionManager.pm line 59. {"class":"Message::Passing::Exception::ConnectionDisconnected"} (in cleanup) close already in progress at /home/radiator/perl5/perlbrew/perls/RADIATOR-DOT1X/lib/site_perl/5.18.2/AnyEvent/RabbitMQ.pm line 612. CONNECT ERROR Error connecting to AMQP Server localhost:5672: Verbindungsaufbau abgelehnt at /home/radiator/perl5/perlbrew/perls/RADIATOR-DOT1X/lib/site_perl/5.18.2/Message/Passing/AMQP/ConnectionManager.pm line 55. {"class":"Message::Passing::Exception::ConnectionDisconnected"} Still not the prettiest log messages but at least the daemon doesn't die now. I suggest bumping the AnyEvent::RabbitMQ requirement to 1.15 and close this RT after a new release was made.