-
Bug
-
Resolution: Done
-
Major
-
None
-
None
ee subsystem parameters "hung-task-threshold" and "long-running-tasks" for managed-executor-service / managed-scheduled-executor-service do not work and are not implemented as described in EAP 7 Development Guide:
- hung-task-threshold: Defines the time, in milliseconds, after which tasks are considered hung by the managed executor service and forcefully aborted. If the value is 0 (which is the default), tasks are never considered hung.
- long-running-tasks: Suggests optimizing the execution of long running tasks, and defaults to false.
I tested with EAP 7 QuickStarts managed-executor-service example but these paremeters doe not take any effect:
- tasks exceeding hung-task-threshold are never forcefully aborted. And there's no way to detect hung tasks exceeding hung-task-threshold.
- setting long-running-tasks to true does not change the behavior.
As far as I checked the source code, I noticed the following:
- EAP 7.x uses the EE Concurency Utilities RI org.glassfish.enterprise.concurrent internally and just passes the paramters to the RI.
- In the EE Concurency Utilities RI, these parameters are used in the methods ManagedThreadFactoryImpl#isTaskHung(long now), AbstractManagedExecutorService#getHungThreads() and AbstractManagedExecutorService#isLongRunningTasks() (AbstractManagedExecutorService is the parent class of ManagedExecutorServiceImpl / ManagedScheduledExecutorServiceImpl).
- However, these methods are never invoked from EAP 7.x. So, these parameters do not take any effect in EAP 7.x.
- In addition, even if these methods are used, it looks the implementation is totally different from the description in the documentation. The parameter "long-running-tasks" is just used as a flag to skip from checking hung thread detection. And the parameter "hung-task-threshold" never forcefully abort the hung thread exceeding the threshold.
- clones
-
JBEAP-13778 [GSS](7.2.0) EE Concurency Utilities "hung-task-threshold" / "long-running-tasks" do not work and are not implemented as explained
- Closed
- is incorporated by
-
JBEAP-13776 [GSS](7.0.z) EE Concurency Utilities "hung-task-threshold" / "long-running-tasks" do not work and are not implemented as explained
- Closed
-
JBEAP-13779 [GSS](7.3.z) EE Concurency Utilities "hung-task-threshold" / "long-running-tasks" do not work and are not implemented as explained
- Closed