On Wed, Jun 6, 2012 at 11:35 PM, Claus Ibsen <claus.ib...@gmail.com> wrote:
>
> Nothing is reliable.
>
> You would need to use for example Camel's dead letter channel, and
> send the messages to another JMS queue, which is the DLQ.
> And then use transactions so it appears as a atomic operation.


With transactions and DLC both playing at the same time, you run into
troubles, though.  Suppose you have a route from queue A -> queue B
which does a bunch of "stuff" in the middle which you want to have
atomic (database inserts, putting messages on other queues, etc.).
Thus, you use transactions of course.  Now, if something happens along
the way, the transaction will rollback.  Rolling back the transaction
would also cause you to put the message back onto queue A.  Then
you're right back where you started.

Reply via email to