Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
blueprint-core-1.10.2
-
None
Description
Hello,
in BlueprintEventDispatcher ,we have 60 second as timeout .This will apply when starting a bundle.
private void callListener(final BlueprintListener listener, final BlueprintEvent event) throws RejectedExecutionException { try { executor.invokeAny(Collections.<Callable<Void>>singleton(new Callable<Void>() { public Void call() throws Exception { listener.blueprintEvent(event); return null; } }), 60L, TimeUnit.SECONDS); } catch (InterruptedException ie) { LOGGER.warn("Thread interrupted", ie); Thread.currentThread().interrupt(); } catch (TimeoutException te) { LOGGER.warn("Listener timed out, will be ignored", te); listeners.remove(listener); } catch (ExecutionException ee) { LOGGER.warn("Listener caused an exception, will be ignored", ee); listeners.remove(listener); } }
We are having an issue that results in a warning for a java.util.concurrent.TimeoutException.
2020-07-21T11:58:00,852 | DEBUG | ActiveMQ InactivityMonitor Worker | AbstractInactivityMonitor | 97 - org.apache.activemq.activemq-osgi - 5.15.9 | Running WriteCheck[tcp://10.68.248.156:61616]2020-07-21T11:58:00,852 | DEBUG | ActiveMQ InactivityMonitor Worker | AbstractInactivityMonitor | 97 - org.apache.activemq.activemq-osgi - 5.15.9 | Running WriteCheck[tcp://10.68.248.156:61616]2020-07-21T11:58:00,853 | DEBUG | HikariPool-2 housekeeper | HikariPool | 63 - com.zaxxer.HikariCP - 2.4.11 | HikariPool-2 - Pool stats (total=10, active=0, idle=10, waiting=0)2020-07-21T11:58:01,878 | WARN | FelixStartLevel | BlueprintEventDispatcher | 100 - org.apache.aries.blueprint.core - 1.10.2 | Listener timed out, will be ignoredjava.util.concurrent.TimeoutException: null at java.util.concurrent.AbstractExecutorService.doInvokeAny(AbstractExecutorService.java:184) ~[?:?] at java.util.concurrent.AbstractExecutorService.invokeAny(AbstractExecutorService.java:225) ~[?:?] at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper$4.call(ScheduledExecutorServiceWrapper.java:185) ~[100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper$15.call(ScheduledExecutorServiceWrapper.java:446) ~[100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.utils.threading.RWLock.runReadOperation(RWLock.java:33) ~[100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper.runUnlessShutdown(ScheduledExecutorServiceWrapper.java:443) ~[100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper.invokeAny(ScheduledExecutorServiceWrapper.java:180) ~[100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintEventDispatcher.callListener(BlueprintEventDispatcher.java:188) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintEventDispatcher.callListeners(BlueprintEventDispatcher.java:178) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintEventDispatcher.blueprintEvent(BlueprintEventDispatcher.java:133) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:447) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:298) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:311) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:280) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:266) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422) [100:org.apache.aries.blueprint.core:1.10.2] at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1179) [?:?] at org.apache.felix.framework.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:730) [?:?] at org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:485) [?:?] at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4579) [?:?] at org.apache.felix.framework.Felix.startBundle(Felix.java:2174) [?:?] at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1373) [?:?] at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) [?:?] at java.lang.Thread.run(Thread.java:748) [?:?]2020-07-21T11:58:01,884 | DEBUG | FelixStartLevel | BlueprintContainerImpl | 100 - org.apache.aries.blueprint.core - 1.10.2 | Running container for blueprint bundle m2m-common-impl/2.0.59 in state Created
Can we just make this value configurable by using like one karaf.startlevel.bundle for example?
Attachments
Issue Links
- relates to
-
ARIES-1991 Unpredictible InterruptedException when starting bundles
- Open