Thanks for the update Gavin,

it's really helpful.

Now that I have released Cellar 2.2.5, I'm switching back to Karaf, including this issue.

Regards
JB

On 11/30/2012 02:40 AM, gavin_scott wrote:
Is there a jira ticket for this?

I think I'm seeing the same issue although the circumstances are different.
I am not using ipojo.  I have an application that uses openjpa and the karaf
jpa and jndi features.  I've been trying to upgrade to karaf 2.3.0 and my
pax exam tests are deadlocking.  Partial thread dump is pasted at the end of
this mail, I can paste the full thing into a jira ticket.

Implementing the workaround that Bengt Rodehav describes (creating my own
jpa and jndi features that do not contain aries.util) seems to fix the
problem.

--
Gavin Scott
[email protected]

"FelixFrameworkWiring" daemon prio=6 tid=0x000000000c263000 nid=0x1860
waiting for monitor entry [0x0000000010b9d000]
    java.lang.Thread.State: BLOCKED (on object monitor)
        at
jline.internal.NonBlockingInputStream.shutdown(NonBlockingInputStream.java:75)
        - waiting to lock <0x00000000a24e07a0> (a
jline.internal.NonBlockingInputStream)
        at jline.console.ConsoleReader.shutdown(ConsoleReader.java:281)
        at org.apache.karaf.shell.console.jline.Console.close(Console.java:149)
        at
org.apache.karaf.shell.console.jline.ConsoleFactory.stop(ConsoleFactory.java:196)
        at
org.apache.karaf.shell.console.jline.ConsoleFactory.unregisterCommandProcessor(ConsoleFactory.java:70)
        - locked <0x00000000a25159d0> (a
org.apache.karaf.shell.console.jline.ConsoleFactory)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at
org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:297)
        at
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$Listener.invokeMethods(AbstractServiceReferenceRecipe.java:526)
        at
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$Listener.unbind(AbstractServiceReferenceRecipe.java:512)
        at
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.unbind(AbstractServiceReferenceRecipe.java:415)
        at
org.apache.aries.blueprint.container.ReferenceRecipe.unbind(ReferenceRecipe.java:181)
        - locked <0x00000000a21cd0f8> (a java.lang.Object)
        at
org.apache.aries.blueprint.container.ReferenceRecipe.doStop(ReferenceRecipe.java:122)
        - locked <0x00000000a21cd0f8> (a java.lang.Object)
        at
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.stop(AbstractServiceReferenceRecipe.java:153)
        - locked <0x00000000a21ccf00> (a java.util.ArrayList)
        at
org.apache.aries.blueprint.container.BlueprintContainerImpl.untrackServiceReference(BlueprintContainerImpl.java:594)
        at
org.apache.aries.blueprint.container.BlueprintContainerImpl.untrackServiceReferences(BlueprintContainerImpl.java:574)
        at
org.apache.aries.blueprint.container.BlueprintContainerImpl.tidyupComponents(BlueprintContainerImpl.java:888)
        at
org.apache.aries.blueprint.container.BlueprintContainerImpl.namespaceHandlerUnregistered(BlueprintContainerImpl.java:876)
        at
org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl$NamespaceHandlerSetImpl.unregisterHandler(NamespaceHandlerRegistryImpl.java:582)
        at
org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl.unregisterHandler(NamespaceHandlerRegistryImpl.java:173)
        at
org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl.removedService(NamespaceHandlerRegistryImpl.java:144)
        at
org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:956)
        at
org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:1)
        at 
org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:341)
        at
org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:902)
        at
org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932)
        at
org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:793)
        at
org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:543)
        at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4260)
        at org.apache.felix.framework.Felix.access$000(Felix.java:74)
        at org.apache.felix.framework.Felix$1.serviceChanged(Felix.java:390)
        at
org.apache.felix.framework.ServiceRegistry.unregisterService(ServiceRegistry.java:148)
        at
org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:127)
        at
org.apache.aries.util.AriesFrameworkUtil.safeUnregisterService(AriesFrameworkUtil.java:114)
        at
org.apache.aries.blueprint.container.ServiceRecipe.unregister(ServiceRecipe.java:207)
        at
org.apache.aries.blueprint.container.BlueprintContainerImpl.unregisterServices(BlueprintContainerImpl.java:679)
        at
org.apache.aries.blueprint.container.BlueprintContainerImpl.destroy(BlueprintContainerImpl.java:821)
        at
org.apache.aries.blueprint.container.BlueprintExtender.destroyContext(BlueprintExtender.java:246)
        at
org.apache.aries.blueprint.container.BlueprintExtender.bundleChanged(BlueprintExtender.java:238)
        at
org.apache.aries.blueprint.container.BlueprintExtender$BlueprintBundleTrackerCustomizer.modifiedBundle(BlueprintExtender.java:434)
        at
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:198)
        at
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:128)
        at
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:468)
        at
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:161)
        at
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:117)
        at
org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)
        at
org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)
        at
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)
        at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4244)
        at org.apache.felix.framework.Felix.stopBundle(Felix.java:2351)
        at org.apache.felix.framework.Felix$RefreshHelper.stop(Felix.java:4629)
        at org.apache.felix.framework.Felix.refreshPackages(Felix.java:3951)
        at
org.apache.felix.framework.FrameworkWiringImpl.run(FrameworkWiringImpl.java:172)
        at java.lang.Thread.run(Thread.java:722)

"Karaf Shell Console Thread" daemon prio=6 tid=0x000000000c260000 nid=0x19f0
waiting on condition [0x000000001064e000]
    java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000000a21df700> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
        at
java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
        at
org.apache.karaf.shell.console.jline.Console$ConsoleInputStream.read(Console.java:386)
        at
org.apache.karaf.shell.console.jline.Console$ConsoleInputStream.read(Console.java:403)
        at
jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:169)
        - locked <0x00000000a24e07a0> (a jline.internal.NonBlockingInputStream)
        at
jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:137)
        at
jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:246)
        at jline.internal.InputStreamReader.read(InputStreamReader.java:259)
        - locked <0x00000000a24e07a0> (a jline.internal.NonBlockingInputStream)
        at jline.internal.InputStreamReader.read(InputStreamReader.java:196)
        - locked <0x00000000a24e07a0> (a jline.internal.NonBlockingInputStream)
        at jline.console.ConsoleReader.readCharacter(ConsoleReader.java:1974)
        at jline.console.ConsoleReader.readLine(ConsoleReader.java:2174)
        at jline.console.ConsoleReader.readLine(ConsoleReader.java:2098)
        at
org.apache.karaf.shell.console.jline.Console.readAndParseCommand(Console.java:235)
        at org.apache.karaf.shell.console.jline.Console.run(Console.java:171)
        at java.lang.Thread.run(Thread.java:722)





--
View this message in context: 
http://karaf.922171.n3.nabble.com/Problems-with-ipojo-in-Karaf-2-3-0-tp4026688p4026952.html
Sent from the Karaf - User mailing list archive at Nabble.com.


--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com

Reply via email to