You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Patricio Barletta (JIRA)" <ji...@apache.org> on 2014/01/15 19:17:31 UTC

[jira] [Created] (FELIX-4386) Deadlock while creating composite instances programatically

Patricio Barletta created FELIX-4386:
----------------------------------------

             Summary: Deadlock while creating composite instances programatically
                 Key: FELIX-4386
                 URL: https://issues.apache.org/jira/browse/FELIX-4386
             Project: Felix
          Issue Type: Bug
          Components: iPOJO
            Reporter: Patricio Barletta


DEADLOCK DETECTED:
==================

[deadlocked thread] [iPOJO] pool-1-thread-1:
-------------------------------------------
Thread '[iPOJO] pool-1-thread-1' is waiting to acquire lock 'org.apache.felix.ipojo.composite.CompositeFactory@4b61f9d9' that is held by thread '[ACTIVE] ExecuteThread: '2'

Stack trace:
------------
	org.apache.felix.ipojo.IPojoFactory.getComponentDescription(IPojoFactory.java:371)
	org.apache.felix.ipojo.composite.instance.InstanceHandler.__M_bindFactory(InstanceHandler.java:179)
	org.apache.felix.ipojo.composite.instance.InstanceHandler.bindFactory(InstanceHandler.java)
	sun.reflect.GeneratedMethodAccessor149.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	java.lang.reflect.Method.invoke(Method.java:597)
	org.apache.felix.ipojo.util.Callback.call(Callback.java:260)
	org.apache.felix.ipojo.handlers.dependency.DependencyCallback.callOnInstance(DependencyCallback.java:303)
	org.apache.felix.ipojo.handlers.dependency.Dependency.invokeCallback(Dependency.java:340)
	org.apache.felix.ipojo.handlers.dependency.Dependency.onObjectCreation(Dependency.java:290)
	org.apache.felix.ipojo.handlers.dependency.DependencyHandler.__M_onCreation(DependencyHandler.java:524)
	org.apache.felix.ipojo.handlers.dependency.DependencyHandler.onCreation(DependencyHandler.java)
	org.apache.felix.ipojo.HandlerManager.start(HandlerManager.java:132)
	org.apache.felix.ipojo.composite.CompositeManager.start(CompositeManager.java:355)
	org.apache.felix.ipojo.composite.CompositeFactory.createInstance(CompositeFactory.java:146)
	org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java:319)
	org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java:240)
	foo.activator.DeployInstanceActivator$1.addingService(DeployInstanceActivator.java:43)
	org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
	org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
	org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
	org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
	org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894)
	org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932)
	org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:793)
	org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:543)
	org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4419)
	org.apache.felix.framework.Felix.registerService(Felix.java:3423)
	org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:346)
	org.apache.felix.ipojo.IPojoFactory.start(IPojoFactory.java:686)
	org.apache.felix.ipojo.extender.internal.linker.ManagedType$ExtensionSupport$1.call(ManagedType.java:229)
	org.apache.felix.ipojo.extender.internal.linker.ManagedType$ExtensionSupport$1.call(ManagedType.java:216)
	org.apache.felix.ipojo.extender.internal.queue.JobInfoCallable.call(JobInfoCallable.java:114)
	java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	java.util.concurrent.FutureTask.run(FutureTask.java:138)
	java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	java.lang.Thread.run(Thread.java:662)

[deadlocked thread] [ACTIVE] ExecuteThread: '2'
--------------------------------------------------------------------------------------------------
Thread '[ACTIVE] ExecuteThread: '2' waiting to acquire lock 'org.apache.felix.ipojo.composite.CompositeFactory@d5a3c39' that is held by thread '[iPOJO] pool-1-thread-1'

Stack trace:
------------
	org.apache.felix.ipojo.IPojoFactory.getComponentDescription(IPojoFactory.java:371)
	org.apache.felix.ipojo.composite.instance.InstanceHandler.__M_bindFactory(InstanceHandler.java:179)
	org.apache.felix.ipojo.composite.instance.InstanceHandler.bindFactory(InstanceHandler.java)
	sun.reflect.GeneratedMethodAccessor149.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	java.lang.reflect.Method.invoke(Method.java:597)
	org.apache.felix.ipojo.util.Callback.call(Callback.java:260)
	org.apache.felix.ipojo.handlers.dependency.DependencyCallback.callOnInstance(DependencyCallback.java:303)
	org.apache.felix.ipojo.handlers.dependency.Dependency.invokeCallback(Dependency.java:340)
	org.apache.felix.ipojo.handlers.dependency.Dependency.onObjectCreation(Dependency.java:290)
	org.apache.felix.ipojo.handlers.dependency.DependencyHandler.__M_onCreation(DependencyHandler.java:524)
	org.apache.felix.ipojo.handlers.dependency.DependencyHandler.onCreation(DependencyHandler.java)
	org.apache.felix.ipojo.HandlerManager.start(HandlerManager.java:132)
	org.apache.felix.ipojo.composite.CompositeManager.start(CompositeManager.java:355)
	org.apache.felix.ipojo.composite.CompositeFactory.createInstance(CompositeFactory.java:146)
	org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java:319)
	org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java:240)
	foo.activator.DeployInstanceActivator$1.addingService(DeployInstanceActivator.java:43)
	org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
	org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
	org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
	org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)
	org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:317)
	org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261)
	foo.activator.DeployInstanceActivator.start(DeployInstanceActivator.java:74)
	org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:645)
	org.apache.felix.framework.Felix.activateBundle(Felix.java:2146)
	org.apache.felix.framework.Felix.startBundle(Felix.java:2064)
	org.apache.felix.framework.Felix.updateBundle(Felix.java:2404)
	org.apache.felix.framework.BundleImpl.update(BundleImpl.java:973)
	...

> 




--
This message was sent by Atlassian JIRA
(v6.1.5#6160)