This is an automated email from the ASF dual-hosted git repository. clebertsuconic pushed a commit to branch openwire-fix in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
commit 3cb63b6a75157ee6ccf519f57d4da9e6b7a089d0 Author: Clebert Suconic <clebertsuco...@apache.org> AuthorDate: Thu Apr 18 14:01:55 2024 -0400 client exit --- .../apache/activemq/artemis/tests/leak/ClientExitTest.java | 12 +++++++----- .../leak/{ClientExitTest.java => ClientHaltTest.java} | 14 ++++---------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java b/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java index 2c92d27ed5..b5b3755915 100644 --- a/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java +++ b/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java @@ -61,10 +61,11 @@ public class ClientExitTest extends AbstractLeakTest { private static ConnectionFactory createConnectionFactory(String protocol) { if (protocol.equals("AMQP")) { - return CFUtil.createConnectionFactory("AMQP", "amqp://localhost:60000?amqp.idleTimeout=120000&failover.maxReconnectAttempts=1&jms.prefetchPolicy.all=10&jms.forceAsyncAcks=true"); + return CFUtil.createConnectionFactory("AMQP", "amqp://localhost:61616?amqp.idleTimeout=120000&failover.maxReconnectAttempts=1&jms.prefetchPolicy.all=10&jms.forceAsyncAcks=true"); } else { //return CFUtil.createConnectionFactory(protocol, "tcp://localhost:60000?wireFormat.maxInactivityDuration=1000"); - return CFUtil.createConnectionFactory(protocol, "tcp://localhost:60000"); + return CFUtil.createConnectionFactory(protocol, "failover://(tcp://localhost:61616)?jms.prefetchPolicy.all=1"); + //return CFUtil.createConnectionFactory(protocol, "tcp://localhost:60000"); } } @@ -105,8 +106,8 @@ public class ClientExitTest extends AbstractLeakTest { public void setUp() throws Exception { server = createServer(true, createDefaultConfig(1, true)); server.getConfiguration().clearAcceptorConfigurations(); - //server.getConfiguration().addAcceptorConfiguration("server", "tcp://localhost:61616?maxInactivityDuration=1000"); - server.getConfiguration().addAcceptorConfiguration("server", "tcp://localhost:61616"); + server.getConfiguration().addAcceptorConfiguration("server", "tcp://localhost:61616?maxInactivityDuration=1000"); + //server.getConfiguration().addAcceptorConfiguration("server", "tcp://localhost:61616"); server.getConfiguration().setJournalPoolFiles(4).setJournalMinFiles(2); server.start(); server.addAddressInfo(new AddressInfo(QUEUE_NAME).addRoutingType(RoutingType.ANYCAST)); @@ -188,7 +189,8 @@ public class ClientExitTest extends AbstractLeakTest { } while (true) { // stays up forever until the caller halts it - Thread.sleep(1000); + Thread.sleep(10_000); + Runtime.getRuntime().halt(1); } } catch (Throwable e) { e.printStackTrace(); diff --git a/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java b/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientHaltTest.java similarity index 93% copy from tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java copy to tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientHaltTest.java index 2c92d27ed5..5644a3d407 100644 --- a/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientExitTest.java +++ b/tests/leak-tests/src/test/java/org/apache/activemq/artemis/tests/leak/ClientHaltTest.java @@ -20,19 +20,13 @@ import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Message; import javax.jms.MessageConsumer; -import javax.jms.MessageProducer; import javax.jms.Session; import java.lang.invoke.MethodHandles; import java.util.ArrayList; -import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.atomic.AtomicInteger; import io.github.checkleak.core.CheckLeak; -import org.apache.activemq.artemis.api.core.ActiveMQException; import org.apache.activemq.artemis.api.core.QueueConfiguration; import org.apache.activemq.artemis.api.core.RoutingType; import org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl; @@ -46,7 +40,6 @@ import org.apache.activemq.artemis.tests.util.TcpProxy; import org.apache.activemq.artemis.utils.SpawnedVMSupport; import org.apache.activemq.artemis.utils.Wait; import org.junit.After; -import org.junit.Assert; import org.junit.Assume; import org.junit.Before; import org.junit.BeforeClass; @@ -57,14 +50,15 @@ import org.slf4j.LoggerFactory; import static org.apache.activemq.artemis.tests.leak.MemoryAssertions.assertMemory; import static org.apache.activemq.artemis.tests.leak.MemoryAssertions.basicMemoryAsserts; -public class ClientExitTest extends AbstractLeakTest { +public class ClientHaltTest extends AbstractLeakTest { private static ConnectionFactory createConnectionFactory(String protocol) { if (protocol.equals("AMQP")) { return CFUtil.createConnectionFactory("AMQP", "amqp://localhost:60000?amqp.idleTimeout=120000&failover.maxReconnectAttempts=1&jms.prefetchPolicy.all=10&jms.forceAsyncAcks=true"); } else { //return CFUtil.createConnectionFactory(protocol, "tcp://localhost:60000?wireFormat.maxInactivityDuration=1000"); - return CFUtil.createConnectionFactory(protocol, "tcp://localhost:60000"); + return CFUtil.createConnectionFactory(protocol, "failover://(tcp://localhost:60000)?jms.prefetchPolicy.all=1"); + //return CFUtil.createConnectionFactory(protocol, "tcp://localhost:60000"); } } @@ -126,7 +120,7 @@ public class ClientExitTest extends AbstractLeakTest { runAfter(proxy::stopProxy); int numberOfConnections = 200; - Process process = SpawnedVMSupport.spawnVM(ClientExitTest.class.getName(), protocol, String.valueOf(numberOfConnections)); + Process process = SpawnedVMSupport.spawnVM(ClientHaltTest.class.getName(), protocol, String.valueOf(numberOfConnections)); runAfter(process::destroyForcibly); Wait.assertEquals(numberOfConnections, () -> server.getRemotingService().getConnections().size());