[jboss-cvs] JBoss Messaging SVN: r5307 - branches/Branch_JBMESSAGING_1416/tests/src/org/jboss/test/messaging/jms/clustering.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Nov 7 06:14:06 EST 2008
Author: gaohoward
Date: 2008-11-07 06:14:05 -0500 (Fri, 07 Nov 2008)
New Revision: 5307
Modified:
branches/Branch_JBMESSAGING_1416/tests/src/org/jboss/test/messaging/jms/clustering/OrderingGroupBasicClusteringTest.java
Log:
JBMESSAGING-1416
Modified: branches/Branch_JBMESSAGING_1416/tests/src/org/jboss/test/messaging/jms/clustering/OrderingGroupBasicClusteringTest.java
===================================================================
--- branches/Branch_JBMESSAGING_1416/tests/src/org/jboss/test/messaging/jms/clustering/OrderingGroupBasicClusteringTest.java 2008-11-07 10:06:32 UTC (rev 5306)
+++ branches/Branch_JBMESSAGING_1416/tests/src/org/jboss/test/messaging/jms/clustering/OrderingGroupBasicClusteringTest.java 2008-11-07 11:14:05 UTC (rev 5307)
@@ -23,7 +23,9 @@
package org.jboss.test.messaging.jms.clustering;
+import java.util.HashSet;
import java.util.Map;
+import java.util.Set;
import javax.jms.Connection;
import javax.jms.DeliveryMode;
@@ -70,6 +72,101 @@
// Public --------------------------------------------------------
+
+ public void testOrderingGroupMergeQueue() throws Exception
+ {
+ Connection conn0 = null;
+ Connection conn1 = null;
+
+ try
+ {
+ // Objects Server0
+ conn0 = createConnectionOnServer(cf, 0);
+
+ assertEquals(0, getServerId(conn0));
+
+ Session session0 = conn0.createSession(true, Session.SESSION_TRANSACTED);
+
+ conn0.start();
+
+ JBossMessageProducer producer0 = (JBossMessageProducer)session0.createProducer(queue[0]);
+ producer0.enableOrderingGroup(null);
+
+ MessageConsumer consumer0 = session0.createConsumer(queue[0]);
+
+ for (int i = 0; i < 10; i++)
+ {
+ TextMessage tmm = session0.createTextMessage("message " + i);
+ producer0.send(tmm, DeliveryMode.PERSISTENT, i%10, Message.DEFAULT_TIME_TO_LIVE);
+ }
+
+ session0.commit();
+
+ TextMessage msg;
+
+ for (int i = 0; i < 5; i++)
+ {
+ msg = (TextMessage)consumer0.receive(5000);
+ session0.commit();
+ assertNotNull(msg);
+ log.info("msg = " + msg.getText());
+ assertEquals("message " + i, msg.getText());
+ }
+
+ log.info("****Closing consumer");
+ consumer0.close();
+
+
+ // Objects Server1
+ conn1 = createConnectionOnServer(cf, 1);
+
+ assertEquals(1, getServerId(conn1));
+
+ conn1.start();
+
+ Session session1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ MessageProducer producer1 = session1.createProducer(queue[1]);
+
+ producer1.setDeliveryMode(DeliveryMode.PERSISTENT);
+
+ for (int i = 10; i < 20; i++)
+ {
+ producer1.send(session0.createTextMessage("message " + i));
+ }
+
+ //At this point there should be 5 messages on the node 0 queue (5-9)
+ //and 10 messages on the node 1 queue (10-19)
+
+ ServerManagement.kill(1);
+
+ consumer0 = session0.createConsumer(queue[0]);
+
+ for (int i = 5; i < 20; i++)
+ {
+ msg = (TextMessage)consumer0.receive(5000);
+ assertNotNull(msg);
+ session0.commit();
+ log.info("msg = " + msg.getText());
+ assertEquals("message " + i, msg.getText());
+ }
+
+ assertNull(consumer0.receive(5000));
+ }
+ finally
+ {
+ if (conn0!=null)
+ {
+ conn0.close();
+ }
+
+ if (conn1!=null)
+ {
+ conn1.close();
+ }
+ }
+ }
+
/*
* make sure the ordering group works when failover happens.
*/
@@ -238,9 +335,6 @@
assertEquals(0, recoveryMapSize);
Map recoveryArea = ServerManagement.getServer(failoverNodeId)
.getRecoveryArea(queueName);
- Map ids = (Map) recoveryArea.get(new Integer(1));
- assertNotNull(ids);
- assertEquals(1, ids.size());
log.info("Killing failover node:" + failoverNodeId);
@@ -259,9 +353,6 @@
assertEquals(0, recoveryMapSize);
recoveryArea = ServerManagement.getServer(failoverNodeId)
.getRecoveryArea(queueName);
- ids = (Map) recoveryArea.get(new Integer(1));
- assertNotNull(ids);
- assertEquals(1, ids.size());
log.info("Failover node id is now " + failoverNodeId);
@@ -298,8 +389,6 @@
assertEquals(0, recoveryMapSize);
recoveryArea = ServerManagement.getServer(failoverNodeId)
.getRecoveryArea(queueName);
- ids = (Map) recoveryArea.get(new Integer(1));
- assertNull(ids);
Message moreMsg = cons1.receive(2000);
assertNull(moreMsg);
More information about the jboss-cvs-commits
mailing list