Bill, Remy, I have seen this one once on our production system running Tomcat 3.3.1 with AJP1.3, Apache 1.3.27, mod_jk 1.1.0 This is on Sparc Solaris 8 running JDK 1.3.1_04. 11019 is our ajp13 port (which we uswe also as shutdown port. No AJP 1.2 port open) Our webservers use the lb_worker to connect to the Tomcat servers (different machine)
It occured, when we had a bug in our application causing an endless stacktrace, which filled up our logs.( 5000 !!! MB per minute). At some stage, the JVM crashed out after a stack overflow. Before the crash, tomcat got slower and slower due to the massive logging. 11019 is our ajp13 port (which we uswe also as shutdown port. No AJP 1.2 port open) I can reproduce the endless stacktrace, but am not sure to get the ServerSocket error (can not reproduce this on our production server for obvious reasons) PoolTcpEndpoint: Endpoint ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=11019] ignored exception: java.net.SocketException: Interrupted system call java.net.SocketException: Interrupted system call at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:463) at java.net.ServerSocket.implAccept(ServerSocket.java:238) at java.net.ServerSocket.accept(ServerSocket.java:217) at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultSe rverSocketFactory.java:107) at org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoint.java :326) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:472) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:516) at java.lang.Thread.run(Thread.java:479) 2002-10-05 16:01:24 - Ctx(/einsurance) : IllegalStateException in R( /einsurance + /view + /screens/car/carDescription.htm) - java.lang.IllegalStateException: Cannot forward because the response has already been committed at org.apache.tomcat.facade.RequestDispatcherImpl.doForward(RequestDispatcherIm pl.java:207) at org.apache.tomcat.facade.RequestDispatcherImpl.forward(RequestDispatcherImpl .java:174) at de.einsurance.gui.framework.ExceptionHandler.handle(ExceptionHandler.java:25 5) at de.einsurance.gui.framework.ExceptionHandler.handle(ExceptionHandler.java:15 1) at de.einsurance.gui.framework.ExtendedActionServlet.process(ExtendedActionServ let.java:69) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:491) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at org.apache.tomcat.facade.ServletHandler.doService(ServletHandler.java:574) at org.apache.tomcat.core.Handler.invoke(Handler.java:322) at org.apache.tomcat.core.Handler.service(Handler.java:235) at org.apache.tomcat.facade.ServletHandler.service(ServletHandler.java:485) at org.apache.tomcat.facade.RequestDispatcherImpl.doForward(RequestDispatcherIm pl.java:272) at org.apache.tomcat.facade.RequestDispatcherImpl.forward(RequestDispatcherImpl .java:174) at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.ja va:1758) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1595) at de.einsurance.gui.framework.ExtendedActionServlet.process(ExtendedActionServ let.java:65) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:491) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at org.apache.tomcat.facade.ServletHandler.doService(ServletHandler.java:574) at org.apache.tomcat.core.Handler.invoke(Handler.java:322) at org.apache.tomcat.core.Handler.service(Handler.java:235) at org.apache.tomcat.facade.ServletHandler.service(ServletHandler.java:485) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:91 7) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:833) at org.apache.tomcat.modules.server.Ajp13Interceptor.processConnection(Ajp13Int erceptor.java:341) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:494) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:516) at java.lang.Thread.run(Thread.java:479) Cheers, Hans > -----Ursprungliche Nachricht----- > Von: Remy Maucherat [mailto:remm@;apache.org] > Gesendet: Freitag, 18. Oktober 2002 20:15 > An: Tomcat Developers List > Betreff: Re: Bug 13736 > > > Bill Barker wrote: > > > +1. As I said above, it probably hasn't shown up in 3.3 mostly because > > AJP13 has many fewer accepts. > > I'll fix it then. > > You have to be careful that no IOException should end up in that code, > otherwise, for each one the server socket will be restarted (not good). > With HTTP/1.1, the only thing that can happen is when there's an > exception in the accept, which apparently screws up the server socket. > > It would be nice if this was thouroughly tested for problems after I > commit the fix. > > Remy > > > -- > To unsubscribe, e-mail: > <mailto:tomcat-dev-unsubscribe@;jakarta.apache.org> > For additional commands, e-mail: > <mailto:tomcat-dev-help@;jakarta.apache.org> > > -- To unsubscribe, e-mail: <mailto:tomcat-dev-unsubscribe@;jakarta.apache.org> For additional commands, e-mail: <mailto:tomcat-dev-help@;jakarta.apache.org>