Jamie, Could you try following patch for XAResourceTest.java. It is supposed to fix empty branch id problem.
Jamie Burns wrote: > By way of reminder, the exception is: > > javax.transaction.xa.XAException > at com.microsoft.jdbcx.base.BaseXAResource.checkXid(Unknown Source) > at com.microsoft.jdbcx.base.BaseXAResource.start(Unknown Source) > at > org.jboss.resource.adapter.jdbc.xa.XAManagedConnection.start(XAManagedConnec > tion.java:107) > at > org.jboss.test.jca.tm.XAResourceTest.testSimpleCommitXid(XAResourceTest.java > :173) > > The checkXid method is failing with the value it is getting from > XidImpl.getBranchQualifier(). XidImpl is returning a byte[0]. Ive started > comparing it to the JBoss 3.0 code and it looks pretty the same. Im guessing > that somewhere JBoss 3.0 was setting it to a non-zero length array. I am > going to look into it more closely over the weekend. > > ----- Original Message ----- > From: "Igor Fedorenko" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Saturday, September 07, 2002 2:18 PM > Subject: Re: [JBoss-dev] XADataSource wrapper for JBoss 4 > > > >>There are two types of tests in this test suite. First type ("raw" >>tests) manages xids and makes xa calls directly, second type ("tx" >>tests) create instance of Transaction and use this instance to manage xa >>stuff. "Tx" tests are more important because they exercise actual >>behaviour of jboss, while "raw" tests were meant to prove that very >>basic xa functionality works. In your case all "raw" tests failed and >>all "tx" tests succeeded. It is definitely a bug with raw tests but I do >>not know what could be wrong with them. >> >>Jamie Burns wrote: >> >>>Ok. The XAResourceUnitTestCase threw 3 errors. See attached report. >>> >>>There are sections for 3 adapters in the class. I have hsqldb-ds.xml >>>(Firebird?) and mssql-xa-ds.xml installed. Apart from removing one of >> > them, > >>>how do you tell which one has failed? >>> >>>Thanks >>> >>>Jamie >>> >> >> >>-- >>Igor Fedorenko >>Think smart. Think automated. Think Dynamics. >>www.thinkdynamics.com >> >> >> >>------------------------------------------------------- >>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-development mailing list >>[EMAIL PROTECTED] >>https://lists.sourceforge.net/lists/listinfo/jboss-development >> > > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Jboss-development mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-development -- Igor Fedorenko Think smart. Think automated. Think Dynamics. www.thinkdynamics.com
Index: XAResourceTest.java =================================================================== RCS file: /cvsroot/jboss/jbosstest/src/main/org/jboss/test/jca/tm/XAResourceTest.java,v retrieving revision 1.1 diff -u -r1.1 XAResourceTest.java --- XAResourceTest.java 20 Aug 2002 04:59:49 -0000 1.1 +++ XAResourceTest.java 22 Sep 2002 02:45:41 -0000 @@ -168,7 +168,7 @@ { ManagedConnection mc = h.getManagedConnection(); XAResource xares = mc.getXAResource(); - Xid xid = createXid(); + Xid xid = createBranchXid(); xares.start(xid, XAResource.TMNOFLAGS); Object stuff = h.doStuff(mc, toString(xid)); xares.end(xid, XAResource.TMSUCCESS); @@ -198,7 +198,7 @@ { ManagedConnection mc = h.getManagedConnection(); XAResource xares = mc.getXAResource(); - Xid xid = createXid(); + Xid xid = createBranchXid(); xares.start(xid, XAResource.TMNOFLAGS); Object stuff = h.doStuff(mc, toString(xid)); xares.end(xid, XAResource.TMSUCCESS); @@ -288,8 +288,8 @@ ManagedConnection mc = h.getManagedConnection(); XAResource xares = mc.getXAResource(); - Xid xid1 = createXid(); - Xid xid2 = createXid(); + Xid xid1 = createBranchXid(); + Xid xid2 = createBranchXid(); // tx1 xares.start(xid1, XAResource.TMNOFLAGS); @@ -460,13 +460,21 @@ protected Xid createXid() throws Exception { - return (Xid)getServer().invoke(xidFactory, "newXid", new Object[] {}, new String[] {}); + Xid xid = (Xid)getServer().invoke(xidFactory, "newXid", new Object[] {}, new +String[] {}); + return createXid(xid, 1); } protected Xid createXid(Xid xid, long branch) throws Exception { return (Xid)getServer().invoke(xidFactory, "newBranch", new Object[] {xid, new Long(branch)}, new String[] {javax.transaction.xa.Xid.class.getName(), "long"}); + } + + protected Xid createBranchXid() + throws Exception + { + final Xid xid = createXid(); + return createXid(xid, 1); } private String toString(Xid xid)