Hi, I'm running an application on Tomcat 9.0.55 on x86_64 Linux with OpenJDK JRE-11.0.13+8 and have problems shutting down Tomcat in certain ways.
When I shutdown Tomcat via 'catalina.sh stop', it shuts down mostly (most threads are gone) but send a thread dump to catalina.out and is later killer by an OS signal. When shutting down Tomcat via the shutdown listener on port 8005, it also shuts down mostly but without the thread dump in catalina.out. Sending SIGTERM later to the still running java process terminates it. So both methods somehow terminate Tomcat partly but not completely. When simply sending SIGTERM on the OS level, Tomcat shuts down cleanly and terminates without issues. One thing in common is that I always see these messages while shutting down: 30-Nov-2021 13:59:36.985 SEVERE [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesRmiTargets Found RMI Target with stub class class [sun.rmi.registry.RegistryImpl_Stub] and value [RegistryImpl_Stub[UnicastRef [liveRef: [endpoint:[157.161.91.47:2071](local),objID:[0:0:0, 0]]]]]. This RMI Target has been forcibly removed to prevent a memory leak. 30-Nov-2021 13:59:36.987 SEVERE [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesRmiTargets Found RMI Target with stub class class [com.sun.proxy.$Proxy51] and value [Proxy[ShopdbCacheSynchronizer,RemoteObjectInvocationHandler[UnicastRef [liveRef: [endpoint:[157.161.91.47:1096](local),objID:[-6f4b2f9d:17d70eb1ef4:-7ffd, -4005526521234186948]]]]]]. This RMI Target has been forcibly removed to prevent a memory leak. 30-Nov-2021 13:59:36.987 SEVERE [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesRmiTargets Found RMI Target with stub class class [sun.rmi.registry.RegistryImpl_Stub] and value [RegistryImpl_Stub[UnicastRef [liveRef: [endpoint:[157.161.91.47:1096](local),objID:[0:0:0, 0]]]]]. This RMI Target has been forcibly removed to prevent a memory leak. Why do the three methods to shutdown Tomcat differ and how can I make 'catalina.sh stop' or the shutdown listener work the same way like sending the OS signal. I've tried, beside a lot of other things, to set skipMemoryLeakChecksOnJvmShutdown="true" in context.xml but it seems to change nothing at all. Any help would be much appreciated. Thanks, Simon --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org