[ https://issues.apache.org/jira/browse/ARIES-2193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dominik Przybysz updated ARIES-2193: ------------------------------------ Component/s: Blueprint > Blueprint Event Dispatcher Stuck Indefinitely > --------------------------------------------- > > Key: ARIES-2193 > URL: https://issues.apache.org/jira/browse/ARIES-2193 > Project: Aries > Issue Type: Bug > Components: Blueprint > Reporter: Abhinav Dudeja > Priority: Critical > > Hi Team, > We use Apache Aries for bundle startup in karaf runtime. We recently have > seen an issue where blueprint event dispatcher is stuck indefinitely waiting > for task completion. > "FelixFrameworkWiring" #26 daemon prio=5 os_prio=0 cpu=18820.30ms > elapsed=416939.05s allocated=1707081728 B (1628 MB) defined_classes=415 > tid=0x00007f18615e37a0 nid=0x27ff15 waiting on condition [0x00007f181d0ed000] > java.lang.Thread.State: TIMED_WAITING (parking) > at jdk.internal.misc.Unsafe.park(java.base@17.0.15/Native Method) > - parking to wait for <0x00000006dc002b88> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at > java.util.concurrent.locks.LockSupport.parkNanos(java.base@17.0.15/LockSupport.java:252) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(java.base@17.0.15/AbstractQueuedSynchronizer.java:1679) > at > java.util.concurrent.LinkedBlockingQueue.poll(java.base@17.0.15/LinkedBlockingQueue.java:460) > at > java.util.concurrent.ExecutorCompletionService.poll(java.base@17.0.15/ExecutorCompletionService.java:209) > at > java.util.concurrent.AbstractExecutorService.doInvokeAny(java.base@17.0.15/AbstractExecutorService.java:193) > at > java.util.concurrent.AbstractExecutorService.invokeAny(java.base@17.0.15/AbstractExecutorService.java:235) > at > org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper$4.call(ScheduledExecutorServiceWrapper.java:185) > at > org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper$15.call(ScheduledExecutorServiceWrapper.java:446) > at > org.apache.aries.blueprint.utils.threading.RWLock.runReadOperation(RWLock.java:33) > at > org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper.runUnlessShutdown(ScheduledExecutorServiceWrapper.java:443) > at > org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper.invokeAny(ScheduledExecutorServiceWrapper.java:180) > at > org.apache.aries.blueprint.container.BlueprintEventDispatcher.callListener(BlueprintEventDispatcher.java:195) > at > org.apache.aries.blueprint.container.BlueprintEventDispatcher.sendInitialEvents(BlueprintEventDispatcher.java:119) > at > org.apache.aries.blueprint.container.BlueprintEventDispatcher.access$100(BlueprintEventDispatcher.java:62) > at > org.apache.aries.blueprint.container.BlueprintEventDispatcher$2.addingService(BlueprintEventDispatcher.java:98) > - locked <0x00000004c4be16b0> (a java.util.concurrent.CopyOnWriteArraySet) > at > org.apache.aries.blueprint.container.BlueprintEventDispatcher$2.addingService(BlueprintEventDispatcher.java:93) > at > org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:943) > at > org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:871) > at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) > at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) > at > org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:903) > at > org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990) > at > org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838) > at > org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545) > at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4863) > at org.apache.felix.framework.Felix.registerService(Felix.java:3834) > at > org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:328) > at > org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:335) > at > org.apache.camel.blueprint.BlueprintCamelContext.doBuild(BlueprintCamelContext.java:121) > at org.apache.camel.support.service.BaseService.build(BaseService.java:63) > - locked <0x00000004ceee89b8> (a java.lang.Object) > To confirm issue is not with ScheduledExecutorService, we passed a infinite > loop with a 60 second timeout to the service and the service timed out as > expected. But, when using the apache aries to submit a task, the thread is > stuck indefinitely waiting for task completion. > We use the default 60 second timeout set in the Aries library for > ScheduledExecutorServiceWrapper.invokeAny(). > Please check this issue on priority as this causes the whole system to be > stuck and needing a complete restart. > Thanks, > Abhinav Dudeja -- This message was sent by Atlassian Jira (v8.20.10#820010)