AmqpConnector.receiver is not able retrieve the connection when rabbit mq is down and up. #53
Comments
I am seeing this issue as well, but only with the released 3.4.1 version of mule-transport-amqp. Oddly enough the current 3.4.2-SNAPSHOT seems to reconnect and consume messages as expected, but as far as I can tell from the commits, there are no changes between 3.4.1 and the current 3.4.2-SNAPSHOT. Here is the flow I've used to test this, using a RabbitMQ broker (v 3.2.3, Erlang R16B02) on localhost:
With 3.4.2-SNAPSHOT, messages are consumed normally after stopping and restarting the broker. With 3.4.1, I receive the following in an endless loop if the above flow is the only consumer on the queue. It appears I still have a channel, and that my flow client attempts to receive the message, but fails repeatedly and endlessly due to the channel being closed:
|
These issues have been fixed for 3.4.1 so it's hard to understand how they can still be present with 3.4.1 but gone with 3.4.2-SNAP, with no code change in between. When you package your Mule app, can you confirm that both the AMQP transport 3.4.1 and the AMQP client 3.2.1 are in the |
I am having AMQP transport 3.4.1 and the AMQP client 3.2.1 are in the lib directory. |
Thanks David, you are correct. I've verified the issue is resolved with the released 3.4.1 of mule-transport-amqp. The SHA signatures of the pom and jar in my .m2 repository did not match the values hosted on the MuleForge repository, and I realized we had an invalid artifact in our Artifactory. Rebuilt without the aid of Artifactory and the mule app reconnected correctly. |
Gad to read this, thanks for taking the time to report back. |
I have a mule flow, having amqp connection to interact with rabbitmq.And i do have amqp connector flow it will try to retrieve the connection for every 5 sec, if rabbitmq connection lost.
I was testing scenario like.
Start the rabbitmq server.
Started the mule flow.Once the flow got started, stopped the rabbitmq server, and started again. i do see in the logs amqp connector tried for connection and got the connection.When am trying to submit the message to mule flow, am seeing the below exception repeatedly.
"java.lang.IllegalStateException: This MuleWorkManager .amqpConnector.receiver' is stopped".com.rabbitmq.client.ShutdownSignalException: clean channel shutdown; reason: #method<channel.close>(reply-code=200, reply-text=Closed due to exception from Consumer org.mule.transport.amqp.AmqpMessageReceiver$AmqpConsumer@7bbcc611 (amq.ctag-K5GVFb_36ery2dm-QL7lmQ) method handleDelivery for channel AMQChannel(amqp://admin@127.0.0.1:5672/orchestration-integration,24), class-id=0, method-id=0)
at com.rabbitmq.client.impl.ChannelN.close(ChannelN.java:542)
The text was updated successfully, but these errors were encountered: