-
Bug
-
Resolution: Done
-
Major
-
A-MQ 7.0.0.ER4
-
None
-
A-MQ7 broker running on Fedora 21
Configured with core queue 'amq.topic' only
Client receiver connects to queue 'amq.topicXXX'
When the client attaches to the receiver to source 'amq.topicXXX' the broker emits
java.lang.NullPointerException at org.proton.plug.context.AbstractConnectionContext$LocalListener.onFlow(AbstractConnectionContext.java:259) at org.proton.plug.handler.Events.dispatch(Events.java:85) at org.proton.plug.handler.impl.ProtonHandlerImpl.dispatch(ProtonHandlerImpl.java:362) at org.proton.plug.handler.impl.ProtonHandlerImpl.access$000(ProtonHandlerImpl.java:49) at org.proton.plug.handler.impl.ProtonHandlerImpl$1.run(ProtonHandlerImpl.java:63) at org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:100) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
Over the wire the protocol is handled perfectly. An Attach is returned to the client followed immediately with a Detach that has a condition. All links, sessions, and connections are closed correctly.
AMQP frames ◊ ◊◊ 5.968655 Frame 352 10.18.96.1:11335 -> 10.10.53.31:5672 -> init AMQP (0): (1.0.0) ◊ ◊◊ 5.982233 Frame 353 10.18.96.1:11335 -> 10.10.53.31:5672 -> open [0] ◊ ◊◊ 5.983141 Frame 354 10.18.96.1:11335 -> 10.10.53.31:5672 -> begin [0,null] ◊ ◊◊ 5.988035 Frame 355 10.18.96.1:11335 -> 10.10.53.31:5672 -> attach [0,0] receiver receiver-drain (source: amq.topicXXX, target: null) ◊ ◊◊ 5.991157 Frame 356 10.18.96.1:11335 -> 10.10.53.31:5672 -> flow [0,0] (0,10) ◊ ◊◊ 6.036822 Frame 359 10.18.96.1:11335 <- 10.10.53.31:5672 <- init AMQP (0): (1.0.0) ◊ ◊◊ 6.049694 Frame 362 10.18.96.1:11335 <- 10.10.53.31:5672 <- open [0] ◊ ◊◊ 6.050310 Frame 364 10.18.96.1:11335 <- 10.10.53.31:5672 <- begin [0,0] ◊ ◊◊ 6.054407 Frame 365 10.18.96.1:11335 <- 10.10.53.31:5672 <- attach [0,0] sender receiver-drain (source: null, target: null), detach [0,0] ◊ attach [0,0] sender receiver-drain (source: null, target: null) ◊ detach [0,0] Length: 85 Doff: 2 Type: AMQP (0) Channel: 0 Performative: detach (22) Arguments (list of 3 elements) Handle: 0 (67) Closed: true (65) Error (list of 2 elements) Condition: amqp:internal-error Description: AMQ219010: source address does not exist ◊ ◊◊ 6.072061 Frame 367 10.18.96.1:11335 -> 10.10.53.31:5672 -> detach [0,0] ◊ ◊◊ 6.077239 Frame 368 10.18.96.1:11335 -> 10.10.53.31:5672 -> end [0] ◊ ◊◊ 6.144358 Frame 372 10.18.96.1:11335 <- 10.10.53.31:5672 <- end [0] ◊ ◊◊ 6.146988 Frame 373 10.18.96.1:11335 -> 10.10.53.31:5672 -> close [0] ◊ ◊◊ 6.213966 Frame 374 10.18.96.1:11335 <- 10.10.53.31:5672 <- close [0]
From the client side the broker is doing everything right.