[jboss-cvs] JBossAS SVN: r63916 - branches/JBoss_3_2_6_CP/messaging/src/main/org/jboss/mq.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Jul 9 15:35:22 EDT 2007


Author: vivekl at redhat.com
Date: 2007-07-09 15:35:22 -0400 (Mon, 09 Jul 2007)
New Revision: 63916

Modified:
   branches/JBoss_3_2_6_CP/messaging/src/main/org/jboss/mq/SpyMessageConsumer.java
Log:
- ASPATCH-233: JBAS-3677 - JBAS-3634 - Acknowledgement of transacted message in MessageListener should be inside delivery lock



Modified: branches/JBoss_3_2_6_CP/messaging/src/main/org/jboss/mq/SpyMessageConsumer.java
===================================================================
--- branches/JBoss_3_2_6_CP/messaging/src/main/org/jboss/mq/SpyMessageConsumer.java	2007-07-09 18:58:20 UTC (rev 63915)
+++ branches/JBoss_3_2_6_CP/messaging/src/main/org/jboss/mq/SpyMessageConsumer.java	2007-07-09 19:35:22 UTC (rev 63916)
@@ -659,6 +659,13 @@
             if (mes instanceof SpyEncapsulatedMessage)
                message = ((SpyEncapsulatedMessage) mes).getMessage();
 
+            //Handle runtime exceptions. These are handled as per the spec if
+            // you assume
+            //the number of times erroneous messages are redelivered in
+            // auto_acknowledge mode
+            //is 0. :)
+            session.obtainDeliveryLock();
+
             if (session.transacted)
             {
                // REVIEW: for an XASession without a transaction this will ack the message
@@ -668,14 +675,8 @@
                if (trace)
                   log.trace("run() acknowledging message in tx mes=" + mes.getJMSMessageID() + " " + this); 
                session.connection.spyXAResourceManager.ackMessage(session.getCurrentTransactionId(), mes);
-            }
-
-            //Handle runtime exceptions. These are handled as per the spec if
-            // you assume
-            //the number of times erroneous messages are redelivered in
-            // auto_acknowledge mode
-            //is 0. :)
-            session.obtainDeliveryLock();
+            }            
+            
             try
             {
                session.addUnacknowlegedMessage((SpyMessage) message);




More information about the jboss-cvs-commits mailing list