You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "Folbrecht, Paul" <PF...@starkinvestments.com> on 2002/07/04 01:19:32 UTC

SocketException (Invalid arg) on Solaris

Running Tomcat 4.0.1 with JBoss 2.4.4 on Solaris 8 with Sun JDK 1.31.

We see this problem on a very sporadic basis - it appears from the trace
that perhaps Socket.setTcpNoDelay() isn't supported by this JDK, and Tomcat
is not prepared to handle that.

Anyway, there is a SocketException, and the reopen attempts fails.  I
suspect the reason for that is that either the socket was never closed or
for some other reason the OS is still has the port locked.

Anyway, the end result is that after this event the server no longer accepts
HTTP requests, obviously since the listener socket is dead.  The JBoss
console, however, can still be served at port 9082.

Haven't been able to find anything in the docs to explain this.  If someone
knows a workaround- including a version upgrade- please let us know.  TIA.

[ERROR,EmbeddedCatalinaServiceSX] HttpConnector[9080] accept: 
java.net.SocketException: Invalid argument
	at java.net.PlainSocketImpl.socketSetOption(Native Method)
	at java.net.PlainSocketImpl.setOption(PlainSocketImpl.java:192)
	at java.net.Socket.setTcpNoDelay(Socket.java:377)
	at
org.apache.catalina.connector.http.HttpConnector.run(HttpConnector.java:984)
	at java.lang.Thread.run(Thread.java:484)
[INFO,EmbeddedCatalinaServiceSX] HttpConnector[9080] Opening server socket
on all host IP addresses
[ERROR,EmbeddedCatalinaServiceSX] HttpConnector[9080] socket reopen: 
java.net.BindException: Address already in use
	at java.net.PlainSocketImpl.socketBind(Native Method)
	at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:452)
	at java.net.ServerSocket.<init>(ServerSocket.java:170)
	at java.net.ServerSocket.<init>(ServerSocket.java:121)
	at
org.apache.catalina.net.DefaultServerSocketFactory.createSocket(DefaultServe
rSocketFactory.java:118)
	at
org.apache.catalina.connector.http.HttpConnector.open(HttpConnector.java:946
)
	at
org.apache.catalina.connector.http.HttpConnector.run(HttpConnector.java:1001
)
	at java.lang.Thread.run(Thread.java:484)





This transmission contains information solely for intended recipient and may
be privileged, confidential and/or otherwise protect from disclosure.  If
you are not the intended recipient, please contact the sender and delete all
copies of this transmission.  This message and/or the materials contained
herein are not an offer to sell, or a solicitation of an offer to buy, any
securities or other instruments.  The information has been obtained or
derived from sources believed by us to be reliable, but we do not represent
that it is accurate or complete.  Any opinions or estimates contained in
this information constitute our judgment as of this date and are subject to
change without notice.  Any information you share with us will be used in
the operation of our business, and we do not request and do not want any
material, nonpublic information. Absent an express prior written agreement,
we are not agreeing to treat any information confidentially and will use any
and all information and reserve the right to publish or disclose any
information you share with us.

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>