From aa5601da0b9c769559c6ed883da9f138f1505b4c Mon Sep 17 00:00:00 2001 From: Robert Gemmell Date: Mon, 20 Feb 2012 16:17:39 +0000 Subject: QPID-3857: Fix racing conditions on registering session in connection and sending session.attached command. Applied patch from Oleksandr Rudyy git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1291344 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/org/apache/qpid/server/transport/ServerConnectionDelegate.java | 1 - .../common/src/main/java/org/apache/qpid/transport/ServerDelegate.java | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) (limited to 'qpid/java') diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnectionDelegate.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnectionDelegate.java index 02c4ffa012..97d403213e 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnectionDelegate.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnectionDelegate.java @@ -256,7 +256,6 @@ public class ServerConnectionDelegate extends ServerDelegate if(isSessionNameUnique(atc.getName(), conn)) { ssn = sessionAttachImpl(conn, atc); - conn.registerSession(ssn); ((ServerConnection)conn).checkForNotification(); } else diff --git a/qpid/java/common/src/main/java/org/apache/qpid/transport/ServerDelegate.java b/qpid/java/common/src/main/java/org/apache/qpid/transport/ServerDelegate.java index d30e48ad85..be51a27da1 100644 --- a/qpid/java/common/src/main/java/org/apache/qpid/transport/ServerDelegate.java +++ b/qpid/java/common/src/main/java/org/apache/qpid/transport/ServerDelegate.java @@ -198,6 +198,7 @@ public class ServerDelegate extends ConnectionDelegate { Session ssn = getSession(conn, atc); conn.map(ssn, atc.getChannel()); + conn.registerSession(ssn); ssn.sessionAttached(atc.getName()); ssn.setState(Session.State.OPEN); -- cgit v1.2.1