[jboss-user] [Remoting] - Re: Socket read stuck on a client invoke call

sarbu do-not-reply at jboss.com
Tue Oct 24 17:57:09 EDT 2006


Hi, 

The scenario is the following: I have two systems that communicates with each other using remoting. When each system is started, I create a client connector to send requests to peer and a server connector to receive requests from peer. 

I start both systems and the two way comms is up and running. When one node wants to invoke a API on the peer node, it calls the invoke method of the client connector. This connector has a listener for callback incase the peer is lost. The ping time for this listener is set at 10 seconds. 

In the above scenario, I reboot one machine. In about 10 seconds, I get a connect lost event on the listener. I remove the client connector object.

The problem that I encountered was in this 10 second time frame, if I call client.invoke() API, the request gets stuck. I specified the timeout (socketTimeout) in the URI to be 120seconds. However, the request was stuck and did not timeout until 30 mins (this happens to be the default timeout). 

All other requests are blocked at this time. Even the listener call back for the connection lost is also blocked. After 30 minutes, I see a large number of queued connection lost events in the queue in the listener. Every event in the queue creates another thread and calls the listener method. 

Hope I am clear. Let me know if you need any more information 

Saravanan


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3980549#3980549

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3980549



More information about the jboss-user mailing list