Bugs item #682511, was opened at 2003-02-07 19:13
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=682511&group_id=22866

Category: JBossTX
Group: v3.2
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: Bob Cotton (bcotton969)
Assigned to: David Jencks (d_jencks)
Summary: Client receives RemoteException instead of TransRolledBackEx

Initial Comment:
This is Jboss 3_2RC1

>From an EJB, we are doing 2-phase commits. One with
Oracle XA and one with Gemstone's JCA Adapter.

Gemstone votes rollback, and the client recieves a
RemoteException with a nested
TransactionRolledBackExcpetion.

I was expecting the client to receive the
TransactionRolledBackException directly.

Here are the stack traces.

Stack From Gemstone:


2003-02-07 18:55:55,898 WARN 
[org.jboss.tm.TransactionImpl] XAException:
tx=TransactionImpl:XidImpl [Format
Id=257, GlobalId=malt//739691, BranchQual=]
errorCode=XA_RBROLLBACK
javax.transaction.xa.XAException
        at
com.gemstone.persistence.connection.internal.ContainerXAResource.prepare(ContainerXAResource.java
:343)
        at
org.jboss.tm.TransactionImpl.prepareResources(TransactionImpl.java:1340)
        at
org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:355)
        at
org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:361)
        at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:247)
        at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
        at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:204)
        at
org.jboss.ejb.plugins.CleanShutdownInterceptor.invoke(CleanShutdownInterceptor.java:265)
        at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154
)
        at
org.jboss.ejb.StatefulSessionContainer.invoke(StatefulSessionContainer.java:370)
        at
org.jboss.ejb.Container.invoke(Container.java:680)
        at
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
        at
org.jboss.invocation.jrmp.server.JRMPInvokerHA.invoke(JRMPInvokerHA.java:163)
        at java.lang.reflect.Method.invoke(Native Method)
        at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:236)
        at
sun.rmi.transport.Transport$1.run(Transport.java:147)
        at
java.security.AccessController.doPrivileged(Native Method)
        at
sun.rmi.transport.Transport.serviceCall(Transport.java:143)
        at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
        at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
        at java.lang.Thread.run(Thread.java:479)


Stack From JBoss:

2003-02-07 18:55:55,953 ERROR
[org.jboss.ejb.plugins.LogInterceptor]
TransactionRolledbackException:
javax.transaction.TransactionRolledbackException:
Unable to commit, tx=TransactionImpl:XidImpl [FormatId=257
, GlobalId=malt//739691, BranchQual=]
status=STATUS_NO_TRANSACTION
        at
org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:368)
        at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:247)
        at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
        at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:204)
        at
org.jboss.ejb.plugins.CleanShutdownInterceptor.invoke(CleanShutdownInterceptor.java:265)
        at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154
)
        at
org.jboss.ejb.StatefulSessionContainer.invoke(StatefulSessionContainer.java:370)
        at
org.jboss.ejb.Container.invoke(Container.java:680)
        at
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
        at
org.jboss.invocation.jrmp.server.JRMPInvokerHA.invoke(JRMPInvokerHA.java:163)
        at java.lang.reflect.Method.invoke(Native Method)
        at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:236)
        at
sun.rmi.transport.Transport$1.run(Transport.java:147)
        at
java.security.AccessController.doPrivileged(Native Method)
        at
sun.rmi.transport.Transport.serviceCall(Transport.java:143)
        at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
        at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
        at java.lang.Thread.run(Thread.java:479)


Stack From Client:


     [java] EJBREMOTEMANAGER RemoteException occured in
com.synxis.wizdom.ejbs.SrmsWizcomMsgProcessorRemoteIF:
attempt #0
     [java] java.rmi.ServerException: RemoteException
occurred in server thread; nested exception is: 
     [java] RemoteException: RemoteException occurred
in server thread; nested exception is: 
     [java] 
javax.transaction.TransactionRolledbackException:
Unable to commit, tx=TransactionImpl:XidImpl
[FormatId=257, GlobalId=malt//735599, BranchQual=]
status=STATUS_NO_TRANSACTION
     [java] 
javax.transaction.TransactionRolledbackException:
Unable to commit, tx=TransactionImpl:XidImpl
[FormatId=257, GlobalId=malt//735599, BranchQual=]
status=STATUS_NO_TRANSACTION
     [java]
javax.transaction.TransactionRolledbackException:
Unable to commit, tx=TransactionImpl:XidImpl
[FormatId=257, GlobalId=malt//735599, BranchQual=]
status=STATUS_NO_TRANSACTION
     [java]     at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:240)
     [java]     at
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:215)
     [java]     at
sun.rmi.server.UnicastRef.invoke(UnicastRef.java:117)
     [java]     at
org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown
Source)
     [java]     at
org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxyHA.invoke(JRMPInvokerProxyHA.java:160)
     [java]     at
org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:92)
     [java]     at
org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:77)
     [java]     at
org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:80)
     [java]     at
org.jboss.proxy.ejb.StatefulSessionInterceptor.invoke(StatefulSessionInterceptor.java:119)
     [java]     at
org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:82)
     [java]     at $Proxy1.processSell(Unknown Source)
     [java]     at
com.synxis.wizdom.ejbs.SrmsWizcomMsgProcessorRemoteManager.processSell(SrmsWizcomMsgProcessorRemoteManager.java:392)
     [java]     at
com.synxis.srms.junit.wizdom.ejbs.LoadTestWiz.sellAndEnd(LoadTestWiz.java:182)
     [java]     at
com.synxis.srms.junit.wizdom.ejbs.LoadTestWiz.run(LoadTestWiz.java:106)



----------------------------------------------------------------------

>Comment By: David Jencks (d_jencks)
Date: 2003-02-16 19:57

Message:
Logged In: YES 
user_id=60525

Fixed in 3.0.x, 3.2 and 4 cvs with at least the JRMP invoker.

----------------------------------------------------------------------

Comment By: David Jencks (d_jencks)
Date: 2003-02-12 18:51

Message:
Logged In: YES 
user_id=60525

I'm still working on improving this but I think 3.0 and 3.2 cvs now have the behavior 
you want.  In 3.0 you can un-nest the exceptions (by casting to 
org.jboss.util.NestedThrowable) until you get the original problem.  This behavior 
will be in 3.2 shortly.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=682511&group_id=22866


-------------------------------------------------------
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

Reply via email to