[jboss-remoting-issues] [JBoss JIRA] Commented: (JBREM-945) Allow ServerThread to keep running after SocketTImeoutException

Tim Fox (JIRA) jira-events at lists.jboss.org
Fri Mar 28 04:23:39 EDT 2008


    [ http://jira.jboss.com/jira/browse/JBREM-945?page=comments#action_12405337 ] 
            
Tim Fox commented on JBREM-945:
-------------------------------

I would question the classification of this as minor.

If some data is sent from the client to the server, and the server thread times out before reading it, then the socket will get closed and the data will be lost.

If the call to send the data is one way then I believe this won't be notified to the user. So the user may think the data has been sent ok but it hasn't. 

I would say potential data loss makes this at least a major and probably a critical.

> Allow ServerThread to keep running after SocketTImeoutException
> ---------------------------------------------------------------
>
>                 Key: JBREM-945
>                 URL: http://jira.jboss.com/jira/browse/JBREM-945
>             Project: JBoss Remoting
>          Issue Type: Task
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 2.2.2.SP4
>            Reporter: Ron Sigal
>         Assigned To: Ron Sigal
>            Priority: Minor
>             Fix For: 2.2.2.SP7
>
>
> Currently, org.jboss.remoting.transport.socket.ServerThread will close its socket and return itself to the threadpool in the event of a SocketTimeoutException.  However, it could simply continue trying to read the next invocation.  The javadoc for java.net.Socket.setSoTimeout() states:
> Enable/disable SO_TIMEOUT with the specified timeout, in milliseconds. With this option set to a non-zero timeout, a read() call on the InputStream associated with this Socket will block for only this amount of time. If the timeout expires, a java.net.SocketTimeoutException is raised, though the Socket is still valid. 
> If the timeout is due to transitory circumstances, then it would be much more efficient to allow the ServerThread to continue, rather than forcing the client to start over with a new socket.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-remoting-issues mailing list