geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevan Miller (JIRA)" <>
Subject [jira] Commented: (GERONIMO-4543) EAR classloader not garbage collected
Date Fri, 20 Feb 2009 17:01:09 GMT


Kevan Miller commented on GERONIMO-4543:

Do you also need to specify -J-XX:+CMSPermGenSweepingEnabled? I don't run with -XX:+UseConcMarkSweepGC.
So, I'm not very familiar with these sets of options.

Thanks for the additional info. That helps. I ran some tests with:

JAVA_OPTS="-verbose:gc -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError"

And didn't see any major problems through multiple deploy/undeploy cycles. EAR/WAR ClassLoaders
(and their Classes) were definitely being GC'ed. So, I don't see a systemic problem. Quite
possibly we're losing the first ClassLoader. Also, possible that we're temporarily holding
onto ClassLoader's through ThreadLocals. Will have to dig a bit further with a finer tooth
comb. May be a few days... 

> EAR classloader not garbage collected
> -------------------------------------
>                 Key: GERONIMO-4543
>                 URL:
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: Memory Leaks, transaction manager
>    Affects Versions: 2.2
>            Reporter: Janko Heilgeist
>            Priority: Blocker
>             Fix For: 2.2
>         Attachments: ear-with-tx.tar.gz, privileged_currenttime.patch
> The TransactionTimer$CurrentTime thread inherits the AccessControlContext of the first
EAR/WAR/EJB-jar that carries out a transaction. Thus, the particular EAR/WAR/EJB-jar's classloader
is prevented from being GCed.
> See

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message