Sigh.  Using Tomcat 6.0.26 and trying to use iCal4j to generate calendar
files so that date/time events in my app can be exported to the user's
calendar.

iCal4j uses static ThreadLocal's to protect SimpleDateFormat and some
other things.  When I shut down Tomcat I get these disturbing messages:

Aug 27, 2010 4:40:02 PM org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap SEVERE: A web application created a ThreadLocal with key of type [net.fortuna.ical4j.model.DateTime$1] (value [net.fortuna.ical4j.model.datetim...@19ed13da]) and a value of type [java.text.SimpleDateFormat] (value [java.text.simpledatefor...@6f64295a]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed. Aug 27, 2010 4:40:02 PM org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap SEVERE: A web application created a ThreadLocal with key of type [net.fortuna.ical4j.util.CompatibilityHints$1] (value [net.fortuna.ical4j.util.compatibilityhint...@1bb25a82]) and a value of type [java.util.HashMap] (value [{}]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed. Aug 27, 2010 4:40:02 PM org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap SEVERE: A web application created a ThreadLocal with key of type [net.fortuna.ical4j.model.DateTime$3] (value [net.fortuna.ical4j.model.datetim...@5a541b02]) and a value of type [java.text.SimpleDateFormat] (value [java.text.simpledatefor...@d70c6dda]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed.

The iCal4j author assures me that this isn't really a memory leak.
It's just creating some small static variables on per thread basis.
Of course, I run up to a couple hundred threads per server so I'm not
so sure.  I know I don't like seeing these messages in my log.  They are
particularly annoying for development because I look at my logs a lot
and I don't like the extra useless noise.

I'm not really clear on how ThreadLocal works.  Is there no way for me
to kill these?

Alternatively, if it really is harmless, is there a way to turn off
these messages?



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to