[rabbitmq-discuss] Fwd: question on the faq

Matthias Radestock matthias at lshift.net
Mon Jan 5 14:55:56 GMT 2009


Gordon Sim wrote:
> A general atomicity guarantee is more basic than that though and would 
> in my view be valuable even if it only applied where queues involved in 
> that transaction were not deleted during the life of the transaction.

> (Note the only way a queue should disappear due to failure is if the 
> broker restarts and the queue was not durable, in which case any open 
> transactions would be aborted).

Not quite. Firstly, if queues are active entities, which they are in 
RabbitMQ, then they can, in principle, die due to some failure. 
Secondly, in a clustered RabbitMQ broker each queue resides on a 
specific node. In such a set up a transaction may take place on a 
connection+channel against one particular node but involve queues 
residing on other nodes. Those queue can disappear due to node failure 
or network connectivity disruption without the transacted 
connection+channel being dropped (since the node which holds the 
connection is still alive and well).


Matthias.




More information about the rabbitmq-discuss mailing list