You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2003/11/25 13:57:57 UTC

DO NOT REPLY [Bug 23146] - Calling socket.setTcpNoDelay causes connector to disconnect

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23146>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23146

Calling socket.setTcpNoDelay causes connector to disconnect





------- Additional Comments From yuri@zip.com.au  2003-11-25 12:57 -------
Answer from Sun in relation to setTcpNoDelay failing is:

"This error is caused bya EINVAL return code from the setsockopt() system
call.The most likely cause of this (considering that it happensonly sometimes)
is that the socket has been shutdown or closedin some way, but Java (or Apache)
thinks it is still open.Which version of Tomcat are you running, and how easy is
it toreproduce this?"

As annoying as this is, this sounds reasonable.  I can't say this isn't
happening.  So something could be opening sockets and closing them immediately.  

In which case the currently coyote connector handling, (especially >= 4.1.29)
looks like the correct behaviour.  log the failed connection and ignore it. 

Could this be a port scanner or health check?  I can't think of what would be
doing that in our system.

BTW I guess the catalina connector is still broken, because it doesn't catch the
exception.  But at least coyote connector handles it gracefully, and it isn't an
indicator of bad health of the system.

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org