Done: https://issues.apache.org/jira/browse/AMQ-7354

On Wed, 27 Nov 2019 at 07:44, Tim Bain <tb...@alumni.duke.edu> wrote:

> This sounds like a valid bug. Could you please submit a bug report for it
> in JIRA?
>
> Thanks,
> Tim
>
> On Tue, Nov 26, 2019 at 2:53 AM Viliam Durina <vil...@hazelcast.com>
> wrote:
>
> > I'm doing these steps:
> >
> >     Xid xid1, xid2;
> >     XASession session = ...;
> >     MessageConsumer consumer = ...;
> >     XAResource xaRes = session.getXAResource();
> >
> >     xaRes.start(xid1, TMNOFLAGS);
> >     consumer.receive();
> >     xaRes.end(xid1, TMSUCCESS);
> >     // prepare the xid1, continue with xid2
> >     xaRes.prepare(xid1);
> >     xaRes.start(xid2);
> >     // receive one more item
> >     consumer.receive();
> >     // commit the first transaction
> >     xaRes.commit(xid1, false);
> >
> > The issue is that the last `commit` should commit only the first received
> > message. But it commits also the message received using the xid2
> > transaction.
> >
> > As far as I can tell the above behavior is legal. That's why the `commit`
> > method has the `Xid` argument: to tell which transaction are we
> committing.
> > The `receive` method uses the transaction associated currently with the
> > session. It also works with ActiveMQ Artemis.
> >
> > Viliam
> >
>

Reply via email to