You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Thomas Diesler (JIRA)" <ji...@apache.org> on 2009/07/08 23:55:14 UTC

[jira] Updated: (FELIX-1311) Felix shutdown that may lead to dead lock

     [ https://issues.apache.org/jira/browse/FELIX-1311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thomas Diesler updated FELIX-1311:
----------------------------------

    Attachment: thread-dump.txt

> Felix shutdown that may lead to dead lock
> -----------------------------------------
>
>                 Key: FELIX-1311
>                 URL: https://issues.apache.org/jira/browse/FELIX-1311
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: felix-1.8.1
>            Reporter: Thomas Diesler
>         Attachments: thread-dump.txt
>
>
> There seems to be a race condition on felix shutdown that may lead to a dead lock. 
> Java stack information for the threads listed above:
> ===================================================
> "FelixShutdown":
> 	at org.apache.felix.framework.Felix.setBundleStateAndNotify(Felix.java:4258)
> 	- waiting to lock <0x8c92ec10> (a [Ljava.lang.Object;)
> 	at org.apache.felix.framework.Felix$SystemBundleActivator.run(Felix.java:4061)
> 	- locked <0x8c92e490> (a org.apache.felix.framework.Felix)
> 	at java.lang.Thread.run(Thread.java:619)
> "main":
> 	at org.apache.felix.framework.BundleImpl.getLockingThread(BundleImpl.java:1037)
> 	- waiting to lock <0x8c92e490> (a org.apache.felix.framework.Felix)
> 	at org.apache.felix.framework.Felix.releaseBundleLock(Felix.java:4336)
> 	- locked <0x8c92ec10> (a [Ljava.lang.Object;)
> 	at org.apache.felix.framework.Felix.stopBundle(Felix.java:1892)
> 	at org.apache.felix.framework.Felix.stop(Felix.java:752)
> 	at org.jboss.osgi.felix.framework.FelixIntegration.stop(FelixIntegration.java:191)
> 	at org.jboss.osgi.spi.testing.internal.EmbeddedRuntime.shutdown(EmbeddedRuntime.java:152)
> 	at org.jboss.test.osgi.bootstrap.CapabilityTestCase.testJAXBCapability(CapabilityTestCase.java:103)
> 	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 org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> 	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> 	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:44)
> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
> 	at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
> 	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> 	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
> 	at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
> 	at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
> 	at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
> 	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 org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338)
> 	at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997)
> Found 1 deadlock.

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