我有一个Tomcat 7在Linux中运行,我通过$ CATALINA_HOME / bin / startup.sh启动并通过$ CATALINA_HOME / bin / shutdown.sh关闭
从/etc/init.d
除了1个问题,所有是确定。有时tomcat不停止。
虽然我停止它,我看到在catalina.out日志,正在下降,如果我做ps -ef我仍然可以看到过程运行。
可能是什么问题呢?如何调试这个?我的感觉是,这是与线程相关。
所以可疑的部分如下:
1)我使用Log4j的LogManager来检测log4j配置是否已经改变,但我做了Log4jManager.shutdown on一个contextDestroyed ServletContextListener
2)我使用H2数据库,我看到关机:
SEVERE: The web application [/MyApplication] appears to have started a
thread named [H2 Log Writer MYAPPLICATION] but has failed to stop it.
This is very likely to create a memory leak
SEVERE: The web application [/MyApplication] appears to have started a
thread named [H2 File Lock Watchdog
/opt/myOrg/tomcat/webapps/MyApplication/db/myDatabase.lock.db] but has
failed to stop it. This is very likely to create a memory leak. Apr 2,
2012 9:08:08 AM org.apache.catalina.loader.WebappClassLoader
clearReferencesThreads SEVERE: The web application [/MyApplication]
appears to have started a thread named [FileWatchdog] but has failed
to stop it. This is very likely to create a memory leak.
任何帮助吗?如何在这里检测到问题?
更新:
我做了一个杀死-3由@daveb建议,并在catalina.out我看到:
JVMDUMP006I Processing dump event “user”, detail “” – please wait.
JVMDUMP032I JVM requested Java dump using
‘/etc/init.d/javacore.20120402.093922.2568.0001.txt’ in response to an
event JVMDUMP010I Java dump written to
/etc/init.d/javacore.20120402.093922.2568.0001.txt JVMDUMP013I
Processed dump event “user”, detail “”.
/etc/init.d中有一个javacore,但我不知道如何处理它。也就是说我应该调查什么部分