[
https://issues.jboss.org/browse/JBREM-1317?page=com.atlassian.jira.plugin...
]
Ron Sigal commented on JBREM-1317:
----------------------------------
I was wrong about Client.close(), which doesn't exist. It's Client.disconnect()
that leads to steps 2 - 6.
Howard Gao has commented on step 1:
"The JBM on notification will shutdown the callback handler which calls
callbackClient.disconnect()"
So, I believe that this issue is already effectively solved.
BisocketClientInvoker waits for failed clients
----------------------------------------------
Key: JBREM-1317
URL:
https://issues.jboss.org/browse/JBREM-1317
Project: JBoss Remoting
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: callbacks
Affects Versions: 2.5.4.SP3
Environment: JBoss EAP 5.1.2
Reporter: Doug Grove
Assignee: Ron Sigal
Priority: Minor
When a client dies or is killed, the failure is actually detected in
org.jboss.remoting.transport.socket.MicroSocketClientInvoker:
(NEW ClientSocketWrapper[Socket[addr=/10.0.0.212,port=36600,localport=4458].d3e837]) got
Exception: java.io.IOException: Broken pipe
The "Broken pipe" exception means that the client has disconnected and can not
return. This exception is treated in the code a retry-able, however.
The code carries on, finally calling BisocketClientInvoker.createSocket(). This code
then waits for a socket to appear in a list. I can see no way for a new socket to ever
appear in the list.
This results in the code waiting for the full duration of the configured timeout.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira