Q: Why does tomcat hang after starting on a Linux machine (Redhat 9 etc)?
A: The most likely cause of such hang is the incompatibility of JRE with the new implementation of
POSIX library on Red Hat Linux Systems. Multithreading applications like application servers are
likely to face threading issues when using the new NPTL implementation on Linux.
To fix this issue, an environment variable LD_ASSUME_KERNEL needs to be exported before starting
Tomcat. Add the following line to Tomcat's startup.sh script.
Here is what Tomcat's release-notes have to say on Linux:
Virtual machine crashes can be experienced when using certain combinations of
kernel / glibc under Linux with Sun Hotspot 1.2 to 1.3. The crashes were
reported to occur mostly on startup. Sun JDK 1.4 does not exhibit the problems,
and neither does IBM JDK for Linux.
The problems can be fixed by reducing the default stack size. At bash shell,
do "ulimit -s 2048"; use "limit stacksize 2048" for tcsh.
GLIBC 2.2 / Linux 2.4 users should also define an environment variable:
Additionally, Redhat Linux 9.0 users should use the same setting, to avoid
(This problem does exist for JDK 1.4)
* Reference brought to you by
Bugzero, it's more than just bug tracking software!