Hi, I have been stress testing JBoss 3.0.1 with XA transactions and MS SQLServer 2000 as a datasource. The scenario I have is reading messages from JMS and writing them to SQLServer in an XA transaction, and another thread reading from SQLServer and writing to JMS in another XA transaction. Its a pretty tight loop of messages going around and around, with lots and lots of transactions. After about 70000 - 80000 transactions I get the following error:
2002-08-15 20:05:19,245 WARN [org.jboss.tm.TxCapsule] XAException: tx=XidImpl [FormatId=257, GlobalId=MKI010135//244013, BranchQual=] errorCode=XA_UNKNOWN(-1) javax.transaction.xa.XAException: at com.microsoft.jdbcx.sqlserver.SQLServerImplXAResource.verifyReturnCode(U nknown Source) at com.microsoft.jdbcx.sqlserver.SQLServerImplXAResource.executeXaRpc(Unkno wn Source) at com.microsoft.jdbcx.sqlserver.SQLServerImplXAResource.start(Unknown Source) at com.microsoft.jdbcx.base.BaseXAResource.start(Unknown Source) at org.jboss.tm.TxCapsule.startResource(TxCapsule.java:1180) at org.jboss.tm.TxCapsule.enlistResource(TxCapsule.java:679) at org.jboss.tm.TransactionImpl.enlistResource(TransactionImpl.java:102) at org.jboss.resource.connectionmanager.XATxConnectionManager$XAConnectionE ventListener.enlist(XATxConnectionManager.java:262) at org.jboss.resource.connectionmanager.XATxConnectionManager.managedConnec tionReconnected(XATxConnectionManager.java:202) at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConn ection(BaseConnectionManager2.java:534) at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionMa nagerProxy.allocateConnection(BaseConnectionManager2.java:812) at org.jboss.resource.adapter.jdbc.JDBCDataSource.getConnection(JDBCDataSou rce.java:110) at test.XATransactionTest$testJMSToDB.doTheTest(XATransactionTest.java:349) at test.XATransactionTest$testJMSToDB.run(XATransactionTest.java:303) at java.lang.Thread.run(Thread.java:536) 2002-08-15 20:05:19,285 INFO [test.XATransactionTest] Thread-36 committed 2002-08-15 20:05:19,305 WARN [org.jboss.tm.TxCapsule] XAException: tx=XidImpl [FormatId=257, GlobalId=MKI010135//244012, BranchQual=] errorCode=XAER_RMERR javax.transaction.xa.XAException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]Import of MSDTC transaction failed: Result Code = 0x8007000e. at com.microsoft.jdbcx.sqlserver.SQLServerImplXAResource.enlist(Unknown Source) at com.microsoft.jdbcx.sqlserver.SQLServerImplXAResource.start(Unknown Source) at com.microsoft.jdbcx.base.BaseXAResource.start(Unknown Source) at org.jboss.tm.TxCapsule.startResource(TxCapsule.java:1180) at org.jboss.tm.TxCapsule.enlistResource(TxCapsule.java:679) at org.jboss.tm.TransactionImpl.enlistResource(TransactionImpl.java:102) at org.jboss.resource.connectionmanager.XATxConnectionManager$XAConnectionE ventListener.enlist(XATxConnectionManager.java:262) at org.jboss.resource.connectionmanager.XATxConnectionManager.managedConnec tionReconnected(XATxConnectionManager.java:202) at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConn ection(BaseConnectionManager2.java:534) at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionMa nagerProxy.allocateConnection(BaseConnectionManager2.java:812) at org.jboss.resource.adapter.jdbc.JDBCDataSource.getConnection(JDBCDataSou rce.java:110) at test.XATransactionTest$testJMSToDB2.doTheTest(XATransactionTest.java:871 ) at test.XATransactionTest$testJMSToDB2.run(XATransactionTest.java:825) at java.lang.Thread.run(Thread.java:536) and I can no longer access SQLServer. Has anyone else had these sorts of problems? Has anyone else used SQLServer with so many XA transactions? It looks like the Microsoft Distributed Transaction Coordinator falls over, but I'm wondering what I might be doing to cause this. rgds, Steve. Here is my configuration file for the datasource: <?xml version="1.0" encoding="UTF-8"?> <!-- ===================================================================== --> <!-- --> <!-- JBoss Server Configuration --> <!-- --> <!-- ===================================================================== --> <server> <!-- ==================================================================== --> <!-- ConnectionManager setup for xa Microsoft SQL Server 2000, using --> <!-- Microsoft's JDBC driver. --> <!-- Thanks to Benjamin Geer <[EMAIL PROTECTED]> --> <!-- Be sure to set the JndiName property to the name you want to look up --> <!-- the datasource under and set the location of your database in --> <!-- the ManagedConnectionFactoryProperties. --> <!-- ==================================================================== --> <mbean code="org.jboss.resource.connectionmanager.XATxConnectionManager" name="jboss.jca:service=XATxCM,name=MSSQLXaDS"> <depends optional-attribute-name="ManagedConnectionFactoryName"> <!--embedded mbean--> <mbean code="org.jboss.resource.connectionmanager.RARDeployment" name="jboss.jca:service=XATxDS,name=MSSQLXaDS"> <attribute name="JndiName">MSSQLXaDS</attribute> <!--real attributes--> <attribute name="ManagedConnectionFactoryProperties"> <properties> <config-property name="XADataSourceProperties" type="java.lang.String">ServerName=SERVERNAME;SelectMethod=cursor;Databa seName=DATABASENAME</config-property> <config-property name="XADataSourceClass" type="java.lang.String">com.microsoft.jdbcx.sqlserver.SQLServerDataSourc e</config-property> <config-property name="UserName" type="java.lang.String">USERNAME</config-property> <config-property name="Password" type="java.lang.String">PASSWORD</config-property> </properties> </attribute> <!--hack--> <depends optional-attribute-name="OldRarDeployment">jboss.jca:service=RARDeployme nt,name=Minerva JDBC XATransaction ResourceAdapter</depends> </mbean> </depends> <depends optional-attribute-name="ManagedConnectionPool"> <!--embedded mbean--> <mbean code="org.jboss.resource.connectionmanager.JBossManagedConnectionPool" name="jboss.jca:service=XATxPool,name=MSSQLXaDS"> <attribute name="MinSize">0</attribute> <attribute name="MaxSize">50</attribute> <attribute name="BlockingTimeoutMillis">5000</attribute> <attribute name="IdleTimeoutMinutes">15</attribute> <!--criteria indicates if Subject (from security domain) or app supplied parameters (such as from getConnection(user, pw)) are used to distinguish connections in the pool. Choices are ByContainerAndApplication (use both), ByContainer (use Subject), ByApplication (use app supplied params only), ByNothing (all connections are equivalent, usually if adapter supports reauthentication)--> <attribute name="Criteria">ByContainer</attribute> </mbean> </depends> <depends optional-attribute-name="CachedConnectionManager">jboss.jca:service=Cach edConnectionManager</depends> <depends optional-attribute-name="JaasSecurityManagerService">jboss.security:serv ice=JaasSecurityManager</depends> <attribute name="TransactionManager">java:/TransactionManager</attribute> <!--make the rar deploy! hack till better deployment--> <depends>jboss.jca:service=RARDeployer</depends> </mbean> </server> ------------------------------------------------------- This sf.net email is sponsored by: OSDN - Tired of that same old cell phone? Get a new here for FREE! https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390 _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user