While using Tomcat 5.0.19 on Solaris 8 I occasionally see more than one
Tomcat process running (as reported by ps -aef). In each case the "extra"
process is a child of the original Tomcat process, exists for no more than a
few seconds, seems to cause no trouble, and (troublingly?) leaves no trace
in the log files. For example:

  root  5425     1  2   Jun 30 ?       107:54 /usr/java/bin/java -Xmx512m
-Dtomcat=1 -Djava.awt.headless=true -Djava.endorsed
  root 20981  5425  0 05:02:17 ?        0:00 /usr/java/bin/java -Xmx512m
-Dtomcat=1 -Djava.awt.headless=true -Djava.endorsed

Another instance captured using /usr/ucb/ps -auxwww, which makes it appear
to be an identical process started by startup.sh / catalina.sh:

  root      5425 37.0 26.4274024264592 ?        R   Jun 30 146:49
/usr/java/bin/java -Xmx512m -Dtomcat=1 -Djava.awt.headless=true
-Djava.endorsed.dirs=/usr/local/jakarta-tomcat-5.0.19/common/endorsed
-classpath
/usr/java/lib/tools.jar:/usr/local/jakarta-tomcat-5.0.19/bin/bootstrap.jar:/
usr/local/jakarta-tomcat-5.0.19/bin/commons-logging-api.jar
-Dcatalina.base=/usr/local/jakarta-tomcat-5.0.19
-Dcatalina.home=/usr/local/jakarta-tomcat-5.0.19
-Djava.io.tmpdir=/usr/local/jakarta-tomcat-5.0.19/temp
org.apache.catalina.startup.Bootstrap start
  root     23399  0.0  0.0274016    ? ?        R 21:03:11  0:00
/usr/java/bin/java -Xmx512m -Dtomcat=1 -Djava.awt.headless=true
-Djava.endorsed.dirs=/usr/local/jakarta-tomcat-5.0.19/common/endorsed
-classpath
/usr/java/lib/tools.jar:/usr/local/jakarta-tomcat-5.0.19/bin/bootstrap.jar:/
usr/local/jakarta-tomcat-5.0.19/bin/commons-logging-api.jar
-Dcatalina.base=/usr/local/jakarta-tomcat-5.0.19
-Dcatalina.home=/usr/local/jakarta-tomcat-5.0.19
-Djava.io.tmpdir=/usr/local/jakarta-tomcat-5.0.19/temp
org.apache.catalina.startup.Bootstrap start

My basic question is under what circumstances does Tomcat create a child
and/or fork? I have the JSP compiler "fork" setting set to false in
/usr/local/tomcat/conf/web.xml, and in any case the JSP pages in use at the
time hadn't changed for months (& therefore recompilation shouldn't even be
a factor). I start Tomcat with $CATALINA_HOME/bin/startup.sh. By the way, I
rather accidentally stumbled across the "extra" processes while debugging
Tomcat memory usage with a shell script that does a ps -aef every minute or
so, and occasionally finds more than 1 process.

Thanks in advance for any help/information/pointers.

--
Jim

Reply via email to