You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rh...@apache.org on 2008/06/09 21:26:59 UTC

svn commit: r665841 - in /incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client: AMQSession_0_10.java BasicMessageProducer_0_10.java

Author: rhs
Date: Mon Jun  9 12:26:59 2008
New Revision: 665841

URL: http://svn.apache.org/viewvc?rev=665841&view=rev
Log:
QPID-901: always reset the auto-sync mode even if the call fails

Modified:
    incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java
    incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java

Modified: incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java?rev=665841&r1=665840&r2=665841&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java (original)
+++ incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java Mon Jun  9 12:26:59 2008
@@ -221,8 +221,14 @@
     public void sendCommit() throws AMQException, FailoverException
     {
         getQpidSession().setAutoSync(true);
-        getQpidSession().txCommit();
-        getQpidSession().setAutoSync(false);
+        try
+        {
+            getQpidSession().txCommit();
+        }
+        finally
+        {
+            getQpidSession().setAutoSync(false);
+        }
         // We need to sync so that we get notify of an error.
         getCurrentException();
     }

Modified: incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java?rev=665841&r1=665840&r2=665841&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java (original)
+++ incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java Mon Jun  9 12:26:59 2008
@@ -212,17 +212,23 @@
             boolean sync = (deliveryMode == DeliveryMode.PERSISTENT &&
                             getSession().getAMQConnection().getSyncPersistence());
 
-            if(sync)
+            if (sync)
             {
                 ssn.setAutoSync(true);
             }
-            ssn.messageTransfer(destination.getExchangeName().toString(),
-                                message.get010Message(),
-                                ssn.TRANSFER_CONFIRM_MODE_NOT_REQUIRED,
-                                ssn.TRANSFER_ACQUIRE_MODE_PRE_ACQUIRE);
-            if (sync)
+            try
+            {
+                ssn.messageTransfer(destination.getExchangeName().toString(),
+                                    message.get010Message(),
+                                    ssn.TRANSFER_CONFIRM_MODE_NOT_REQUIRED,
+                                    ssn.TRANSFER_ACQUIRE_MODE_PRE_ACQUIRE);
+            }
+            finally
             {
-                ssn.setAutoSync(false);
+                if (sync)
+                {
+                    ssn.setAutoSync(false);
+                }
             }
         }
         catch (IOException e)