[jboss-cvs] JBoss Messaging SVN: r1668 - branches/Branch_1_0_1_SP/tests/src/org/jboss/test/messaging/jms/stress

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Nov 30 19:16:46 EST 2006


Author: clebert.suconic at jboss.com
Date: 2006-11-30 19:16:45 -0500 (Thu, 30 Nov 2006)
New Revision: 1668

Modified:
   branches/Branch_1_0_1_SP/tests/src/org/jboss/test/messaging/jms/stress/ConcurrentCloseStressTest.java
Log:
http://jira.jboss.com/jira/browse/JBMESSAGING-660 - Just adding few counters

Modified: branches/Branch_1_0_1_SP/tests/src/org/jboss/test/messaging/jms/stress/ConcurrentCloseStressTest.java
===================================================================
--- branches/Branch_1_0_1_SP/tests/src/org/jboss/test/messaging/jms/stress/ConcurrentCloseStressTest.java	2006-12-01 00:09:21 UTC (rev 1667)
+++ branches/Branch_1_0_1_SP/tests/src/org/jboss/test/messaging/jms/stress/ConcurrentCloseStressTest.java	2006-12-01 00:16:45 UTC (rev 1668)
@@ -133,6 +133,25 @@
          }
       }
 
+      int messagesProduced=0;
+      int messagesRead=0;
+      for (int i = 0; i < producerThread.length; i++)
+      {
+         messagesProduced += producerThread[i].messagesProduced;
+      }
+
+      for (int i = 0; i < producerThread.length; i++)
+      {
+         messagesRead += readerThread[i].messagesRead;
+      }
+
+      log.info("The test produced " + messagesProduced + " and read " + messagesRead);
+
+      // This test bounces between commits and rollbacks in between several threads...
+      // The test is then non deterministic to provide a counter... I will keep the log.info
+      // but won't be doing an assertion here
+      //assertEquals("Messages Produced must be the same as Messages Read", messagesProduced, messagesRead);
+
       if (hasFailure)
       {
          fail ("An exception has occurred in one of the threads");
@@ -144,6 +163,7 @@
    {
       ArrayList exceptions = new ArrayList();
       protected int index;
+      public int messageCount = 0;
    }
 
 
@@ -154,6 +174,8 @@
 
       Queue queue;
 
+      int messagesRead = 0;
+
       public ReaderThread(int index, Connection conn, Queue queue) throws Exception
       {
          this.index = index;
@@ -164,16 +186,15 @@
 
       public void run()
       {
-         int messageCounter = 0;
          int commitCounter = 0;
          try
          {
             Session session = conn.createSession(true, Session.SESSION_TRANSACTED);
             MessageConsumer consumer = session.createConsumer((Destination)queue);
 
+            int lastCount = messageCount;
             while (true)
             {
-               messageCounter++;
                TextMessage message = (TextMessage) consumer.receive(5000);
                if (message == null)
                {
@@ -184,16 +205,21 @@
                // alternating commits and rollbacks
                if ( (commitCounter++) % 2 == 0)
                {
+                  messagesRead += (messageCount - lastCount);
+                  lastCount = messageCount;
                   log.debug("commit");
                   session.commit();
                }
                else
                {
+                  lastCount = messageCount;
                   log.debug("rollback");
                   session.rollback();
                }
 
-               if (messageCounter%7 == 0)
+               messageCount++;
+
+               if (messageCount %7 == 0)
                {
                   session.close();
 
@@ -201,12 +227,14 @@
                   consumer = session.createConsumer((Destination)queue);
                }
 
-               if (messageCounter % 50 == 0) 
+               if (messageCount % 50 == 0)
                {
-                  log.info("Reader " + index + " read " + messageCounter + " messages");
+                  log.info("Reader " + index + " read " + messageCount + " messages");
                }
             }
 
+            messagesRead += (messageCount - lastCount);
+
             session.commit();
             consumer.close();
             session.close();
@@ -229,7 +257,7 @@
 
       Connection conn;
       Queue queue;
-      private int messageCount;
+      int messagesProduced=0;
 
       public ProducerThread(int index, Connection conn, Queue queue) throws Exception
       {
@@ -245,27 +273,32 @@
          {
             try
             {
+               int lastMessage = messageCount;
                Session sess = conn.createSession(true, Session.SESSION_TRANSACTED);
                MessageProducer producer = sess.createProducer((Destination)queue);
 
                for (int j = 0; j < 20; j++)
                {
-                  messageCount ++;
                   producer.send(sess.createTextMessage("Message " + i + ", " + j));
 
                   if (j % 2 == 0)
                   {
                      log.debug("commit");
+                     messagesProduced += (messageCount - lastMessage);
+                     lastMessage = messageCount;
                      sess.commit();
                   }
                   else
                   {
                      log.debug("rollback");
+                     lastMessage = messageCount;
                      sess.rollback();
                   }
+                  messageCount ++;
 
                }
 
+               messagesProduced += ((messageCount) - lastMessage);
                sess.commit();
                sess.close();
 




More information about the jboss-cvs-commits mailing list