[Jboss-cvs] JBossAS SVN: r55962 - branches/JBoss_3_2_8_SP1_JBAS_3336/testsuite/src/main/org/jboss/test/jca/test
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Aug 15 11:56:57 EDT 2006
Author: weston.price at jboss.com
Date: 2006-08-15 11:56:56 -0400 (Tue, 15 Aug 2006)
New Revision: 55962
Modified:
branches/JBoss_3_2_8_SP1_JBAS_3336/testsuite/src/main/org/jboss/test/jca/test/XATxConnectionManagerUnitTestCase.java
Log:
[JBAS-3336] Backport of fix for destoying a managed connection in the case of an
error in start() on XA resource.
Modified: branches/JBoss_3_2_8_SP1_JBAS_3336/testsuite/src/main/org/jboss/test/jca/test/XATxConnectionManagerUnitTestCase.java
===================================================================
--- branches/JBoss_3_2_8_SP1_JBAS_3336/testsuite/src/main/org/jboss/test/jca/test/XATxConnectionManagerUnitTestCase.java 2006-08-15 15:56:37 UTC (rev 55961)
+++ branches/JBoss_3_2_8_SP1_JBAS_3336/testsuite/src/main/org/jboss/test/jca/test/XATxConnectionManagerUnitTestCase.java 2006-08-15 15:56:56 UTC (rev 55962)
@@ -26,6 +26,7 @@
import javax.resource.spi.ConnectionRequestInfo;
import javax.transaction.TransactionManager;
+import javax.transaction.xa.XAException;
import org.jboss.logging.Logger;
import org.jboss.resource.connectionmanager.CachedConnectionManager;
@@ -37,6 +38,7 @@
import org.jboss.test.JBossTestCase;
import org.jboss.test.jca.adapter.TestConnection;
import org.jboss.test.jca.adapter.TestConnectionRequestInfo;
+import org.jboss.test.jca.adapter.TestManagedConnection;
import org.jboss.test.jca.adapter.TestManagedConnectionFactory;
import org.jboss.tm.TxManager;
import org.jboss.tm.usertx.client.ServerVMClientUserTransaction;
@@ -198,4 +200,41 @@
testGetConnection();
}
-}// XATxConnectionManagerUnitTestCase
+
+ public void testFailedStartTx() throws Exception
+ {
+ TestManagedConnection.setFailInStart(false, XAException.XAER_RMFAIL);
+ tm.begin();
+ TestConnection conn = null;
+ TestConnection conn2 = null;
+
+ try
+ {
+ assertTrue("Connection in pool!", cm.getPoolingStrategy().getConnectionCount() == 0);
+ conn = (TestConnection)cm.allocateConnection(mcf, cri);
+
+ //One should have been created
+ assertTrue(cm.getPoolingStrategy().getConnectionCount() == 1);
+
+ TestManagedConnection.setFailInStart(true, XAException.XAER_RMFAIL);
+
+ conn2 = (TestConnection)cm.allocateConnection(mcf, cri);
+
+ fail("Should not be here.");
+
+ }
+
+ catch (Throwable e)
+ {
+ }
+
+ conn.close();
+
+ assertTrue(conn2 == null);
+ assertTrue(cm.getPoolingStrategy().getConnectionCount() == 1);
+
+
+
+ }
+
+}
More information about the jboss-cvs-commits
mailing list