You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alex Rudyy (JIRA)" <ji...@apache.org> on 2017/03/15 14:12:41 UTC

[jira] [Resolved] (QPID-7692) [0-8..0-91] Message sent to fanout exchange with no routing key is not delivered to application

     [ https://issues.apache.org/jira/browse/QPID-7692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alex Rudyy resolved QPID-7692.
------------------------------
    Resolution: Fixed

The changes look reasonable to me. We need to merge them into 6.1.x

> [0-8..0-91]  Message sent to fanout exchange with no routing key is not delivered to application
> ------------------------------------------------------------------------------------------------
>
>                 Key: QPID-7692
>                 URL: https://issues.apache.org/jira/browse/QPID-7692
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>            Reporter: Keith Wall
>            Assignee: Keith Wall
>             Fix For: qpid-java-6.1.2, qpid-java-client-0-x-6.3.0
>
>
> If I publish a message to the fanout exchange with no routing key, then receive the same message, the client logs an error and the application fails to receive the message both otherwise continues.  The problem only occurs on the 0-8..0-91 code path and then only if the client is in BURL default address syntax.
> Example publish address that causes the problem:
> {noformat}
> destination.pub = ADDR: myfanout; {create :always, node: {type: topic, x-declare: { type: fanout}}}
> {noformat}
> The problem does not occur if a subject is used e.g. myfanout/myfanout; ... or if the address does not include the _options_ part.
> {noformat}
> 12:37:40.195 [Dispatcher-2-Conn-2] ERROR o.a.qpid.client.BasicMessageConsumer - Caught exception (dump follows) - ignoring...
> java.lang.IllegalArgumentException: routing/binding key  must not be null
> 	at org.apache.qpid.client.AMQDestination.<init>(AMQDestination.java:379) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQDestination.<init>(AMQDestination.java:369) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQDestination.<init>(AMQDestination.java:363) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQTopic.<init>(AMQTopic.java:66) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession_0_8$TopicDestinationCache.newDestination(AMQSession_0_8.java:1528) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession_0_8$TopicDestinationCache.newDestination(AMQSession_0_8.java:1524) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession_0_8$DestinationCache.getDestination(AMQSession_0_8.java:1515) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.message.AMQMessageDelegate_0_8.<init>(AMQMessageDelegate_0_8.java:127) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.message.AbstractJMSMessageFactory.create08MessageWithBody(AbstractJMSMessageFactory.java:122) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.message.AbstractJMSMessageFactory.createMessage(AbstractJMSMessageFactory.java:188) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.message.MessageFactoryRegistry.createMessage(MessageFactoryRegistry.java:126) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.BasicMessageConsumer_0_8.createJMSMessageFromUnprocessedMessage(BasicMessageConsumer_0_8.java:156) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.BasicMessageConsumer_0_8.createJMSMessageFromUnprocessedMessage(BasicMessageConsumer_0_8.java:47) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.BasicMessageConsumer.notifyMessage(BasicMessageConsumer.java:726) ~[qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession$Dispatcher.notifyConsumer(AMQSession.java:3662) [qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession$Dispatcher.dispatchMessage(AMQSession.java:3594) [qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession$Dispatcher.access$1300(AMQSession.java:3362) [qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession.dispatch(AMQSession.java:3355) [qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.message.UnprocessedMessage.dispatch(UnprocessedMessage.java:54) [qpid-client-6.1.1.jar:6.1.1]
> 	at org.apache.qpid.client.AMQSession$Dispatcher.run(AMQSession.java:3504) [qpid-client-6.1.1.jar:6.1.1]
> 	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org