[rabbitmq-discuss] Transaction Dependencies
Tim Fox
tim at rabbitmq.com
Wed Apr 13 15:02:20 BST 2011
RabbitMQ clients don't expose any sort of XA/JTA interface so enlisting
a Rabbit local tx in a larger global XA tx won't be possible.
You can probably find other ways to ensure atomicity by some kind of
resend approach and detecting duplicates.
On -10/01/37 20:59, Vaughn Vernon wrote:
> Hey,
>
> How do you recommend handling the case where a local application
> database transaction may commit or rollback, and you don't want to
> publish the event unless it commits? In other words:
>
> 1 - application transaction begins
> 2 - application writes to database
> 3 - rmq message published (publish must succeed for application
> transaction to succeed)
> 4 - application transaction commits; however, issue occurs,
> transaction does not complete; must prevent rmq publish
>
> Can't move #3 after #4 because the possibility exists that rmq publish
> will fail and message will never be published.
>
> This points to 2pc of application and rmq, but unavailable for the
> application database. BTW, does rmq 2pc with other databases?
>
> Vaughn
>
> --
>
>
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20110413/63ad40e6/attachment.htm>
More information about the rabbitmq-discuss
mailing list