Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-133

Artemis does not support local transactions properly over AMQP


      The Artemis protocol does not support AMQP transactions properly.
      In AMQP a transaction control link can be created from within a session, this control link is then used to create and control transactions. Artemis supports local transactions, single transaction per session, single session per transaction.
      A declare packet is sent from the client over the control link to instantiate a transaction, receive a transaction id. In order to enrol a message within a transaction the sender must set the the State of the transfer packet to "TransactionState(txn-id=xxx)". However, Artemis does not use the TransactionState to decide when to enrol messages in a transaction, instead all subsequent messages sent over the same session as the control link, are automatically enrolled within the transaction. This is wrong.

            csuconic@redhat.com Clebert Suconic
            mtaylor1@redhat.com Martyn Taylor (Inactive)
            David Kornel David Kornel
            0 Vote for this issue
            5 Start watching this issue