[
https://issues.apache.org/jira/browse/ARIES-1990?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
nizar.ben.mansour updated ARIES-1990:
-------------------------------------
Description:
Hello,
in BlueprintEventDispatcher ,we have 60 second as timeout .This will apply when
starting a bundle.
{code:java}
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);
}
}{code}
We are having an issue that results in a warning for a
java.util.concurrent.TimeoutException.
{code:java}
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{code}
Can we just make this value configurable by using like one
karaf.startlevel.bundle for example?
was:
Hello,
in BlueprintEventDispatcher ,we have 60 second as timeout .This will apply when
starting a bundle.
{code:java}
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);
}
}{code}
We are having an issue that results in a warning for a timeoutexception.
{code:java}
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{code}
Can we just make this value configurable by using like one
karaf.startlevel.bundle for example?
> Hardcoded starting bundle timeout to 60 second
> ----------------------------------------------
>
> Key: ARIES-1990
> URL: https://issues.apache.org/jira/browse/ARIES-1990
> Project: Aries
> Issue Type: Bug
> Components: Blueprint
> Affects Versions: blueprint-core-1.10.2
> Reporter: nizar.ben.mansour
> Priority: Critical
>
> Hello,
> in BlueprintEventDispatcher ,we have 60 second as timeout .This will apply
> when starting a bundle.
>
> {code:java}
> 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);
> }
> }{code}
>
>
> We are having an issue that results in a warning for a
> java.util.concurrent.TimeoutException.
>
> {code:java}
> 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{code}
>
> Can we just make this value configurable by using like one
> karaf.startlevel.bundle for example?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)