Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 49599 invoked from network); 22 May 2009 02:26:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 22 May 2009 02:26:55 -0000 Received: (qmail 56736 invoked by uid 500); 22 May 2009 02:27:08 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 56629 invoked by uid 500); 22 May 2009 02:27:08 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 56621 invoked by uid 99); 22 May 2009 02:27:07 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 May 2009 02:27:07 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 May 2009 02:27:05 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 90885234C044 for ; Thu, 21 May 2009 19:26:45 -0700 (PDT) Message-ID: <917327863.1242959205591.JavaMail.jira@brutus> Date: Thu, 21 May 2009 19:26:45 -0700 (PDT) From: "Ivan (JIRA)" To: dev@geronimo.apache.org Subject: [jira] Resolved: (GERONIMO-4545) TomcatJAASRealm keeps reference to undeployed EAR/WAR's classloader In-Reply-To: <27810827.1235037181837.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/GERONIMO-4545?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ivan resolved GERONIMO-4545. ---------------------------- Resolution: Fixed Fix Version/s: 2.1.5 Commit changes to trunk at revision: 777350, 2.1.5 snapshot at revision: 777354 > TomcatJAASRealm keeps reference to undeployed EAR/WAR's classloader > ------------------------------------------------------------------- > > Key: GERONIMO-4545 > URL: https://issues.apache.org/jira/browse/GERONIMO-4545 > Project: Geronimo > Issue Type: Bug > Security Level: public(Regular issues) > Components: Memory Leaks, security, Tomcat > Affects Versions: 2.2 > Reporter: Janko Heilgeist > Assignee: Ivan > Priority: Blocker > Fix For: 2.1.5, 2.2 > > > Another issue where an undeployed WAR's classloader is not GCed. > {code} > --> org.apache.geronimo.tomcat.realm.TomcatJAASRealm@0x2aaab10ab438 (180 bytes) (field container:) exclude > --> org.apache.geronimo.tomcat.GeronimoStandardContext@0x2aaab322d390 (749 bytes) (field parentClassLoader:) exclude > --> org.apache.geronimo.kernel.config.MultiParentClassLoader@0x2aaab2e9b2e0 (156 bytes) (field parents:) exclude > --> [Ljava.lang.ClassLoader;@0x2aaab0b97958 (88 bytes) (Element 1 of [Ljava.lang.ClassLoader;@0x2aaab0b97958:) exclude > --> org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader@0x2aaab05e8bc0 (115 bytes) (field parent:) exclude > --> org.apache.geronimo.kernel.config.MultiParentClassLoader@0x2aaab2e9b230 (156 bytes) exclude > {code} > It looks to me like the TomcatJAASRealm (its name is "DefaultJAASRealm") is a standard realm that is used by all WARs without explicit configuration. Setting the realm of a GeronimoStandardContext makes the context store a reference to its realm AND makes the realm store a reference to the context (see org.apache.catalina.core.ContainerBase#setRealm() which GeronimoStandardContext inherits). Thus, the default realm's reference is always directed to the context of the WAR deployed most recently. This reference keeps the context from being GCed even if the corresponding WAR has been undeployed in the meantime. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.