You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
first declare succeeded
0
first delete succeeded
second declare succeeded
nil
Handling a channel-level exception.
AMQP class id : 50
AMQP method id: 40
Status code : 404
Error message : NOT_FOUND - no queue 'foo' in vhost '/'
Looking at a tcpdump trace of the communication, I can see that a second declare/declare-ok never happens. I suspect the amqp client to be at fault. Also interesting:
# from lib/amq/client/async/queue.rbdefdelete(if_unused=false,if_empty=false,nowait=false, &block)nowait=trueunlessblock@connection.send_frame(Protocol::Queue::Delete.encode(@channel.id,@name,if_unused,if_empty,nowait))if !nowaitself.append_callback(:delete, &block)# TODO: delete itself from queues cache@channel.queues_awaiting_delete_ok.push(self)endselfend# delete(channel, queue, if_unused, if_empty, nowait, &block)
If i use queue! instead of queue on the second declaration (bypassing the queue cache), the test succeeds.
The text was updated successfully, but these errors were encountered:
Once a queue is deleted, subsequent queue declarations by the same name are not executed. How to reproduce, using the amqp gem:
output, using a channel level exception handler:
Looking at a tcpdump trace of the communication, I can see that a second declare/declare-ok never happens. I suspect the amqp client to be at fault. Also interesting:
If i use
queue!
instead ofqueue
on the second declaration (bypassing the queue cache), the test succeeds.The text was updated successfully, but these errors were encountered: