Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 68276 invoked from network); 10 Dec 2008 15:07:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 10 Dec 2008 15:07:10 -0000 Received: (qmail 56410 invoked by uid 500); 10 Dec 2008 15:07:22 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 56100 invoked by uid 500); 10 Dec 2008 15:07:21 -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 56091 invoked by uid 99); 10 Dec 2008 15:07:21 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Dec 2008 07:07:21 -0800 X-ASF-Spam-Status: No, hits=-4.0 required=10.0 tests=RCVD_IN_DNSWL_MED 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; Wed, 10 Dec 2008 15:07:05 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 3C3CC234C2CC for ; Wed, 10 Dec 2008 07:06:44 -0800 (PST) Message-ID: <1817479751.1228921604245.JavaMail.jira@brutus> Date: Wed, 10 Dec 2008 07:06:44 -0800 (PST) From: "Kevan Miller (JIRA)" To: dev@geronimo.apache.org Subject: [jira] Created: (GERONIMO-4458) Another ClassLoader deadlock during server startup MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Another ClassLoader deadlock during server startup -------------------------------------------------- Key: GERONIMO-4458 URL: https://issues.apache.org/jira/browse/GERONIMO-4458 Project: Geronimo Issue Type: Bug Security Level: public (Regular issues) Affects Versions: 2.2 Reporter: Kevan Miller Priority: Critical Fix For: 2.2 G 2.2 TCK testing is running into a ClassLoader deadlock. Here are the stacktraces: {noformat} Found one Java-level deadlock: ============================= "RMI TCP Connection(4)-9.42.75.229": waiting to lock monitor 0x0849be70 (object 0xd57192c8, a org.apache.geronimo.kernel.config.MultiParentClassLoader), which is held by "main" "main": waiting to lock monitor 0x0849bed4 (object 0xd50ca400, a org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader), which is held by "RMI TCP Connection(4)-9.42.75.229" Java stack information for the threads listed above: =================================================== "RMI TCP Connection(4)-9.42.75.229": at org.aspectj.weaver.tools.WeavingAdaptor$WeavingAdaptorMessageHolder.(WeavingAdaptor.java:498) at org.aspectj.weaver.tools.WeavingAdaptor.createMessageHandler(WeavingAdaptor.java:179) at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.initialize(ClassLoaderWeavingAdaptor.java:111) at org.aspectj.weaver.loadtime.Aj$ExplicitlyInitializedClassLoaderWeavingAdaptor.initialize(Aj.java:151) at org.aspectj.weaver.loadtime.Aj$ExplicitlyInitializedClassLoaderWeavingAdaptor.getWeavingAdaptor(Aj.java:156) at org.aspectj.weaver.loadtime.Aj$WeaverContainer.getWeaver(Aj.java:122) at org.aspectj.weaver.loadtime.Aj.preProcess(Aj.java:73) - locked <0xd4f23b40> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.aspectj.weaver.loadtime.ClassPreProcessorAgentAdapter.transform(ClassPreProcessorAgentAdapter.java:52) at org.apache.geronimo.transformer.TransformerCollection.transform(TransformerCollection.java:43) at sun.instrument.TransformerManager.transform(TransformerManager.java:169) at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:365) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:621) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$000(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClassInternal(MultiParentClassLoader.java:455) - locked <0xd4f23b40> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:69) - locked <0xd4ea35c8> (a org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:52) at org.apache.geronimo.kernel.config.MultiParentClassLoader.checkParents(MultiParentClassLoader.java:483) - locked <0xd50ca440> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClassInternal(MultiParentClassLoader.java:441) - locked <0xd50ca440> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:69) - locked <0xd50ca400> (a org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:52) at org.apache.geronimo.kernel.config.MultiParentClassLoader.checkParents(MultiParentClassLoader.java:483) - locked <0xd51f63e8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:392) - locked <0xd51f63e8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:255) - locked <0xd51f63e8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) - locked <0xd51f63e8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) at java.lang.Class.getConstructor0(Class.java:2699) at java.lang.Class.newInstance0(Class.java:326) at java.lang.Class.newInstance(Class.java:308) at org.apache.geronimo.security.jaas.ClassOptionLoginModule.initialize(ClassOptionLoginModule.java:50) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at javax.security.auth.login.LoginContext.invoke(LoginContext.java:756) at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186) at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680) at javax.security.auth.login.LoginContext.login(LoginContext.java:579) at org.apache.geronimo.jmxremoting.Authenticator.authenticate(Authenticator.java:68) at javax.management.remote.rmi.RMIServerImpl.doNewClient(RMIServerImpl.java:213) at javax.management.remote.rmi.RMIServerImpl.newClient(RMIServerImpl.java:180) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305) at sun.rmi.transport.Transport$1.run(Transport.java:159) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:155) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) "main": at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:61) - waiting to lock <0xd50ca400> (a org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:52) at org.apache.geronimo.kernel.config.MultiParentClassLoader.checkParents(MultiParentClassLoader.java:483) - locked <0xd51edbf8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClassInternal(MultiParentClassLoader.java:441) - locked <0xd51edbf8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:69) - locked <0xd51eec50> (a org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader) at org.apache.geronimo.kernel.config.ChildrenConfigurationClassLoader.loadClass(ChildrenConfigurationClassLoader.java:52) at org.apache.geronimo.kernel.config.MultiParentClassLoader.checkParents(MultiParentClassLoader.java:483) - locked <0xd57192c8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:392) - locked <0xd57192c8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:255) - locked <0xd57192c8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) - locked <0xd57192c8> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.aspectj.weaver.tools.WeavingAdaptor$WeavingAdaptorMessageHolder.(WeavingAdaptor.java:498) at org.aspectj.weaver.tools.WeavingAdaptor.createMessageHandler(WeavingAdaptor.java:179) at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.initialize(ClassLoaderWeavingAdaptor.java:111) at org.aspectj.weaver.loadtime.Aj$ExplicitlyInitializedClassLoaderWeavingAdaptor.initialize(Aj.java:151) at org.aspectj.weaver.loadtime.Aj$ExplicitlyInitializedClassLoaderWeavingAdaptor.getWeavingAdaptor(Aj.java:156) at org.aspectj.weaver.loadtime.Aj$WeaverContainer.getWeaver(Aj.java:122) at org.aspectj.weaver.loadtime.Aj.preProcess(Aj.java:73) - locked <0xd5712f78> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.aspectj.weaver.loadtime.ClassPreProcessorAgentAdapter.transform(ClassPreProcessorAgentAdapter.java:52) at org.apache.geronimo.transformer.TransformerCollection.transform(TransformerCollection.java:43) at sun.instrument.TransformerManager.transform(TransformerManager.java:169) at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:365) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:621) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$000(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:407) - locked <0xd5712f78> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:255) - locked <0xd5712f78> (a org.apache.geronimo.kernel.config.MultiParentClassLoader) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at org.apache.geronimo.gbean.runtime.GBeanInstance.(GBeanInstance.java:228) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:352) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:441) at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190) at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562) - locked <0xd500a750> (a org.apache.geronimo.kernel.config.EditableKernelConfigurationManager) at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34) at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130) at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:815) at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) at org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) at org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$752a2ecb.startConfiguration() at org.apache.geronimo.system.main.EmbeddedDaemon.doStartup(EmbeddedDaemon.java:161) at org.apache.geronimo.system.main.EmbeddedDaemon.execute(EmbeddedDaemon.java:78) at org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.main(MainConfigurationBootstrapper.java:45) at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java:65) at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:30) {noformat} -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.