Author: robbie
Date: Tue Oct 11 12:01:06 2011
New Revision: 1181735

URL: http://svn.apache.org/viewvc?rev=1181735&view=rev
Log:
QPID-3534: ignore transport exceptions raised whilst closing the network 
connection after sending the close-ok reply, as these can prevent failover 
occurring and are actually related to the broker (incorrectly) having already 
closed the socket

Applied patch from Oleksandr Rudyy<[email protected]> and myself.

Modified:
    
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java

Modified: 
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java?rev=1181735&r1=1181734&r2=1181735&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
 (original)
+++ 
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
 Tue Oct 11 12:01:06 2011
@@ -47,6 +47,7 @@ import org.apache.qpid.framing.ProtocolV
 import org.apache.qpid.protocol.AMQConstant;
 import org.apache.qpid.protocol.AMQVersionAwareProtocolSession;
 import org.apache.qpid.transport.Sender;
+import org.apache.qpid.transport.TransportException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -362,7 +363,15 @@ public class AMQProtocolSession implemen
 
     public void closeProtocolSession() throws AMQException
     {
-        _protocolHandler.getNetworkConnection().close();
+        try
+        {
+            _protocolHandler.getNetworkConnection().close();
+        }
+        catch(TransportException e)
+        {
+            //ignore such exceptions, they were already logged
+            //and this is a forcible close.
+        }
     }
 
     public void failover(String host, int port)



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to