[rabbitmq-discuss] Fwd: question on the faq

Matthias Radestock matthias at lshift.net
Tue Jan 6 11:38:31 GMT 2009


Gordon Sim wrote:
> Matthias Radestock wrote:
>> Gordon Sim wrote:
>>> In the case of a single node, if that node is killed in the middle of 
>>> processing a tx-commit and then restarted, are there any atomicity 
>>> guarantees? Could some of the operations be completed with others 
>>> being lost?
>>
>> The latter.
> 
> So to my mind that's not atomic whether your prefer viewing the 
> operations as acting on resources or streams.

Right. RabbitMQ was designed to never die, so the above really isn't an 
issue ;) More seriously, the above can only manifest itself as a problem 
if the tx involves durable queues with persisted messages.

TBH, on the whole tx front we are reluctant to invest much effort at 
this point since a) to date not all that many users have asked for it, 
b) the spec is far from clear, c) some major redesigns on our 
medium-term radar will require us to revisit this area.

Still, I'll have a look to see whether there's an easy fix for the above.

Finally, it's worth reiterating that RabbitMQ *does* guarantee atomicity 
in the cases required by the 0-9-1 spec, namely "where all publish or 
ack requests affect a single queue."


Matthias.




More information about the rabbitmq-discuss mailing list