diff options
| author | Rajith Muditha Attapattu <rajith@apache.org> | 2011-06-20 17:46:16 +0000 |
|---|---|---|
| committer | Rajith Muditha Attapattu <rajith@apache.org> | 2011-06-20 17:46:16 +0000 |
| commit | 3eecaff063207e66d72c08754143069cb977d0c5 (patch) | |
| tree | 744f9c80353d34e5db1c6f4bda00757392479400 /java/common/src | |
| parent | 2053d719ef1248c18b2db6a70c949c55a9867860 (diff) | |
| download | qpid-python-3eecaff063207e66d72c08754143069cb977d0c5.tar.gz | |
QPID-3311 Committing a patch by Siddhesh Poyarekar
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1137717 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/common/src')
| -rw-r--r-- | java/common/src/main/java/org/apache/qpid/transport/Connection.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/transport/Connection.java b/java/common/src/main/java/org/apache/qpid/transport/Connection.java index dc32569ee8..19f00378b1 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/Connection.java +++ b/java/common/src/main/java/org/apache/qpid/transport/Connection.java @@ -467,11 +467,12 @@ public class Connection extends ConnectionInvoker { synchronized (lock) { + List <Binary> transactedSessions = new ArrayList(); for (Session ssn : sessions.values()) { if (ssn.isTransacted()) - { - removeSession(ssn); + { + transactedSessions.add(ssn.getName()); ssn.setState(Session.State.CLOSED); } else @@ -481,6 +482,11 @@ public class Connection extends ConnectionInvoker ssn.resume(); } } + + for (Binary ssn_name : transactedSessions) + { + sessions.remove(ssn_name); + } setState(OPEN); } } |
