Need an easy way to shutdown geotools without having memory leaks
-----------------------------------------------------------------

                 Key: GEOT-3330
                 URL: http://jira.codehaus.org/browse/GEOT-3330
             Project: GeoTools
          Issue Type: Bug
    Affects Versions: 2.7-M3
         Environment: Linux saiph 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 
20:36:48 UTC 2010 i686 GNU/Linux
Tomcat 6.0.29
            Reporter: Robert Olofsson
            Priority: Critical


Running tomcat and reloading the a webapp that uses some small parts of 
geotools results in the following:

SEVERE: The web application [/bios] created a ThreadLocal with key of type 
[java.lang.ThreadLocal] (value [java.lang.threadlo...@1624517]) and a value of 
type 
[org.geotools.referencing.operation.projection.TransverseMercator.Provider] 
(value [PROJECTION["Transverse_Mercator"]]) but failed to remove it when the 
web application was stopped. This is very likely to create a memory leak.
Dec 1, 2010 10:35:58 AM org.apache.catalina.loader.WebappClassLoader 
clearThreadLocalMap
SEVERE: The web application [/bios] created a ThreadLocal with key of type 
[java.lang.ThreadLocal] (value [java.lang.threadlo...@a5f70c]) and a value of 
type [org.geotools.referencing.wkt.Formatter] (value []) but failed to remove 
it when the web application was stopped. This is very likely to create a memory 
leak.
Dec 1, 2010 10:35:58 AM org.apache.catalina.loader.WebappClassLoader 
clearThreadLocalMap
SEVERE: The web application [/bios] created a ThreadLocal with key of type 
[java.lang.ThreadLocal] (value [java.lang.threadlo...@a5f70c]) and a value of 
type [org.geotools.referencing.wkt.Formatter] (value []) but failed to remove 
it when the web application was stopped. This is very likely to create a memory 
leak.


We already call:
        org.geotools.util.WeakCollectionCleaner.DEFAULT.exit ();
        org.geotools.referencing.factory.DeferredAuthorityFactory.exit ();

in a shutdown hook to remove some threads.
There is however no easy way to remove the ThreadLocals.

These classes are also classes that we do not use directly, they are used by 
geotools internally and
it is quite time consuming to profile and try to figure out what classes that 
may have a shutdown/remove/cleanup/exit
method and if that method actually works.

Wanted:
One class: org.geotools.util.ShutDownGeoToolsWithoutMemoryLeaks that has a 
method shutdown() that does all the
neccessary calls to shutdown geotools without memory leaks.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to