@Override public void run() throws XAException { session.recover(XAResource.TMSTARTRSCAN); } });
public void testNonPersistent(final boolean commit) throws Exception { Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes()); ClientMessage m1 = createTextMessage("m1", false); ClientMessage m2 = createTextMessage("m2", false); ClientMessage m3 = createTextMessage("m3", false); ClientMessage m4 = createTextMessage("m4", false); clientSession.start(xid, XAResource.TMNOFLAGS); clientProducer.send(m1); clientProducer.send(m2); clientProducer.send(m3); clientProducer.send(m4); clientSession.end(xid, XAResource.TMSUCCESS); clientSession.prepare(xid); stopAndRestartServer(); Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(xids.length, 1); Assert.assertEquals(xids[0].getFormatId(), xid.getFormatId()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getBranchQualifier(), xid.getBranchQualifier()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0); if (commit) { clientSession.commit(xid, false); } else { clientSession.rollback(xid); } xids = clientSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(xids.length, 0); }
@Test public void testNonPersistentMultipleIDs() throws Exception { for (int i = 0; i < 10; i++) { Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes()); ClientMessage m1 = createTextMessage("m1", false); ClientMessage m2 = createTextMessage("m2", false); ClientMessage m3 = createTextMessage("m3", false); ClientMessage m4 = createTextMessage("m4", false); clientSession.start(xid, XAResource.TMNOFLAGS); clientProducer.send(m1); clientProducer.send(m2); clientProducer.send(m3); clientProducer.send(m4); clientSession.end(xid, XAResource.TMSUCCESS); clientSession.prepare(xid); if (i == 2) { clientSession.commit(xid, false); } recreateClients(); } stopAndRestartServer(); Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(9, xids.length); }
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getBranchQualifier(), xid.getBranchQualifier()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0); clientSession.rollback(xid);
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(1, xids.length); Assert.assertEquals(xids[0].getFormatId(), xid.getFormatId());
Xid[] xids = sendingSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(0, xids.length);
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(xids.length, 1); Assert.assertEquals(xids[0].getFormatId(), xid.getFormatId()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0);
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(xids.length, 1); Assert.assertEquals(xids[0].getFormatId(), xid.getFormatId());
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getBranchQualifier(), xid.getBranchQualifier()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0); clientSession.commit(xid, false);
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getBranchQualifier(), xid.getBranchQualifier()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0); clientSession.commit(xid, false);
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getBranchQualifier(), xid.getBranchQualifier()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0); clientSession.rollback(xid);
Xid[] xids = clientSession.recover(XAResource.TMSTARTRSCAN); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getBranchQualifier(), xid.getBranchQualifier()); ActiveMQTestBase.assertEqualsByteArrays(xids[0].getGlobalTransactionId(), xid.getGlobalTransactionId()); xids = clientSession.recover(XAResource.TMENDRSCAN); Assert.assertEquals(xids.length, 0); clientSession.commit(xid, false);
Xid[] recoveredXids = session.recover(XAResource.TMSTARTRSCAN); Assert.assertEquals(0, recoveredXids.length); jmxServer = ManagementControlHelper.createActiveMQServerControl(mbeanServer);
Xid[] xids = session.recover(XAResource.TMSTARTRSCAN);