Summary: | Tomcat deadlocks under extreme system load | ||
---|---|---|---|
Product: | Tomcat 3 | Reporter: | Peter <peter.mezey> |
Component: | Connectors | Assignee: | Tomcat Developers Mailing List <dev> |
Status: | CLOSED LATER | ||
Severity: | normal | ||
Priority: | P1 | ||
Version: | 3.2.1 Final | ||
Target Milestone: | --- | ||
Hardware: | Sun | ||
OS: | Solaris |
Description
Peter
2001-02-26 17:35:24 UTC
This may be solved by the fix for bug 1006 which will appear in 3.2.2b2. I'll leave this bug report open incase it isn't fixed so that it be investigated further in a later release. The most important question is if the JSP pages are using sessions ( the default is true ). That results in memory growing ( and there's nothing to do about it - except maybe limitting the number of allowed sessions ). It would be very usefull to try the same thing using "ab" from apache ( apache bench ) with only one of the JSPs. Thanks Costin for your tip on sessions. I regenerated the whole document tree using the <%@ page session="false" %> directive for each and re-ran the verity spider program. I am also using Tomcat 3.2.2b2 now. It took much longer to get stuck, but it did get stuck once again. At first I thought the 3.2.2b2 had solved the problem because I was able to run through a whole document tree. However, repeated efforts to duplicate the success show that 3.2.2b2 does seem to last longer, but still eventually winds up with a full 100% iowait state condition - given a large enough document tree to index. One other thing I've noticed is that the "SIZE" of tomcat as reported by top approached the maximum physical amount of memory on the box (256MB on the box, approx 227MB for tomcat). I did not see any memory exceptions reported by tomcat, but is it possible that the GC is constantly going off trying to get more memory, it's unsuccessful, and instead of throwing an exception, it just runs again? I did not make note of the swap space left...I'll have to re-do this and check that as well. One other piece of information is that the mod_jk.log file is full of errors like the following: [jk_ajp13_worker.c (619)]: Error reading request [jk_ajp13_worker.c (619)]: Error reading request [jk_ajp13_worker.c (203)]: connection_tcp_get_message: Error - jk_tcp_socket_rec vfull failed [jk_ajp13_worker.c (619)]: Error reading request I'll close this bug. It should have been fixed in jk1.2 and jk2 - please verify and if it's still a problem reopen the bug. |