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 2018/03/28 15:54:47 UTC
[09/16] activemq-artemis git commit: ARTEMIS-1447 Reuse thread pools
on JDBC Locks
ARTEMIS-1447 Reuse thread pools on JDBC Locks
(cherry picked from commit 1af6d986a570f4c0db87cdd141fad3c66b84ea92)
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/1a7cd8aa
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/1a7cd8aa
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/1a7cd8aa
Branch: refs/heads/1.x
Commit: 1a7cd8aabe71d2f5f13bde02cfa3392436d3731e
Parents: 565b817
Author: Clebert Suconic <cl...@apache.org>
Authored: Fri Oct 27 15:14:28 2017 -0400
Committer: Clebert Suconic <cl...@apache.org>
Committed: Wed Mar 28 11:54:15 2018 -0400
----------------------------------------------------------------------
.../artemis/core/server/ActiveMQScheduledComponent.java | 7 +++++++
.../activemq/artemis/core/server/impl/ActiveMQServerImpl.java | 5 ++---
.../core/server/impl/jdbc/ActiveMQScheduledLeaseLock.java | 6 +++---
.../artemis/core/server/impl/jdbc/ScheduledLeaseLock.java | 4 ++--
4 files changed, 14 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1a7cd8aa/artemis-commons/src/main/java/org/apache/activemq/artemis/core/server/ActiveMQScheduledComponent.java
----------------------------------------------------------------------
diff --git a/artemis-commons/src/main/java/org/apache/activemq/artemis/core/server/ActiveMQScheduledComponent.java b/artemis-commons/src/main/java/org/apache/activemq/artemis/core/server/ActiveMQScheduledComponent.java
index 1553ccb..24dc15c 100644
--- a/artemis-commons/src/main/java/org/apache/activemq/artemis/core/server/ActiveMQScheduledComponent.java
+++ b/artemis-commons/src/main/java/org/apache/activemq/artemis/core/server/ActiveMQScheduledComponent.java
@@ -188,6 +188,13 @@ public abstract class ActiveMQScheduledComponent implements ActiveMQComponent, R
return this;
}
+ public synchronized ActiveMQScheduledComponent setPeriod(long period, TimeUnit unit) {
+ this.period = period;
+ this.timeUnit = unit;
+ restartIfNeeded();
+ return this;
+ }
+
public long getInitialDelay() {
return initialDelay;
}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1a7cd8aa/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java
----------------------------------------------------------------------
diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java
index ab47aa7..c1b20e3 100644
--- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java
+++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java
@@ -494,6 +494,8 @@ public class ActiveMQServerImpl implements ActiveMQServer {
configuration.parseSystemProperties();
+ initializeExecutorServices();
+
startDate = new Date();
state = SERVER_STATE.STARTING;
@@ -1982,9 +1984,6 @@ public class ActiveMQServerImpl implements ActiveMQServer {
if (state == SERVER_STATE.STOPPED)
return false;
- // Create the pools - we have two pools - one for non scheduled - and another for scheduled
- initializeExecutorServices();
-
if (configuration.getJournalType() == JournalType.ASYNCIO) {
if (!AIOSequentialFileFactory.isSupported()) {
ActiveMQServerLogger.LOGGER.switchingNIO();
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1a7cd8aa/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ActiveMQScheduledLeaseLock.java
----------------------------------------------------------------------
diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ActiveMQScheduledLeaseLock.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ActiveMQScheduledLeaseLock.java
index 30db629..e870ea9 100644
--- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ActiveMQScheduledLeaseLock.java
+++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ActiveMQScheduledLeaseLock.java
@@ -17,16 +17,16 @@
package org.apache.activemq.artemis.core.server.impl.jdbc;
+import java.util.concurrent.Executor;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import org.apache.activemq.artemis.core.io.IOCriticalErrorListener;
import org.apache.activemq.artemis.core.server.ActiveMQScheduledComponent;
-import org.apache.activemq.artemis.utils.actors.ArtemisExecutor;
import org.jboss.logging.Logger;
/**
- * Default implementation of a {@link ScheduledLeaseLock}: see {@link ScheduledLeaseLock#of(ScheduledExecutorService, ArtemisExecutor, String, LeaseLock, long, IOCriticalErrorListener)}.
+ * Default implementation of a {@link ScheduledLeaseLock}: see {@link ScheduledLeaseLock#of(ScheduledExecutorService, Executor, String, LeaseLock, long, IOCriticalErrorListener)}.
*/
final class ActiveMQScheduledLeaseLock extends ActiveMQScheduledComponent implements ScheduledLeaseLock {
@@ -39,7 +39,7 @@ final class ActiveMQScheduledLeaseLock extends ActiveMQScheduledComponent implem
private final IOCriticalErrorListener ioCriticalErrorListener;
ActiveMQScheduledLeaseLock(ScheduledExecutorService scheduledExecutorService,
- ArtemisExecutor executor,
+ Executor executor,
String lockName,
LeaseLock lock,
long renewPeriodMillis,
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1a7cd8aa/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ScheduledLeaseLock.java
----------------------------------------------------------------------
diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ScheduledLeaseLock.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ScheduledLeaseLock.java
index 43751f8..4e1f480 100644
--- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ScheduledLeaseLock.java
+++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/jdbc/ScheduledLeaseLock.java
@@ -17,11 +17,11 @@
package org.apache.activemq.artemis.core.server.impl.jdbc;
+import java.util.concurrent.Executor;
import java.util.concurrent.ScheduledExecutorService;
import org.apache.activemq.artemis.core.io.IOCriticalErrorListener;
import org.apache.activemq.artemis.core.server.ActiveMQComponent;
-import org.apache.activemq.artemis.utils.actors.ArtemisExecutor;
/**
* {@link LeaseLock} holder that allows to schedule a {@link LeaseLock#renew} task with a fixed {@link #renewPeriodMillis()} delay.
@@ -33,7 +33,7 @@ interface ScheduledLeaseLock extends ActiveMQComponent {
long renewPeriodMillis();
static ScheduledLeaseLock of(ScheduledExecutorService scheduledExecutorService,
- ArtemisExecutor executor,
+ Executor executor,
String lockName,
LeaseLock lock,
long renewPeriodMillis,