Details
Description
Tomcat 6.0.24 reports the following during shutdown. If possible, ICEfaces 2.0 should not make use of any Threads or ThreadLocal variables, so these should be looked at in detail.
SEVERE: A web application appears to have started a thread named [Session Monitor] but has failed to stop it. This is very likely to create a memory leak.
Feb 3, 2010 10:27:23 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: A web application appears to have started a thread named [Monitor Runner] but has failed to stop it. This is very likely to create a memory leak.
Feb 3, 2010 10:27:23 AM org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap
SEVERE: A web application created a ThreadLocal with key of type [com.icesoft.faces.webapp.http.servlet.MainServlet.CurrentContextPath] (value [com.icesoft.faces.webapp.http.servlet.MainServlet$CurrentContextPath@6d0d1642]) and a value of type [null] (value [null]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed.
Issue Links
- blocks
-
ICE-5857 Logging issue on Tomcat6 server
- Closed
Make use of timestamps rather than timer threads. If resources need to be cleaned up after a time interval, it is sufficient to either allow the session timeout to handle the cleanup or perform the cleanup on the next available request when the timestamp has been exceeded.