users@glassfish.java.net

UserTransaction and corba timeout

From: <glassfish_at_javadesktop.org>
Date: Fri, 21 Sep 2007 02:46:54 PDT

Hello,

I'm trying to use a userTransaction from a simple java client accessing a simple stateless bean (which does simple entity manager operations). Without user transaction, everything works fine. I configured an XADatasource on oracle.

When calling the bean in a user transaction, the client hangs on the commit.
However, the commit is done.
After 30 min, I get the following stacktrace on the console (2 times) but no exception is thrown and the program continues normally.

com.sun.corba.ee.impl.transport.CorbaResponseWaitingRoomImpl waitForResponse
WARNING: "IOP00410219: (COMM_FAILURE) Communications timeout waiting for response. Exceeded 1,800,000 milliseconds"
org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 219 completed: Maybe
        at com.sun.corba.ee.impl.logging.ORBUtilSystemException.communicationsTimeoutWaitingForResponse(ORBUtilSystemException.java:3180)
        at com.sun.corba.ee.impl.logging.ORBUtilSystemException.communicationsTimeoutWaitingForResponse(ORBUtilSystemException.java:3195)
        at com.sun.corba.ee.impl.transport.CorbaResponseWaitingRoomImpl.waitForResponse(CorbaResponseWaitingRoomImpl.java:198)
        at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.waitForResponse(SocketOrChannelConnectionImpl.java:1196)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.waitForResponse(CorbaMessageMediatorImpl.java:291)
        at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete1(CorbaClientRequestDispatcherImpl.java:389)
        at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete(CorbaClientRequestDispatcherImpl.java:357)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:457)
        at org.omg.CosTransactions._ResourceStub.commit_one_phase(_ResourceStub.java:95)
        at com.sun.jts.CosTransactions.RegisteredResources.commitOnePhase(RegisteredResources.java:1575)
        at com.sun.jts.CosTransactions.TopCoordinator.commitOnePhase(TopCoordinator.java:2949)
        at com.sun.jts.CosTransactions.CoordinatorTerm.commit(CoordinatorTerm.java:317)
        at com.sun.jts.CosTransactions.TerminatorImpl.commit(TerminatorImpl.java:249)
        at com.sun.jts.CosTransactions.CurrentImpl.commit(CurrentImpl.java:623)
        at com.sun.jts.jta.TransactionManagerImpl.commit(TransactionManagerImpl.java:309)
        at com.sun.enterprise.distributedtx.J2EETransactionManagerImpl.commit(J2EETransactionManagerImpl.java:1004)
        at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.commit(J2EETransactionManagerOpt.java:397)
        at com.sun.enterprise.distributedtx.UserTransactionImpl.commit(UserTransactionImpl.java:197)
        at applicationclient3.TestCounterRMI.test1(TestCounterRMI.java:96)
        at applicationclient3.TestCounterRMI.main(TestCounterRMI.java:141)


in the server.log I can see:
[#|2007-09-21T11:31:19.845+0200|FINER|sun-appserver9.1|oracle.toplink.essentials.session.file:/home/common/softs/glassfish/domains/domain1/applications/j2ee-modules/TestTransactionsEJB/-TestTransactionsEJBPU.transaction|_ThreadID=14;_ThreadName=p: thread-pool-1; w: 5;ClassName=null;MethodName=null;_RequestID=0f920fc2-d739-4e13-bdba-b46bfed3f200;|begin unit of work commit|#]

[#|2007-09-21T11:31:19.888+0200|FINER|sun-appserver9.1|oracle.toplink.essentials.session.file:/home/common/softs/glassfish/domains/domain1/applications/j2ee-modules/TestTransactionsEJB/-TestTransactionsEJBPU.transaction|_ThreadID=15;_ThreadName=p: thread-pool-1; w: 7;ClassName=null;MethodName=null;_RequestID=5e277652-2013-4f0e-8efc-9b7d967be7d1;|TX afterCompletion callback, status=COMMITTED|#]


I am lost !! Any idea ?

Thank you
[Message sent by forum member 'pat_m' (pat_m)]

http://forums.java.net/jive/thread.jspa?messageID=236406