axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevan Miller (JIRA)" <>
Subject [jira] Updated: (AXIS-2278) Memory leak cause by JavaUtils.enumMap
Date Wed, 02 Nov 2005 15:11:55 GMT
     [ ]

Kevan Miller updated AXIS-2278:

    Attachment: enumMapPatch.txt

Here you go... I checked out from current trunk. Built from the source and then run under
Geronimo. With the change, I don't see enumMap holding onto Geronimo classloaders...

FYI, there's another potential leak around o.a.a.description.TypeDesc.classMap/classMaps (1.3
is different than trunk? Not sure why...). Either way, it's part of a chain of references
that is keeping ClassLoaders alive.  I need to investigate some more... May be a Geronimo
problem. Will raise an issue, if I confirm there is a problem.

> Memory leak cause by JavaUtils.enumMap
> --------------------------------------
>          Key: AXIS-2278
>          URL:
>      Project: Apache Axis
>         Type: Bug
>     Versions: 1.3
>  Environment: Sun JDK 1.4.2/WinXP
>     Reporter: Kevan Miller
>  Attachments: enumMapPatch.txt
> I'm chasing down some Geronimo memory leaks when deploying/undeploying the DayTrader
sample application. 
> One memory leak I see is caused by o.a.a.utils.JavaUtils.enumMap. JavaUtils is loaded
by a parent ClassLoader but is has strong references to classes (the keys of enumMap) which
were loaded by child ClassLoaders. This prevents the ClassLoader, and the classes it has loaded,
from being GC'ed. This means we'll eventually run out of PermGen memory...
> I converted enumMap to be a WeakHashMap and I now see the ClassLoaders being GC'ed. I
didn't download using cvs. So, I don't have a patch. I'm happy to generate one, if you'd like...

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message