[rabbitmq-discuss] Termination of queue after sending a message.
Ernest Staszuk
ernest.staszuk at comarch.pl
Wed Oct 24 12:33:52 BST 2012
Hi,
while using RabbitMQ we encountered problems with queue termination.
I enclose log (with vulnerable parts censored). RabbitMQ version we used
was 2.8.7 ran on Erlang R15B.
We ran into this issue while sending back to queue dead-lettered message
as follows:
1. Message from a queue named let's say "to-process" is delivered
to consumer and then rejected due to failure.
2. Since queue "to-process" has dead-letter exchange set to
"failed-messages"
it falls down there and then to queue "failed-messages-queue".
3. Another consumer got this message while listening on
"failed-messages-queue",
stored content and headers in memory and sent acknowledgement.
4. After a certain time there is made an attempt to sent message
stored in memory
to the queue form which it was rejected at first (explicitly
saying to the "to-process" queue).
To be more precise we are trying to send a message to exchange
null with routing key "to-process".
And then queue "to-process" vanished unexpectedly. In logs of RabbitMQ
we found error.
Due this we have some questions:
- Why did that happen? Is something wrong with what we are doing?
- Why queue terminated? In my opinion this should never happen
(even if the message we sent back was broken, I mean isn't that a
security issue?).
- What did happened to the messages that was in "to-process" queue?
Is there any way to find and restore them?
- Does terminating a (durable) queue can result in messages lossing?
Thank you in advance for the time spent on my problem.
Best regards,
Ernest Staszuk
More information about the rabbitmq-discuss
mailing list