Только что обновился до новой версии RabbitMQ - 2.3. 1 - и теперь возникает следующая ошибка:
PRECONDITION_FAILED unknown delivery tag 1
... с последующим закрытием канала. Это работало на более старом RabbitMQ без изменений на стороне клиента.
С точки зрения поведения приложения:
Когда приложение A хочет отправить асинхронное сообщение в приложение b и получить ответ от B, это алгоритм:
До сих пор все шло хорошо в 1.7.0. что пошло не так в 2.3.1?
Когда приложение A вызывает basicPublish ()
, приложение B немедленно выдает следующее исключение:
com.rabbitmq.client.ShutdownSignalException: channel error; reason: {#method<channel.close>(reply-code=406,reply-text=PRECONDITION_FAILED - unknown delivery tag 1,class-id=60,method-id=80),null,""}
at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:191)
at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:159)
at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:110)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:438)
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; reason: {#method<channel.close>(reply-code=406,reply-text=PRECONDITION_FAILED - unknown delivery tag 1,class-id=60,method-id=80),null,""}