[ 
https://issues.apache.org/jira/browse/GERONIMO-4543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12674936#action_12674936
 ] 

Janko Heilgeist commented on GERONIMO-4543:
-------------------------------------------

There is still another reference from CurrentTime to my EAR's classloader 
through the inheritableThreadLocals field:

{code}
Java Local Reference (from 
org.apache.geronimo.transaction.manager.transactiontimer$currentt...@0x2aaab1e8cd68)
 exclude  :
--> 
org.apache.geronimo.transaction.manager.transactiontimer$currentt...@0x2aaab1e8cd68
 (164 bytes) (field inheritableThreadLocals:) exclude
--> java.lang.threadlocal$threadlocal...@0x2aaab2485938 (32 bytes) (field 
table:) exclude
--> [Ljava.lang.ThreadLocal$ThreadLocalMap$Entry;@0x2aaab2454dc0 (144 bytes) 
(Element 1 of [Ljava.lang.ThreadLocal$ThreadLocalMap$Entry;@0x2aaab2454dc0:) 
exclude
--> java.lang.threadlocal$threadlocalmap$en...@0x2aaab2fe39e8 (56 bytes) (field 
value:) exclude
--> 
org.apache.xbean.naming.context.writablecontext$nestedwritablecont...@0x2aaab055f088
 (89 bytes) (field bindingsRef:) exclude
--> java.util.concurrent.atomic.atomicrefere...@0x2aaab2031940 (24 bytes) 
(field value:) exclude
--> java.util.hash...@0x2aaab22a0040 (64 bytes) (field table:) exclude
--> [Ljava.util.HashMap$Entry;@0x2aaab2031c00 (144 bytes) (Element 3 of 
[Ljava.util.HashMap$Entry;@0x2aaab2031c00:) exclude
--> java.util.hashmap$en...@0x2aaab20322d0 (44 bytes) (field value:) exclude
--> 
org.apache.xbean.naming.context.writablecontext$nestedwritablecont...@0x2aaab055f1a8
 (89 bytes) (field contextFederation:) exclude
--> org.apache.xbean.naming.context.contextfederat...@0x2aaab0a133e8 (32 bytes) 
(field federatedContextRef:) exclude
--> java.util.concurrent.atomic.atomicrefere...@0x2aaab2031a30 (24 bytes) 
(field value:) exclude
--> java.util.collections$unmodifiable...@0x2aaab2031a48 (24 bytes) (field c:) 
exclude
--> java.util.linkedhash...@0x2aaab2031a60 (24 bytes) (field map:) exclude
--> java.util.linkedhash...@0x2aaab1f2a660 (73 bytes) (field header:) exclude
--> java.util.linkedhashmap$en...@0x2aaab22a0140 (60 bytes) (field after:) 
exclude
--> java.util.linkedhashmap$en...@0x2aaab22a0180 (60 bytes) (field key:) exclude
--> org.apache.xbean.naming.context.immutablecont...@0x2aaab1f2a918 (65 bytes) 
(field absoluteIndex:) exclude
--> java.util.collections$unmodifiable...@0x2aaab2032600 (48 bytes) (field m:) 
exclude
--> java.util.hash...@0x2aaab0a13568 (64 bytes) (field table:) exclude
--> [Ljava.util.HashMap$Entry;@0x2aaab2031d30 (144 bytes) (Element 15 of 
[Ljava.util.HashMap$Entry;@0x2aaab2031d30:) exclude
--> java.util.hashmap$en...@0x2aaab2032690 (44 bytes) (field value:) exclude
--> org.apache.geronimo.naming.reference.handledelegaterefere...@0x2aaab1f2a6b0 
(80 bytes) (field classLoader:) exclude
--> org.apache.geronimo.kernel.config.multiparentclassloa...@0x2aaab2fbc000 
(156 bytes) exclude 
{code}

I assume, that it is the inheritable component context from 
org.apache.geronimo.naming.java.RootContext. But I can't find a way to fix 
this...

> EAR classloader not garbage collected
> -------------------------------------
>
>                 Key: GERONIMO-4543
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4543
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: transaction manager
>    Affects Versions: 2.2
>            Reporter: Janko Heilgeist
>         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 http://www.nabble.com/PermGen-space-issues-td22079768s134.html

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

Reply via email to