|
From: Steven J. O. <puf...@da...> - 2005-03-03 22:47:58
|
Hi,
I could really use some advice here...
We're running the following configuration under the wrapper and
seeing tomcat crash and sometimes hang (not letting go of port 8080
and needing "killall -9 java" to get a restart).
Linux version 2.4.20-021stab022.5.777-enterprise (st...@cu...)
(gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)) #1 SMP Fri Sep
3 12:45:02 MSD 2004
Java HotSpot(TM) Client VM (build 1.4.2_02-b03, mixed mode)
Tomcat 4.1.30
The application code isn't doing anything dramatic or arcane,
pretty vanilla webapp stuff, so I'm skeptical that it's the app code
doing it (of course I *wrote* the app code, so my objectivity is not
beyond question :-).
The crash seems to happen intermittently, with no correlation to
load. Sometimes it happens after eight hours of inactivity. Sometimes
it happens while the application is chugging away. Sometimes it hangs
(and hangs on to port 8080), sometimes wrapper cleanly restarts it.
On a few occasions when it hung in the middle heavy activity we
saw reports of OutOfMemory errors in the log - but in the same
vicinity of the log, a couple dozen lines before the hang, we had
Runtime.freeMemory()/totalMemory()/maxMemory() printed out and we were
only using 100MB out of 500MB.
Somebody said that on a 2.4 kernel this looked like a classic
LD_ASSUME_KERNEL issue, so I tried to figure out how to set
LD_ASSUME_KERNEL under the wrapper. I finally called my hosting
service's tech support and they set it in /etc/profile:
----------------------------------------------------------------------
$ cat /etc/profile
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
#Declare ASSUME_KERNEL
export LD_ASSUME_KERNEL=2.2.5
|