You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by lq...@apache.org on 2017/07/21 10:17:04 UTC

qpid-broker-j git commit: QPID-7855: [Java Broker] Consider Sessions closing when the underlying connection is closing

Repository: qpid-broker-j
Updated Branches:
  refs/heads/master ecf90c9c5 -> 7aceb5f3f


QPID-7855: [Java Broker] Consider Sessions closing when the underlying connection is closing


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/7aceb5f3
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/7aceb5f3
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/7aceb5f3

Branch: refs/heads/master
Commit: 7aceb5f3fb0402fe613a6b5e775457f07f6bf082
Parents: ecf90c9
Author: Lorenz Quack <lq...@apache.org>
Authored: Fri Jul 21 10:44:20 2017 +0100
Committer: Lorenz Quack <lq...@apache.org>
Committed: Fri Jul 21 11:10:14 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/qpid/server/transport/AMQPConnection.java  | 2 ++
 .../qpid/server/protocol/v0_10/AMQPConnection_0_10Impl.java    | 6 ++++++
 .../org/apache/qpid/server/protocol/v0_10/ServerSession.java   | 2 +-
 .../java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java  | 2 +-
 .../apache/qpid/server/protocol/v0_8/AMQPConnection_0_8.java   | 2 --
 .../apache/qpid/server/protocol/v1_0/AMQPConnection_1_0.java   | 2 --
 .../java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java | 2 +-
 7 files changed, 11 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-core/src/main/java/org/apache/qpid/server/transport/AMQPConnection.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/transport/AMQPConnection.java b/broker-core/src/main/java/org/apache/qpid/server/transport/AMQPConnection.java
index 4ed7d58..1b872b9 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/transport/AMQPConnection.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/transport/AMQPConnection.java
@@ -116,6 +116,8 @@ public interface AMQPConnection<C extends AMQPConnection<C>>
 
     boolean isTransportBlockedForWriting();
 
+    boolean isClosing();
+
     long getMaxMessageSize();
 
     @Override

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/AMQPConnection_0_10Impl.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/AMQPConnection_0_10Impl.java b/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/AMQPConnection_0_10Impl.java
index 9458b77..ec9ebfa 100755
--- a/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/AMQPConnection_0_10Impl.java
+++ b/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/AMQPConnection_0_10Impl.java
@@ -219,6 +219,12 @@ public class AMQPConnection_0_10Impl extends AbstractAMQPConnection<AMQPConnecti
     }
 
     @Override
+    public boolean isClosing()
+    {
+        return _connection.isClosing() || _connection.isConnectionLost();
+    }
+
+    @Override
     public int getHeartbeatDelay()
     {
         return _connection.getHeartBeatDelay();

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSession.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSession.java b/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSession.java
index 40ab9d5..c57fef8 100644
--- a/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSession.java
+++ b/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSession.java
@@ -821,7 +821,7 @@ public class ServerSession extends SessionInvoker
 
     public boolean isClosing()
     {
-        return state == CLOSED || state == CLOSING;
+        return state == CLOSED || state == CLOSING || connection.isClosing();
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java b/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java
index 91d92b4..7f4bb2e 100644
--- a/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java
+++ b/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java
@@ -1197,7 +1197,7 @@ public class AMQChannel extends AbstractAMQPSession<AMQChannel, ConsumerTarget_0
     @Override
     public boolean isClosing()
     {
-        return _closing.get();
+        return _closing.get() || getConnection().isClosing();
     }
 
     public AMQPConnection_0_8<?> getConnection()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQPConnection_0_8.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQPConnection_0_8.java b/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQPConnection_0_8.java
index 66d45d9..35f787a 100644
--- a/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQPConnection_0_8.java
+++ b/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQPConnection_0_8.java
@@ -66,8 +66,6 @@ public interface AMQPConnection_0_8<C extends AMQPConnection_0_8<C>> extends AMQ
 
     ContextProvider getContextProvider();
 
-    boolean isClosing();
-
     void closeChannelOk(int channelId);
 
     int getBinaryDataLimit();

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0.java b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0.java
index f80696e..4e591d8 100644
--- a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0.java
+++ b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0.java
@@ -81,8 +81,6 @@ public interface AMQPConnection_1_0<C extends AMQPConnection_1_0<C>> extends AMQ
 
     boolean isClosed();
 
-    boolean isClosing();
-
     void close(Error error);
 
     Iterator<IdentifiedTransaction> getOpenTransactions();

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/7aceb5f3/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java
index a5fe374..5d9eb4e 100644
--- a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java
+++ b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java
@@ -1262,7 +1262,7 @@ public class Session_1_0 extends AbstractAMQPSession<Session_1_0, ConsumerTarget
     @Override
     public boolean isClosing()
     {
-        return END_STATES.contains(getSessionState());
+        return END_STATES.contains(getSessionState()) || getConnection().isClosing();
     }
 
     @Override


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org