You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2019/10/23 20:03:14 UTC
[activemq-artemis] branch master updated: ARTEMIS-2527 Stop
executors on print-data
This is an automated email from the ASF dual-hosted git repository.
clebertsuconic pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
The following commit(s) were added to refs/heads/master by this push:
new d7dc8b8 ARTEMIS-2527 Stop executors on print-data
d7dc8b8 is described below
commit d7dc8b8de8c6dafbf802157363ab19dbb2987aa0
Author: Clebert Suconic <cl...@apache.org>
AuthorDate: Wed Oct 23 15:57:49 2019 -0400
ARTEMIS-2527 Stop executors on print-data
---
.../artemis/cli/commands/tools/PrintData.java | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/artemis-cli/src/main/java/org/apache/activemq/artemis/cli/commands/tools/PrintData.java b/artemis-cli/src/main/java/org/apache/activemq/artemis/cli/commands/tools/PrintData.java
index cc387b0..805f3c2 100644
--- a/artemis-cli/src/main/java/org/apache/activemq/artemis/cli/commands/tools/PrintData.java
+++ b/artemis-cli/src/main/java/org/apache/activemq/artemis/cli/commands/tools/PrintData.java
@@ -175,16 +175,17 @@ public class PrintData extends DBOption {
}
private static void printPages(File pageDirectory, DescribeJournal describeJournal, PrintStream out, boolean safe) {
+ ActiveMQThreadFactory daemonFactory = new ActiveMQThreadFactory("cli", true, PrintData.class.getClassLoader());
+ final ScheduledExecutorService scheduled = Executors.newScheduledThreadPool(1, daemonFactory);
+ final ExecutorService executor = Executors.newFixedThreadPool(10, daemonFactory);
+ ExecutorFactory execfactory = new ExecutorFactory() {
+ @Override
+ public ArtemisExecutor getExecutor() {
+ return ArtemisExecutor.delegate(executor);
+ }
+ };
try {
- ScheduledExecutorService scheduled = Executors.newScheduledThreadPool(1, ActiveMQThreadFactory.defaultThreadFactory());
- final ExecutorService executor = Executors.newFixedThreadPool(10, ActiveMQThreadFactory.defaultThreadFactory());
- ExecutorFactory execfactory = new ExecutorFactory() {
- @Override
- public ArtemisExecutor getExecutor() {
- return ArtemisExecutor.delegate(executor);
- }
- };
final StorageManager sm = new NullStorageManager();
PagingStoreFactory pageStoreFactory = new PagingStoreFactoryNIO(sm, pageDirectory, 1000L, scheduled, execfactory, false, null);
HierarchicalRepository<AddressSettings> addressSettingsRepository = new HierarchicalObjectRepository<>();
@@ -194,6 +195,9 @@ public class PrintData extends DBOption {
printPages(describeJournal, sm, manager, out, safe);
} catch (Exception e) {
e.printStackTrace();
+ } finally {
+ executor.shutdownNow();
+ scheduled.shutdownNow();
}
}