Simon Chalmers created ARTEMIS-2113:
---------------------------------------
Summary: Artemis doesn’t always respond with attach/detach frames
confirming the opening/closing of the links
Key: ARTEMIS-2113
URL: https://issues.apache.org/jira/browse/ARTEMIS-2113
Project: ActiveMQ Artemis
Issue Type: Bug
Components: AMQP
Affects Versions: 2.6.3
Environment: This test was done in .NET using the Amqp.Net Lite
library 2.1.4 (which is the latest version).
Reporter: Simon Chalmers
A trace of a message exchange with Artemis where this has occurred is below.
The lines highlighted in yellow show opening and then closing two AMQP links,
but Artemis doesn’t respond after that with its own attach/detach frames, which
acknowledge the opening/closing of those links. The lines highlighted in green
are heartbeat frames sent to Artemis, sent every 15 seconds, which illustrates
that one minute passed without receiving the attach/detach frames from Artemis.
{{SEND AMQP 3 1 0 0
RECV sasl-mechanisms(sasl-server-mechanisms:[PLAIN,ANONYMOUS])
SEND sasl-init(mechanism:PLAIN,initial-response:...,hostname:localhost)
RECV sasl-outcome(code:0)
SEND AMQP 0 1.0.0
SEND (ch=0)
open(container-id:AMQPNetLite-43a6c9ad,host-name:localhost,max-frame-size:262144,channel-max:255,idle-time-out:2147483647)
RECV AMQP 0 1 0 0
SEND (ch=0)
begin(next-outgoing-id:4294967293,incoming-window:2048,outgoing-window:2048,handle-max:63)
RECV (ch=0)
open(container-id:0.0.0.0,max-frame-size:131072,channel-max:65535,idle-time-out:30000,offered-capabilities:[sole-connection-for-container,DELAYED_DELIVERY,SHARED-SUBS,ANONYMOUS-RELAY],properties:[product:apache-activemq-artemis,version:2.6.3])
SEND (ch=0)
attach(name:link1,handle:0,role:False,source:source(),target:target(address:q1),initial-delivery-count:0)
SEND (ch=0) detach(handle:0,closed:True)
SEND (ch=0)
attach(name:link0,handle:1,role:False,source:source(),target:target(address:q0),initial-delivery-count:0)
SEND (ch=0) detach(handle:1,closed:True)
RECV (ch=0)
begin(remote-channel:0,next-outgoing-id:1,incoming-window:2147483647,outgoing-window:2147483647,handle-max:65535)
SEND (ch=0) empty
SEND (ch=0) empty
SEND (ch=0) empty
SEND (ch=0) empty}}
Note that this doesn’t always happen. Sometimes Artemis does respond, as shown
by the lines highlighted in grey in the trace below.
{{SEND AMQP 3 1 0 0
RECV sasl-mechanisms(sasl-server-mechanisms:[PLAIN,ANONYMOUS])
SEND sasl-init(mechanism:PLAIN,initial-response:...,hostname:localhost)
RECV sasl-outcome(code:0)
SEND AMQP 0 1.0.0
SEND (ch=0)
open(container-id:AMQPNetLite-b00e0be7,host-name:localhost,max-frame-size:262144,channel-max:255,idle-time-out:2147483647)
RECV AMQP 0 1 0 0
RECV (ch=0)
open(container-id:0.0.0.0,max-frame-size:131072,channel-max:65535,idle-time-out:30000,offered-capabilities:[sole-connection-for-container,DELAYED_DELIVERY,SHARED-SUBS,ANONYMOUS-RELAY],properties:[product:apache-activemq-artemis,version:2.6.3])
SEND (ch=0)
begin(next-outgoing-id:4294967293,incoming-window:2048,outgoing-window:2048,handle-max:63)
RECV (ch=0)
begin(remote-channel:0,next-outgoing-id:1,incoming-window:2147483647,outgoing-window:2147483647,handle-max:65535)
SEND (ch=0)
attach(name:link1,handle:0,role:False,source:source(),target:target(address:q1),initial-delivery-count:0)
SEND (ch=0) detach(handle:0,closed:True)
SEND (ch=0)
attach(name:link0,handle:1,role:False,source:source(),target:target(address:q0),initial-delivery-count:0)
SEND (ch=0) detach(handle:1,closed:True)
RECV (ch=0)
attach(name:link1,handle:0,role:True,snd-settle-mode:2,rcv-settle-mode:0,source:source(),target:target(address:q1))
RECV (ch=0)
flow(next-in-id:4294967293,in-window:2147483647,next-out-id:1,out-window:2147483647,handle:0,delivery-count:0,link-credit:1000)
RECV (ch=0) detach(handle:0,closed:True)
SEND (ch=0)
attach(name:link1,handle:0,role:False,source:source(),target:target(address:q1),initial-delivery-count:0)
SEND (ch=0) detach(handle:0,closed:True)
SEND (ch=0) empty
SEND (ch=0) empty
SEND (ch=0) empty
SEND (ch=0) empty
}}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)