users@glassfish.java.net

EJB Client hangs sporadically

From: <glassfish_at_javadesktop.org>
Date: Thu, 04 Sep 2008 02:29:23 PDT

Hi,

I have one bug(?) that's causing me massive headaches.

Configuration: Server: Windows XP, Glassfish V2ur2 - Client, Windows

We have an EJB client that is holding a reference to a remote interface and is using this to call remote methods. Most of the time this is running quite well, but very sporadically und unfortunately unreproducible it is running it what seems to be a CORBA timeout error. The client then hangs, is unresponsive and returns after 30 mins with the following error:

[slf5s.start]03 Sep 2008 17:03:29,265[slf5s.DATE] - ERROR[slf5s.PRIORITY] - exception caught...
java.rmi.MarshalException: CORBA COMM_FAILURE 1398079707 Maybe; nested exception is:
        org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 219 completed: Maybe
        at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:271)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:205)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)

        .. business logic here ...

        at java.util.TimerThread.mainLoop(Unknown Source)
        at java.util.TimerThread.run(Unknown Source)
Caused by: 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 com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        ... 9 more
javax.ejb.EJBException: nested exception is: java.rmi.MarshalException: CORBA COMM_FAILURE 1398079707 Maybe; nested exception is:
        org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 219 completed: Maybe

        ... business logic here ...

        at java.util.TimerThread.mainLoop(Unknown Source)
        at java.util.TimerThread.run(Unknown Source)


There is no record of any error in the server log, and a wireshark network trace seems to show that the underlying CORBA communication was succesful.
There I think that the client is stuck somewhere in the CORBA stack and returns after a 30 min timeout.

Since I can not reproduce the error, I have no means of debugging anything.

Can anyone please help? Would an update to Glassfish V2.1 probably help?

Thanks!
Carsten
[Message sent by forum member 'carmeyer' (carmeyer)]

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