You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Roddie Kieley (JIRA)" <ji...@apache.org> on 2018/05/24 01:01:00 UTC
[jira] [Created] (ARTEMIS-1883) Address name of ::test.topic
incorrectly interpreted as FQQN
Roddie Kieley created ARTEMIS-1883:
--------------------------------------
Summary: Address name of ::test.topic incorrectly interpreted as FQQN
Key: ARTEMIS-1883
URL: https://issues.apache.org/jira/browse/ARTEMIS-1883
Project: ActiveMQ Artemis
Issue Type: Bug
Affects Versions: 2.4.0
Environment: F27, openjdk version "1.8.0_171" for broker
RHEL7.2 with Qpid Dispatch 1.0.0 for router
Reporter: Roddie Kieley
When testing the Apache Qpid Router's address waypoint functionality along with autoLink's to the broker an autoLink addr of ::test.topic was utilized. This caused the following exception to be thrown by the broker:
{code:java}
2018-05-23 22:03:01,649 WARN [org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler] Incorrect Routing Type for queue, expecting: ANYCAST: java.lang.IllegalStateException: Incorrect Routing Type for queue, expecting: ANYC
AST
at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.queueQuery(AMQPSessionCallback.java:275) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.getMatchingQueue(ProtonServerSenderContext.java:442) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.initialise(ProtonServerSenderContext.java:390) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.AMQPSessionContext.addSender(AMQPSessionContext.java:168) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.AMQPConnectionContext.remoteLinkOpened(AMQPConnectionContext.java:235) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.AMQPConnectionContext.onRemoteOpen(AMQPConnectionContext.java:452) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.handler.Events.dispatch(Events.java:68) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler.dispatch(ProtonHandler.java:452) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler.flush(ProtonHandler.java:279) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler.inputBuffer(ProtonHandler.java:243) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.proton.AMQPConnectionContext.inputBuffer(AMQPConnectionContext.java:150) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.protocol.amqp.broker.ActiveMQProtonRemotingConnection.bufferReceived(ActiveMQProtonRemotingConnection.java:141) [artemis-amqp-protocol-2.4.0.amq-710004.jar:]
at org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:642) [artemis-server-2.4.0.amq-710004.jar:2.4.0.amq-710004]
at org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:68) [artemis-core-client-2.4.0.amq-710004.jar:2.4.0.amq-710004]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1359) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:935) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:797) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:404) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:304) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [netty-all-4.1.16.Final.jar:4.1.16.Final]
at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_171]
{code}
And the Apache Qpid Router to continuously activate and deactivate the autoLinks and associated linkRoute's as per:
{code:java}
2018-05-23 22:03:03.158211 -0230 ROUTER_CORE (info) Link Route Deactivated 'linkRoute/0' on connection broker1-conn
2018-05-23 22:03:03.158337 -0230 ROUTER_CORE (info) Link Route Deactivated 'linkRoute/1' on connection broker1-conn
2018-05-23 22:03:03.158372 -0230 ROUTER_CORE (info) Auto Link Deactivated 'autoLink/0' on connection broker1-conn
2018-05-23 22:03:03.158514 -0230 ROUTER_CORE (info) Auto Link Deactivated 'autoLink/1' on connection broker1-conn
2018-05-23 22:03:14.858123 -0230 ROUTER_CORE (info) Link Route Activated 'linkRoute/0' on connection broker1-conn
2018-05-23 22:03:14.858227 -0230 ROUTER_CORE (info) Link Route Activated 'linkRoute/1' on connection broker1-conn
2018-05-23 22:03:14.858284 -0230 ROUTER_CORE (info) Auto Link Activated 'autoLink/0' on connection broker1-conn
2018-05-23 22:03:14.858330 -0230 ROUTER_CORE (info) Auto Link Activated 'autoLink/1' on connection broker1-conn
2018-05-23 22:03:14.945575 -0230 ROUTER_CORE (info) Link Route Deactivated 'linkRoute/0' on connection broker1-conn
2018-05-23 22:03:14.945670 -0230 ROUTER_CORE (info) Link Route Deactivated 'linkRoute/1' on connection broker1-conn
2018-05-23 22:03:14.945705 -0230 ROUTER_CORE (info) Auto Link Deactivated 'autoLink/0' on connection broker1-conn
2018-05-23 22:03:14.945731 -0230 ROUTER_CORE (info) Auto Link Deactivated 'autoLink/1' on connection broker1-conn
2018-05-23 22:03:16.972014 -0230 ROUTER_CORE (info) Link Route Activated 'linkRoute/0' on connection broker1-conn
2018-05-23 22:03:16.972146 -0230 ROUTER_CORE (info) Link Route Activated 'linkRoute/1' on connection broker1-conn
2018-05-23 22:03:16.972180 -0230 ROUTER_CORE (info) Auto Link Activated 'autoLink/0' on connection broker1-conn
2018-05-23 22:03:16.972227 -0230 ROUTER_CORE (info) Auto Link Activated 'autoLink/1' on connection broker1-conn
2018-05-23 22:03:16.989380 -0230 ROUTER_CORE (info) Link Route Deactivated 'linkRoute/0' on connection broker1-conn
2018-05-23 22:03:16.989464 -0230 ROUTER_CORE (info) Link Route Deactivated 'linkRoute/1' on connection broker1-conn
2018-05-23 22:03:16.989497 -0230 ROUTER_CORE (info) Auto Link Deactivated 'autoLink/0' on connection broker1-conn
2018-05-23 22:03:16.989634 -0230 ROUTER_CORE (info) Auto Link Deactivated 'autoLink/1' on connection broker1-conn
{code}
According to the Artemis documentation on [Fully Qualified Queue Names|https://github.com/apache/activemq-artemis/blob/2.4.0/docs/user-manual/en/address-model.md] a fully qualified queue name is defined as:
{quote}
In these situations the client and use a fully qualified queue name, by specifying both the address name and the queue name, separated by a ::.
{quote}
The ::test.topic autoLink addr is not a FQQN by definition, however:
{code:java}
public class CompositeAddress {
.
.
.
public static boolean isFullyQualified(String address) {
return address.contains(SEPARATOR);
}
.
.
.
}{code}
which is less criteria than the documentation specifies.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)