You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ch...@apache.org on 2018/12/03 22:34:07 UTC
qpid-dispatch git commit: DISPATCH-1207: create multiple sessions
with same ID over single connection
Repository: qpid-dispatch
Updated Branches:
refs/heads/master 93c89a758 -> db87d5d3e
DISPATCH-1207: create multiple sessions with same ID over single connection
Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/db87d5d3
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/db87d5d3
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/db87d5d3
Branch: refs/heads/master
Commit: db87d5d3e7191b17af0804f741f8817e2eddb529
Parents: 93c89a7
Author: Chuck Rolke <cr...@redhat.com>
Authored: Mon Dec 3 17:33:16 2018 -0500
Committer: Chuck Rolke <cr...@redhat.com>
Committed: Mon Dec 3 17:33:16 2018 -0500
----------------------------------------------------------------------
tools/scraper/amqp_detail.py | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/db87d5d3/tools/scraper/amqp_detail.py
----------------------------------------------------------------------
diff --git a/tools/scraper/amqp_detail.py b/tools/scraper/amqp_detail.py
index 042a19b..72da87f 100755
--- a/tools/scraper/amqp_detail.py
+++ b/tools/scraper/amqp_detail.py
@@ -126,6 +126,8 @@ class SessionDetail:
self.channel = -1
self.peer_chan = -1
+ self.half_closed = False
+
self.direction = ""
# seq_no number differentiates items that otherwise have same identifiers.
@@ -424,7 +426,9 @@ class AllDetails():
conn_details.unaccounted_frame_list.append(plf)
continue
# session required
- channel = plf.data.channel
+ channel = plf.data.channel # For incoming begin this is the remote channel
+ # For outgoing begin this is the local channel
+ # Assume they are the same for the time being
sess_details = conn_details.FindSession(channel)
if sess_details == None:
sess_details = SessionDetail(conn_details, conn_details.GetSeqNo(), plf.datetime)
@@ -437,7 +441,15 @@ class AllDetails():
sess_details.amqp_errors += 1
if pname in ['begin', 'end', 'disposition']:
- sess_details.session_frame_list.append(plf)
+ sess_details.session_frame_list.append(plf) # Accumulate to current session
+ if pname == 'end':
+ # end is closing this session
+ if sess_details.half_closed:
+ conn_details.EndChannel(plf.data.channel)
+ else:
+ sess_details.half_closed = True
+ else:
+ pass # begin handled above; disposition needs no action
elif pname in ['attach']:
handle = plf.data.handle # proton local handle
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org