[jboss-cvs] JBoss Messaging SVN: r2662 - in trunk: tests/src/org/jboss/test/messaging/jms/stress and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed May 9 08:38:58 EDT 2007
Author: timfox
Date: 2007-05-09 08:38:58 -0400 (Wed, 09 May 2007)
New Revision: 2662
Added:
trunk/tests/src/org/jboss/test/messaging/jms/stress/ConnectionConsumerStressTest.java
trunk/tests/src/org/jboss/test/messaging/jms/stress/QueueStressTest.java
trunk/tests/src/org/jboss/test/messaging/jms/stress/TopicStressTest.java
Removed:
trunk/tests/src/org/jboss/test/messaging/jms/stress/StressTest.java
Modified:
trunk/build-thirdparty.xml
Log:
split up stress tests and fixed build
Modified: trunk/build-thirdparty.xml
===================================================================
--- trunk/build-thirdparty.xml 2007-05-09 11:38:57 UTC (rev 2661)
+++ trunk/build-thirdparty.xml 2007-05-09 12:38:58 UTC (rev 2662)
@@ -84,8 +84,8 @@
<componentref name="sun-javacc" version="3.2"/>
<componentref name="oswego-concurrent" version="1.3.4"/>
<componentref name="apache-log4j" version="1.2.14"/>
- <componentref name="javassist" version="3.5.0.GA"/>
- <componentref name="jgroups" version="2.4.1.SP3"/>
+ <componentref name="javassist" version="3.5.0.CR1"/>
+ <componentref name="jgroups" version="2.4.1.SP3-brew"/>
<componentref name="trove" version="1.0.2"/>
<componentref name="jboss/common-core" version="2.0.2.GA"/>
<componentref name="jboss/common-logging-log4j" version="2.0.2.GA"/>
Added: trunk/tests/src/org/jboss/test/messaging/jms/stress/ConnectionConsumerStressTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/stress/ConnectionConsumerStressTest.java (rev 0)
+++ trunk/tests/src/org/jboss/test/messaging/jms/stress/ConnectionConsumerStressTest.java 2007-05-09 12:38:58 UTC (rev 2662)
@@ -0,0 +1,78 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.messaging.jms.stress;
+
+import javax.jms.Connection;
+import javax.jms.DeliveryMode;
+import javax.jms.MessageProducer;
+import javax.jms.Session;
+
+import org.jboss.test.messaging.jms.stress.base.StressTestBase;
+
+/**
+ *
+ * A ConnectionConsumerStressTest.
+ *
+ * @author <a href="tim.fox at jboss.com">Tim Fox</a>
+ * @version <tt>$Revision: 2349 $</tt>
+ *
+ * $Id: StressTest.java 2349 2007-02-19 14:15:53Z timfox $
+ */
+public class ConnectionConsumerStressTest extends StressTestBase
+{
+ public ConnectionConsumerStressTest(String name)
+ {
+ super(name);
+ }
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ }
+
+ public void tearDown() throws Exception
+ {
+ super.tearDown();
+ }
+
+
+ public void testConnectionConsumer() throws Exception
+ {
+ Connection conn = cf.createConnection();
+ conn.start();
+
+ Session sessSend = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ Session sessReceive = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ MessageProducer prod = sessSend.createProducer(queue1);
+ prod.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+
+ Runner[] runners = new Runner[] { new Sender("prod1", sessSend, prod, 100000),
+ new Receiver(conn, sessReceive, 100000, queue1) };
+
+ runRunners(runners);
+
+ conn.close();
+ }
+
+}
Added: trunk/tests/src/org/jboss/test/messaging/jms/stress/QueueStressTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/stress/QueueStressTest.java (rev 0)
+++ trunk/tests/src/org/jboss/test/messaging/jms/stress/QueueStressTest.java 2007-05-09 12:38:58 UTC (rev 2662)
@@ -0,0 +1,198 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.messaging.jms.stress;
+
+import javax.jms.Connection;
+import javax.jms.DeliveryMode;
+import javax.jms.MessageConsumer;
+import javax.jms.MessageProducer;
+import javax.jms.Session;
+import javax.jms.XAConnection;
+import javax.jms.XASession;
+
+import org.jboss.test.messaging.jms.stress.base.StressTestBase;
+
+/**
+ *
+ * A QueueStressTest.
+ *
+ * @author <a href="tim.fox at jboss.com">Tim Fox</a>
+ * @version <tt>$Revision: 2349 $</tt>
+ *
+ * $Id: StressTest.java 2349 2007-02-19 14:15:53Z timfox $
+ */
+public class QueueStressTest extends StressTestBase
+{
+ public QueueStressTest(String name)
+ {
+ super(name);
+ }
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ }
+
+ public void tearDown() throws Exception
+ {
+ super.tearDown();
+ }
+
+ /*
+ * Stress a queue with transational, non transactional and 2pc senders sending both persistent
+ * and non persistent messages
+ * Transactional senders go through a cycle of sending and rolling back
+ *
+ */
+ public void testQueueMultipleSenders() throws Exception
+ {
+ Connection conn1 = cf.createConnection();
+
+ Session sess1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess2 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess3 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess4 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess5 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess6 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess7 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess8 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ Session sess9 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess10 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess11 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess12 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess13 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess14 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess15 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+ Session sess16 = conn1.createSession(true, Session.SESSION_TRANSACTED);
+
+ XASession xaSess1 = ((XAConnection)conn1).createXASession();
+ XASession xaSess2 = ((XAConnection)conn1).createXASession();
+ XASession xaSess3 = ((XAConnection)conn1).createXASession();
+ XASession xaSess4 = ((XAConnection)conn1).createXASession();
+ XASession xaSess5 = ((XAConnection)conn1).createXASession();
+ XASession xaSess6 = ((XAConnection)conn1).createXASession();
+ XASession xaSess7 = ((XAConnection)conn1).createXASession();
+ XASession xaSess8 = ((XAConnection)conn1).createXASession();
+
+ Session sess17 = xaSess1.getSession();
+ Session sess18 = xaSess2.getSession();
+ Session sess19 = xaSess3.getSession();
+ Session sess20 = xaSess4.getSession();
+ Session sess21 = xaSess5.getSession();
+ Session sess22 = xaSess6.getSession();
+ Session sess23 = xaSess7.getSession();
+ Session sess24 = xaSess8.getSession();
+
+ MessageProducer prod1 = sess1.createProducer(queue1);
+ prod1.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod2 = sess2.createProducer(queue1);
+ prod2.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod3 = sess3.createProducer(queue1);
+ prod3.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod4 = sess4.createProducer(queue1);
+ prod4.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod5 = sess5.createProducer(queue1);
+ prod5.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod6 = sess6.createProducer(queue1);
+ prod6.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod7 = sess7.createProducer(queue1);
+ prod7.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod8 = sess8.createProducer(queue1);
+ prod8.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod9 = sess9.createProducer(queue1);
+ prod9.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod10 = sess10.createProducer(queue1);
+ prod10.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod11 = sess11.createProducer(queue1);
+ prod11.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod12 = sess12.createProducer(queue1);
+ prod12.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod13 = sess13.createProducer(queue1);
+ prod13.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod14 = sess14.createProducer(queue1);
+ prod14.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod15 = sess15.createProducer(queue1);
+ prod15.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod16 = sess16.createProducer(queue1);
+ prod16.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod17 = sess17.createProducer(queue1);
+ prod17.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod18 = sess18.createProducer(queue1);
+ prod18.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod19 = sess19.createProducer(queue1);
+ prod19.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod20 = sess20.createProducer(queue1);
+ prod20.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod21 = sess21.createProducer(queue1);
+ prod21.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod22 = sess22.createProducer(queue1);
+ prod22.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod23 = sess23.createProducer(queue1);
+ prod23.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ MessageProducer prod24 = sess24.createProducer(queue1);
+ prod24.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+
+
+ Connection conn2 = cf.createConnection();
+ conn2.start();
+ Session sessReceive = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageConsumer cons = sessReceive.createConsumer(queue1);
+
+
+ Runner[] runners = new Runner[] {
+ new Sender("prod1", sess1, prod1, NUM_NON_PERSISTENT_MESSAGES),
+ new Sender("prod2", sess2, prod2, NUM_PERSISTENT_MESSAGES),
+ new Sender("prod3", sess3, prod3, NUM_NON_PERSISTENT_MESSAGES),
+ new Sender("prod4", sess4, prod4, NUM_PERSISTENT_MESSAGES),
+ new Sender("prod5", sess5, prod5, NUM_NON_PERSISTENT_MESSAGES),
+ new Sender("prod6", sess6, prod6, NUM_PERSISTENT_MESSAGES),
+ new Sender("prod7", sess7, prod7, NUM_NON_PERSISTENT_MESSAGES),
+ new Sender("prod8", sess8, prod8, NUM_PERSISTENT_MESSAGES),
+ new TransactionalSender("prod9", sess9, prod9, NUM_NON_PERSISTENT_MESSAGES, 1, 1),
+ new TransactionalSender("prod10", sess10, prod10, NUM_PERSISTENT_MESSAGES, 1, 1),
+ new TransactionalSender("prod11", sess11, prod11, NUM_NON_PERSISTENT_MESSAGES, 10, 7),
+ new TransactionalSender("prod12", sess12, prod12, NUM_PERSISTENT_MESSAGES, 10, 7),
+ new TransactionalSender("prod13", sess13, prod13, NUM_NON_PERSISTENT_MESSAGES, 50, 21),
+ new TransactionalSender("prod14", sess14, prod14, NUM_PERSISTENT_MESSAGES, 50, 21),
+ new TransactionalSender("prod15", sess15, prod15, NUM_NON_PERSISTENT_MESSAGES, 100, 67),
+ new TransactionalSender("prod16", sess16, prod16, NUM_PERSISTENT_MESSAGES, 100, 67),
+ new Transactional2PCSender("prod17", xaSess1, prod17, NUM_NON_PERSISTENT_MESSAGES, 1, 1),
+ new Transactional2PCSender("prod18", xaSess2, prod18, NUM_PERSISTENT_MESSAGES, 1, 1),
+ new Transactional2PCSender("prod19", xaSess3, prod19, NUM_NON_PERSISTENT_MESSAGES, 10, 7),
+ new Transactional2PCSender("prod20", xaSess4, prod20, NUM_PERSISTENT_MESSAGES, 10, 7),
+ new Transactional2PCSender("prod21", xaSess5, prod21, NUM_NON_PERSISTENT_MESSAGES, 50, 21),
+ new Transactional2PCSender("prod22", xaSess6, prod22, NUM_PERSISTENT_MESSAGES, 50, 21),
+ new Transactional2PCSender("prod23", xaSess7, prod23, NUM_NON_PERSISTENT_MESSAGES, 100, 67),
+ new Transactional2PCSender("prod24", xaSess8, prod24, NUM_PERSISTENT_MESSAGES, 100, 67),
+ new Receiver(sessReceive, cons,
+ 12 * NUM_NON_PERSISTENT_MESSAGES + 12 * NUM_PERSISTENT_MESSAGES, false) };
+
+ runRunners(runners);
+
+ conn1.close();
+
+ conn2.close();
+ }
+
+}
+
Deleted: trunk/tests/src/org/jboss/test/messaging/jms/stress/StressTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/stress/StressTest.java 2007-05-09 11:38:57 UTC (rev 2661)
+++ trunk/tests/src/org/jboss/test/messaging/jms/stress/StressTest.java 2007-05-09 12:38:58 UTC (rev 2662)
@@ -1,354 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test.messaging.jms.stress;
-
-import org.jboss.test.messaging.jms.stress.base.StressTestBase;
-
-import javax.jms.Connection;
-import javax.jms.DeliveryMode;
-import javax.jms.MessageConsumer;
-import javax.jms.MessageProducer;
-import javax.jms.Session;
-import javax.jms.XAConnection;
-import javax.jms.XASession;
-
-/**
- *
- * A StressTest.
- *
- * @author <a href="tim.fox at jboss.com">Tim Fox</a>
- * @version <tt>$Revision$</tt>
- *
- * $Id$
- */
-public class StressTest extends StressTestBase
-{
- public StressTest(String name)
- {
- super(name);
- }
-
- public void setUp() throws Exception
- {
- super.setUp();
- }
-
- public void tearDown() throws Exception
- {
- super.tearDown();
- }
-
- /*
- * Stress a queue with transational, non transactional and 2pc senders sending both persistent
- * and non persistent messages
- * Transactional senders go through a cycle of sending and rolling back
- *
- */
- public void testQueueMultipleSenders() throws Exception
- {
- Connection conn1 = cf.createConnection();
-
- Session sess1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess2 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess3 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess4 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess5 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess6 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess7 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess8 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- Session sess9 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess10 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess11 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess12 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess13 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess14 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess15 = conn1.createSession(true, Session.SESSION_TRANSACTED);
- Session sess16 = conn1.createSession(true, Session.SESSION_TRANSACTED);
-
- XASession xaSess1 = ((XAConnection)conn1).createXASession();
- XASession xaSess2 = ((XAConnection)conn1).createXASession();
- XASession xaSess3 = ((XAConnection)conn1).createXASession();
- XASession xaSess4 = ((XAConnection)conn1).createXASession();
- XASession xaSess5 = ((XAConnection)conn1).createXASession();
- XASession xaSess6 = ((XAConnection)conn1).createXASession();
- XASession xaSess7 = ((XAConnection)conn1).createXASession();
- XASession xaSess8 = ((XAConnection)conn1).createXASession();
-
- Session sess17 = xaSess1.getSession();
- Session sess18 = xaSess2.getSession();
- Session sess19 = xaSess3.getSession();
- Session sess20 = xaSess4.getSession();
- Session sess21 = xaSess5.getSession();
- Session sess22 = xaSess6.getSession();
- Session sess23 = xaSess7.getSession();
- Session sess24 = xaSess8.getSession();
-
- MessageProducer prod1 = sess1.createProducer(queue1);
- prod1.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod2 = sess2.createProducer(queue1);
- prod2.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod3 = sess3.createProducer(queue1);
- prod3.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod4 = sess4.createProducer(queue1);
- prod4.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod5 = sess5.createProducer(queue1);
- prod5.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod6 = sess6.createProducer(queue1);
- prod6.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod7 = sess7.createProducer(queue1);
- prod7.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod8 = sess8.createProducer(queue1);
- prod8.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod9 = sess9.createProducer(queue1);
- prod9.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod10 = sess10.createProducer(queue1);
- prod10.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod11 = sess11.createProducer(queue1);
- prod11.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod12 = sess12.createProducer(queue1);
- prod12.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod13 = sess13.createProducer(queue1);
- prod13.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod14 = sess14.createProducer(queue1);
- prod14.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod15 = sess15.createProducer(queue1);
- prod15.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod16 = sess16.createProducer(queue1);
- prod16.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod17 = sess17.createProducer(queue1);
- prod17.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod18 = sess18.createProducer(queue1);
- prod18.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod19 = sess19.createProducer(queue1);
- prod19.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod20 = sess20.createProducer(queue1);
- prod20.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod21 = sess21.createProducer(queue1);
- prod21.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod22 = sess22.createProducer(queue1);
- prod22.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod23 = sess23.createProducer(queue1);
- prod23.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- MessageProducer prod24 = sess24.createProducer(queue1);
- prod24.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
-
-
- Connection conn2 = cf.createConnection();
- conn2.start();
- Session sessReceive = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
- MessageConsumer cons = sessReceive.createConsumer(queue1);
-
-
- Runner[] runners = new Runner[] {
- new Sender("prod1", sess1, prod1, NUM_NON_PERSISTENT_MESSAGES),
- new Sender("prod2", sess2, prod2, NUM_PERSISTENT_MESSAGES),
- new Sender("prod3", sess3, prod3, NUM_NON_PERSISTENT_MESSAGES),
- new Sender("prod4", sess4, prod4, NUM_PERSISTENT_MESSAGES),
- new Sender("prod5", sess5, prod5, NUM_NON_PERSISTENT_MESSAGES),
- new Sender("prod6", sess6, prod6, NUM_PERSISTENT_MESSAGES),
- new Sender("prod7", sess7, prod7, NUM_NON_PERSISTENT_MESSAGES),
- new Sender("prod8", sess8, prod8, NUM_PERSISTENT_MESSAGES),
- new TransactionalSender("prod9", sess9, prod9, NUM_NON_PERSISTENT_MESSAGES, 1, 1),
- new TransactionalSender("prod10", sess10, prod10, NUM_PERSISTENT_MESSAGES, 1, 1),
- new TransactionalSender("prod11", sess11, prod11, NUM_NON_PERSISTENT_MESSAGES, 10, 7),
- new TransactionalSender("prod12", sess12, prod12, NUM_PERSISTENT_MESSAGES, 10, 7),
- new TransactionalSender("prod13", sess13, prod13, NUM_NON_PERSISTENT_MESSAGES, 50, 21),
- new TransactionalSender("prod14", sess14, prod14, NUM_PERSISTENT_MESSAGES, 50, 21),
- new TransactionalSender("prod15", sess15, prod15, NUM_NON_PERSISTENT_MESSAGES, 100, 67),
- new TransactionalSender("prod16", sess16, prod16, NUM_PERSISTENT_MESSAGES, 100, 67),
- new Transactional2PCSender("prod17", xaSess1, prod17, NUM_NON_PERSISTENT_MESSAGES, 1, 1),
- new Transactional2PCSender("prod18", xaSess2, prod18, NUM_PERSISTENT_MESSAGES, 1, 1),
- new Transactional2PCSender("prod19", xaSess3, prod19, NUM_NON_PERSISTENT_MESSAGES, 10, 7),
- new Transactional2PCSender("prod20", xaSess4, prod20, NUM_PERSISTENT_MESSAGES, 10, 7),
- new Transactional2PCSender("prod21", xaSess5, prod21, NUM_NON_PERSISTENT_MESSAGES, 50, 21),
- new Transactional2PCSender("prod22", xaSess6, prod22, NUM_PERSISTENT_MESSAGES, 50, 21),
- new Transactional2PCSender("prod23", xaSess7, prod23, NUM_NON_PERSISTENT_MESSAGES, 100, 67),
- new Transactional2PCSender("prod24", xaSess8, prod24, NUM_PERSISTENT_MESSAGES, 100, 67),
- new Receiver(sessReceive, cons,
- 12 * NUM_NON_PERSISTENT_MESSAGES + 12 * NUM_PERSISTENT_MESSAGES, false) };
-
- runRunners(runners);
-
- conn1.close();
-
- conn2.close();
- }
-
- /*
- * Stress a topic with with many non transactional, transactional and 2pc receivers.
- * Non transactional receivers use ack modes of auto, dups and client ack.
- * Client ack receivers go through a cycle of receving a batch, acking and recovering
- * Transactional receivers go through a cycle of receiving commiting and rolling back.
- * Half the consumers are durable and half non durable.
- *
- */
- public void testTopicMultipleReceivers() throws Exception
- {
- Connection conn1 = cf.createConnection();
-
- Session sess1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session sess2 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- MessageProducer prod1 = sess1.createProducer(topic1);
- prod1.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
-
- MessageProducer prod2 = sess2.createProducer(topic1);
- prod2.setDeliveryMode(DeliveryMode.PERSISTENT);
-
- Connection conn2 = cf.createConnection();
- conn2.setClientID("clientid1");
- conn2.start();
-
- //4 auto ack
- Session rsess1 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session rsess2 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session rsess3 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Session rsess4 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- //4 dups
- Session rsess5 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
- Session rsess6 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
- Session rsess7 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
- Session rsess8 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
-
- //4 client
- Session rsess9 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
- Session rsess10 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
- Session rsess11 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
- Session rsess12 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
-
-
- //4 transactional
- Session rsess13 = conn2.createSession(true, Session.SESSION_TRANSACTED);
- Session rsess14 = conn2.createSession(true, Session.SESSION_TRANSACTED);
- Session rsess15 = conn2.createSession(true, Session.SESSION_TRANSACTED);
- Session rsess16 = conn2.createSession(true, Session.SESSION_TRANSACTED);
-
- //4 2pc transactional
- XASession rxaSess1 = ((XAConnection)conn2).createXASession();
- XASession rxaSess2 = ((XAConnection)conn2).createXASession();
- XASession rxaSess3 = ((XAConnection)conn2).createXASession();
- XASession rxaSess4 = ((XAConnection)conn2).createXASession();
-
- Session rsess17 = rxaSess1.getSession();
- Session rsess18 = rxaSess2.getSession();
- Session rsess19 = rxaSess3.getSession();
- Session rsess20 = rxaSess4.getSession();
-
-
- MessageConsumer cons1 = rsess1.createConsumer(topic1);
- MessageConsumer cons2 = rsess2.createDurableSubscriber(topic1, "sub1");
- MessageConsumer cons3 = rsess3.createConsumer(topic1);
- MessageConsumer cons4 = rsess4.createDurableSubscriber(topic1, "sub2");
- MessageConsumer cons5 = rsess5.createConsumer(topic1);
- MessageConsumer cons6 = rsess6.createDurableSubscriber(topic1, "sub3");
- MessageConsumer cons7 = rsess7.createConsumer(topic1);
- MessageConsumer cons8 = rsess8.createDurableSubscriber(topic1, "sub4");
- MessageConsumer cons9 = rsess9.createConsumer(topic1);
- MessageConsumer cons10 = rsess10.createDurableSubscriber(topic1, "sub5");
- MessageConsumer cons11 = rsess11.createConsumer(topic1);
- MessageConsumer cons12 = rsess12.createDurableSubscriber(topic1, "sub6");
- MessageConsumer cons13 = rsess13.createConsumer(topic1);
- MessageConsumer cons14 = rsess14.createDurableSubscriber(topic1, "sub7");
- MessageConsumer cons15 = rsess15.createConsumer(topic1);
- MessageConsumer cons16 = rsess16.createDurableSubscriber(topic1, "sub8");
- MessageConsumer cons17 = rsess17.createConsumer(topic1);
- MessageConsumer cons18 = rsess18.createDurableSubscriber(topic1, "sub9");
- MessageConsumer cons19 = rsess19.createConsumer(topic1);
- MessageConsumer cons20 = rsess20.createDurableSubscriber(topic1, "sub10");
-
-
- //To make sure paging occurs first send some messages before receiving
-
- Runner[] runners = new Runner[] {
-
- new Sender("prod1", sess1, prod1, NUM_NON_PERSISTENT_PRESEND),
- new Sender("prod2", sess2, prod2, NUM_PERSISTENT_PRESEND)
- };
-
- runRunners(runners);
-
- runners = new Runner[] {
- //4 auto ack
- new Receiver(rsess1, cons1, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
- new Receiver(rsess2, cons2, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
- new Receiver(rsess3, cons3, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
- new Receiver(rsess4, cons4, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
-
- //4 dups ok
- new Receiver(rsess5, cons5, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
- new Receiver(rsess6, cons6, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
- new Receiver(rsess7, cons7, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
- new Receiver(rsess8, cons8, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
-
- //4 client ack
- new RecoveringReceiver(rsess9, cons9, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 1, 1, false),
- new RecoveringReceiver(rsess10, cons10, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 10, 7, true),
- new RecoveringReceiver(rsess11, cons11, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 50, 21, false),
- new RecoveringReceiver(rsess12, cons12, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 100, 67, true),
-
- //4 transactional
-
- new TransactionalReceiver(rsess13, cons13, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 1, 1, false),
- new TransactionalReceiver(rsess14, cons14, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 10, 7, true),
- new TransactionalReceiver(rsess15, cons15, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 50, 21, false),
- new TransactionalReceiver(rsess16, cons16, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 100, 67, true),
-
- //4 2pc transactional
- new Transactional2PCReceiver(rxaSess1, cons17, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 1, 1, false),
- new Transactional2PCReceiver(rxaSess2, cons18, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 10, 7, true),
- new Transactional2PCReceiver(rxaSess3, cons19, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 50, 21, false),
- new Transactional2PCReceiver(rxaSess4, cons20, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 100, 67, true),
-
- new Sender("prod3", sess1, prod1, NUM_NON_PERSISTENT_MESSAGES),
- new Sender("prod4", sess2, prod2, NUM_PERSISTENT_MESSAGES)
- };
-
- runRunners(runners);
-
- conn1.close();
-
- conn2.close();
- }
-
- public void testConnectionConsumer() throws Exception
- {
- Connection conn = cf.createConnection();
- conn.start();
-
- Session sessSend = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- Session sessReceive = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- MessageProducer prod = sessSend.createProducer(queue1);
- prod.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
-
- Runner[] runners = new Runner[] { new Sender("prod1", sessSend, prod, 100000),
- new Receiver(conn, sessReceive, 100000, queue1) };
-
- runRunners(runners);
-
- conn.close();
- }
-
-}
Added: trunk/tests/src/org/jboss/test/messaging/jms/stress/TopicStressTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/stress/TopicStressTest.java (rev 0)
+++ trunk/tests/src/org/jboss/test/messaging/jms/stress/TopicStressTest.java 2007-05-09 12:38:58 UTC (rev 2662)
@@ -0,0 +1,197 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.messaging.jms.stress;
+
+import org.jboss.test.messaging.jms.stress.base.StressTestBase;
+
+import javax.jms.Connection;
+import javax.jms.DeliveryMode;
+import javax.jms.MessageConsumer;
+import javax.jms.MessageProducer;
+import javax.jms.Session;
+import javax.jms.XAConnection;
+import javax.jms.XASession;
+
+/**
+ *
+ * A TopicStressTest.
+ *
+ * @author <a href="tim.fox at jboss.com">Tim Fox</a>
+ * @version <tt>$Revision: 2349 $</tt>
+ *
+ * $Id: StressTest.java 2349 2007-02-19 14:15:53Z timfox $
+ */
+public class TopicStressTest extends StressTestBase
+{
+ public TopicStressTest(String name)
+ {
+ super(name);
+ }
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ }
+
+ public void tearDown() throws Exception
+ {
+ super.tearDown();
+ }
+
+ /*
+ * Stress a topic with with many non transactional, transactional and 2pc receivers.
+ * Non transactional receivers use ack modes of auto, dups and client ack.
+ * Client ack receivers go through a cycle of receving a batch, acking and recovering
+ * Transactional receivers go through a cycle of receiving commiting and rolling back.
+ * Half the consumers are durable and half non durable.
+ *
+ */
+ public void testTopicMultipleReceivers() throws Exception
+ {
+ Connection conn1 = cf.createConnection();
+
+ Session sess1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session sess2 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ MessageProducer prod1 = sess1.createProducer(topic1);
+ prod1.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+
+ MessageProducer prod2 = sess2.createProducer(topic1);
+ prod2.setDeliveryMode(DeliveryMode.PERSISTENT);
+
+ Connection conn2 = cf.createConnection();
+ conn2.setClientID("clientid1");
+ conn2.start();
+
+ //4 auto ack
+ Session rsess1 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session rsess2 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session rsess3 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Session rsess4 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ //4 dups
+ Session rsess5 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
+ Session rsess6 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
+ Session rsess7 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
+ Session rsess8 = conn2.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
+
+ //4 client
+ Session rsess9 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
+ Session rsess10 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
+ Session rsess11 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
+ Session rsess12 = conn2.createSession(false, Session.CLIENT_ACKNOWLEDGE);
+
+
+ //4 transactional
+ Session rsess13 = conn2.createSession(true, Session.SESSION_TRANSACTED);
+ Session rsess14 = conn2.createSession(true, Session.SESSION_TRANSACTED);
+ Session rsess15 = conn2.createSession(true, Session.SESSION_TRANSACTED);
+ Session rsess16 = conn2.createSession(true, Session.SESSION_TRANSACTED);
+
+ //4 2pc transactional
+ XASession rxaSess1 = ((XAConnection)conn2).createXASession();
+ XASession rxaSess2 = ((XAConnection)conn2).createXASession();
+ XASession rxaSess3 = ((XAConnection)conn2).createXASession();
+ XASession rxaSess4 = ((XAConnection)conn2).createXASession();
+
+ Session rsess17 = rxaSess1.getSession();
+ Session rsess18 = rxaSess2.getSession();
+ Session rsess19 = rxaSess3.getSession();
+ Session rsess20 = rxaSess4.getSession();
+
+
+ MessageConsumer cons1 = rsess1.createConsumer(topic1);
+ MessageConsumer cons2 = rsess2.createDurableSubscriber(topic1, "sub1");
+ MessageConsumer cons3 = rsess3.createConsumer(topic1);
+ MessageConsumer cons4 = rsess4.createDurableSubscriber(topic1, "sub2");
+ MessageConsumer cons5 = rsess5.createConsumer(topic1);
+ MessageConsumer cons6 = rsess6.createDurableSubscriber(topic1, "sub3");
+ MessageConsumer cons7 = rsess7.createConsumer(topic1);
+ MessageConsumer cons8 = rsess8.createDurableSubscriber(topic1, "sub4");
+ MessageConsumer cons9 = rsess9.createConsumer(topic1);
+ MessageConsumer cons10 = rsess10.createDurableSubscriber(topic1, "sub5");
+ MessageConsumer cons11 = rsess11.createConsumer(topic1);
+ MessageConsumer cons12 = rsess12.createDurableSubscriber(topic1, "sub6");
+ MessageConsumer cons13 = rsess13.createConsumer(topic1);
+ MessageConsumer cons14 = rsess14.createDurableSubscriber(topic1, "sub7");
+ MessageConsumer cons15 = rsess15.createConsumer(topic1);
+ MessageConsumer cons16 = rsess16.createDurableSubscriber(topic1, "sub8");
+ MessageConsumer cons17 = rsess17.createConsumer(topic1);
+ MessageConsumer cons18 = rsess18.createDurableSubscriber(topic1, "sub9");
+ MessageConsumer cons19 = rsess19.createConsumer(topic1);
+ MessageConsumer cons20 = rsess20.createDurableSubscriber(topic1, "sub10");
+
+
+ //To make sure paging occurs first send some messages before receiving
+
+ Runner[] runners = new Runner[] {
+
+ new Sender("prod1", sess1, prod1, NUM_NON_PERSISTENT_PRESEND),
+ new Sender("prod2", sess2, prod2, NUM_PERSISTENT_PRESEND)
+ };
+
+ runRunners(runners);
+
+ runners = new Runner[] {
+ //4 auto ack
+ new Receiver(rsess1, cons1, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
+ new Receiver(rsess2, cons2, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
+ new Receiver(rsess3, cons3, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
+ new Receiver(rsess4, cons4, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
+
+ //4 dups ok
+ new Receiver(rsess5, cons5, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
+ new Receiver(rsess6, cons6, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
+ new Receiver(rsess7, cons7, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, false),
+ new Receiver(rsess8, cons8, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, true),
+
+ //4 client ack
+ new RecoveringReceiver(rsess9, cons9, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 1, 1, false),
+ new RecoveringReceiver(rsess10, cons10, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 10, 7, true),
+ new RecoveringReceiver(rsess11, cons11, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 50, 21, false),
+ new RecoveringReceiver(rsess12, cons12, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 100, 67, true),
+
+ //4 transactional
+
+ new TransactionalReceiver(rsess13, cons13, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 1, 1, false),
+ new TransactionalReceiver(rsess14, cons14, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 10, 7, true),
+ new TransactionalReceiver(rsess15, cons15, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 50, 21, false),
+ new TransactionalReceiver(rsess16, cons16, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 100, 67, true),
+
+ //4 2pc transactional
+ new Transactional2PCReceiver(rxaSess1, cons17, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 1, 1, false),
+ new Transactional2PCReceiver(rxaSess2, cons18, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 10, 7, true),
+ new Transactional2PCReceiver(rxaSess3, cons19, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 50, 21, false),
+ new Transactional2PCReceiver(rxaSess4, cons20, NUM_NON_PERSISTENT_MESSAGES + NUM_PERSISTENT_MESSAGES + NUM_NON_PERSISTENT_PRESEND + NUM_PERSISTENT_PRESEND, 100, 67, true),
+
+ new Sender("prod3", sess1, prod1, NUM_NON_PERSISTENT_MESSAGES),
+ new Sender("prod4", sess2, prod2, NUM_PERSISTENT_MESSAGES)
+ };
+
+ runRunners(runners);
+
+ conn1.close();
+
+ conn2.close();
+ }
+
+}
More information about the jboss-cvs-commits
mailing list