I experienced the same problem on JBoss 3.2.2 with JVM 1.4.2 on Linux.
I've now switched to Tomcat 5 which seams to have solved that problem and also given automatic handling of virtual-hosts.
However, I'm having some charset problems that didn't happen with Tomcat 4. Maybe that's a problem with Struts though.
I recommend using Jetty, it's been better than Tomcat in my experience.
Using another tomcat or jetty is not an option for us (too many applications affected).
It seems as if all the workers (defined for the CoyoteConnector) are busy. The ConnectionTimeout is set to 60000 (does that mean 60000 miliseconds, i.e. 60 seconds?).
Is there any configuragtion option: tomcat should tell me, if requests cannot be processed because of insufficient workers.
And can I advice tomcat to cancel a request after some period of time (if e.g. a sevlet is looping)?
Thanks in advance,
a correction on my earlier post. I'm still experiencing the problem with Tomcat 5. Doing a thread stacktrace shows that there are plenty of http worker threads idling as the trace below shows, but still I don't get any response.
"http8080-Processor1" daemon prio=1 tid=0x0817d8f0 nid=0x5a21 in Object.wait() \ [8c3fd000..8c3fd854] at java.lang.Object.wait(Native Method) - waiting on <0x4d0d3bd0> (a org.apache.tomcat.util.threads.ThreadPool$\ ControlRunnable) at java.lang.Object.wait(Object.java:429) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Thread\ Pool.java:653) - locked <0x4d0d3bd0> (a org.apache.tomcat.util.threads.ThreadPool$Cont\ rolRunnable) at java.lang.Thread.run(Thread.java:534)
There is a well known problem with rh9 linux due to issues with the NTPL thread library. To work around it set the LD_ASSUME_KERNEL=2.4.1 env variable to revert to the previous behavior.
sounds like that could be the issue in my case since the server with problems is a RH9 machine.
I will set the env variable you suggested and report back if it works.