[
https://issues.apache.org/jira/browse/FELIX-4540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Lichtin updated FELIX-4540:
----------------------------------
Environment:
java version "1.7.0_55"
Karaf 2.3.4, Felix 4.0.3
was:Karaf 2.3.4
> Deadlock in BundleWiringImpl$BundleClassLoader.loadClass
> --------------------------------------------------------
>
> Key: FELIX-4540
> URL: https://issues.apache.org/jira/browse/FELIX-4540
> Project: Felix
> Issue Type: Bug
> Environment: java version "1.7.0_55"
> Karaf 2.3.4, Felix 4.0.3
> Reporter: Martin Lichtin
>
> {noformat}
> Found one Java-level deadlock:
> =============================
> "Pax Web Runtime worker":
> waiting to lock monitor 0x000000000b0a1438 (object 0x00000000fb585990, a
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5),
> which is held by "Thread-15"
> "Thread-15":
> waiting to lock monitor 0x000000000b0a1388 (object 0x00000000f7681f70, a
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5),
> which is held by "Pax Web Runtime worker"
> Java stack information for the threads listed above:
> ===================================================
> "Pax Web Runtime worker":
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1836)
> - waiting to lock <0x00000000fb585990> (a
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1317)
> at
> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1481)
> at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1427)
> at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.ops4j.pax.web.service.internal.Activator.updateController(Activator.java:247)
> at
> org.ops4j.pax.web.service.internal.Activator$DynamicsServiceTrackerCustomizer$1.run(Activator.java:376)
> at
> org.ops4j.pax.web.service.internal.Executor$Future.run(Executor.java:47)
> at
> org.ops4j.pax.web.service.internal.Executor$Worker.run(Executor.java:128)
> "Thread-15":
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1836)
> - waiting to lock <0x00000000f7681f70> (a
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1317)
> at
> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1481)
> at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1427)
> at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2128)
> - locked <0x00000000fb585990> (a
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5)
> at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1432)
> at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1317)
> at
> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1481)
> at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1427)
> at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
> at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.ops4j.pax.web.extender.whiteboard.internal.util.WebContainerUtils.webContainerAvailable(WebContainerUtils.java:46)
> at
> org.ops4j.pax.web.extender.whiteboard.internal.util.WebContainerUtils.<clinit>(WebContainerUtils.java:35)
> at
> org.ops4j.pax.web.extender.whiteboard.internal.Activator.start(Activator.java:78)
> at
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:645)
> at org.apache.felix.framework.Felix.activateBundle(Felix.java:1977)
> at org.apache.felix.framework.Felix.startBundle(Felix.java:1895)
> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:944)
> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:931)
> at
> org.apache.karaf.features.internal.FeaturesServiceImpl.installFeatures(FeaturesServiceImpl.java:488)
> at
> org.apache.karaf.features.internal.FeaturesServiceImpl.installFeature(FeaturesServiceImpl.java:405)
> at
> org.apache.karaf.features.internal.FeaturesServiceImpl.installFeature(FeaturesServiceImpl.java:401)
> at
> org.apache.karaf.features.command.InstallFeatureCommand.doExecute(InstallFeatureCommand.java:62)
> at
> org.apache.karaf.features.command.FeaturesCommandSupport.doExecute(FeaturesCommandSupport.java:41)
> at
> org.apache.karaf.shell.console.OsgiCommandSupport.execute(OsgiCommandSupport.java:38)
> at
> org.apache.felix.gogo.commands.basic.AbstractCommand.execute(AbstractCommand.java:35)
> at
> org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:78)
> at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:474)
> at
> org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:400)
> at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183)
> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120)
> at
> org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:89)
> at org.apache.karaf.shell.console.jline.Console.run(Console.java:183)
> at java.lang.Thread.run(Thread.java:745)
> at
> org.apache.karaf.shell.ssh.ShellFactoryImpl$ShellImpl$4.doRun(ShellFactoryImpl.java:144)
> at
> org.apache.karaf.shell.ssh.ShellFactoryImpl$ShellImpl$4$1.run(ShellFactoryImpl.java:135)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:356)
> at
> org.apache.karaf.shell.ssh.ShellFactoryImpl$ShellImpl$4.run(ShellFactoryImpl.java:133)
> Found 1 deadlock.
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.2#6252)