[hornetq-commits] JBoss hornetq SVN: r10349 - branches/Branch_2_2_EAP/src/main/org/hornetq/jms/client.

do-not-reply at jboss.org do-not-reply at jboss.org
Mon Mar 21 13:36:07 EDT 2011


Author: clebert.suconic at jboss.com
Date: 2011-03-21 13:36:06 -0400 (Mon, 21 Mar 2011)
New Revision: 10349

Modified:
   branches/Branch_2_2_EAP/src/main/org/hornetq/jms/client/HornetQMessageConsumer.java
Log:
https://issues.jboss.org/browse/JBPAPP-6110 - dealing with IndexOutOfBoundsException during communication errors

Modified: branches/Branch_2_2_EAP/src/main/org/hornetq/jms/client/HornetQMessageConsumer.java
===================================================================
--- branches/Branch_2_2_EAP/src/main/org/hornetq/jms/client/HornetQMessageConsumer.java	2011-03-21 16:19:54 UTC (rev 10348)
+++ branches/Branch_2_2_EAP/src/main/org/hornetq/jms/client/HornetQMessageConsumer.java	2011-03-21 17:36:06 UTC (rev 10349)
@@ -228,8 +228,6 @@
 
          if (message != null)
          {
-            message.acknowledge();
-
             msg = HornetQMessage.createMessage(message,
                                                ackMode == Session.CLIENT_ACKNOWLEDGE ? session.getCoreSession() : null);
 
@@ -237,12 +235,16 @@
             {
                msg.doBeforeReceive();
             }
-            catch (Exception e)
+            catch (Throwable e)
             {
                HornetQMessageConsumer.log.error("Failed to prepare message for delivery", e);
 
                return null;
             }
+
+            // We Do the ack after doBeforeRecive, as in the case of large messages, this may fail so we don't want messages redelivered
+            // https://issues.jboss.org/browse/JBPAPP-6110
+            message.acknowledge();
          }
 
          return msg;



More information about the hornetq-commits mailing list