users@glassfish.java.net

Re: Glassfish-ASA5505-Glassfish IIOP socket woes - help please

From: <glassfish_at_javadesktop.org>
Date: Thu, 12 Nov 2009 23:10:27 PST

Hello dcam,

we have the same issue, slightly modified since one side is not a Glassfish server, but a Java client process. In our case, the firewall also silently drops the connection.

Your observation, that creating a new InitialContext is does not create a new socket connection is correct. We even found that quote from the Sun docs:

http://docs.sun.com/app/docs/doc/820-4343/abegt?a=view

Quote:
> How a Client Connects to the ORB

> A rich client Java program performs a new initialContext() call which creates a client side ORB instance. This in turn creates a socket connection to the Enterprise Server IIOP port. The reader thread is started on the server ORB to service IIOP requests from this client. [...]

> InitialContext lookup for the bean and the method invocations translate the marshalling application request data in Java into IIOP message(s) that are sent on the socket connection that was created earlier on to the server ORB. [...] The Client ORB shuts down and closes the connection when the rich client application exits.

The lines indicate the the client side ORB and its associated socket connection is created once on start and shutdown at the end of the process. The same would also apply for client side ORBs in any Glassfish instances.

The following ORB debugging hints would be useful:

        • com.sun.corba.ee.ORBDebug=transport,subcontract
        • com.sun.corba.ee.transport.ORBWaitForResponseTimeout

Both are Java system properties applicable to the client (and server JVM).

Browsed Sunsolve, docs and Glassfish sites:

        • http://sunsolve.sun.com/search/document.do?assetkey=1-1-6844972-1 -- iiop requests taking more time
        • https://glassfish.dev.java.net/issues/show_bug.cgi?id=7722 -- related GF issue with many debugging hints and references
        • http://docs.sun.com/app/docs/doc/820-4343/abegt?a=view -- Sun GlassFish Enterprise Server 2.1 Performance Tuning Guide / ORB Settings
        • forum posts:
                • http://forums.java.net/jive/message.jspa?messageID=297152 -- Getting a java.rmi.MarshalException CORBA COMM FAILURE from Daemon Process
                • http://forums.java.net/jive/message.jspa?messageID=335949 -- ORB connection leak

You may not see the Sunsolve issue since you need a support contract for Glassfish.

Since the issue happens sporadically at the customer side, we cannot reproduce it here since we do not have such a firewall. But we will file a service request on behalf of our Sun contract.

I will also attach our Java stack trace. It would be very nice of you if you could provide tcpdump/snoop traces and IIOP debugging output using the above options since you have a firewall to test with.

Thanks, Jörg
[Message sent by forum member 'jthoennes' ]

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