Lionel Cons created ARTEMIS-631:
-----------------------------------

             Summary: Unnecessary stack trace in case of incorrect selector
                 Key: ARTEMIS-631
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-631
             Project: ActiveMQ Artemis
          Issue Type: Bug
            Reporter: Lionel Cons


I've tried to use an invalid selector via STOMP. The broker complained with a 
stack trace:

{code}
2016-07-15 08:02:07,754 [org.apache.activemq.artemis.core.server] ERROR 
AMQ224006: Invalid filter: foo/bar: 
org.apache.activemq.artemis.selector.filter.FilterException: foo/bar
        at 
org.apache.activemq.artemis.selector.impl.SelectorParser.parse(SelectorParser.java:90)
 [artemis-selector-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.core.filter.impl.FilterImpl.createFilter(FilterImpl.java:78)
 [artemis-server-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.createQueue(ActiveMQServerImpl.java:2145)
 [artemis-server-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.createQueue(ActiveMQServerImpl.java:1406)
 [artemis-server-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.createQueue(ServerSessionImpl.java:505)
 [artemis-server-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.core.protocol.stomp.StompSession.addSubscription(StompSession.java:295)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.StompProtocolManager.createSubscription(StompProtocolManager.java:389)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.StompConnection.subscribe(StompConnection.java:642)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.VersionedStompFrameHandler.onSubscribe(VersionedStompFrameHandler.java:261)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.VersionedStompFrameHandler.handleFrame(VersionedStompFrameHandler.java:91)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.StompConnection.handleFrame(StompConnection.java:489)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.StompProtocolManager.handleBuffer(StompProtocolManager.java:172)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.protocol.stomp.StompConnection.bufferReceived(StompConnection.java:349)
 [artemis-stomp-protocol-1.4.0-SNAPSHOT.jar:]
        at 
org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:609)
 [artemis-server-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:68)
 [artemis-core-client-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
 [netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
 [netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
 [netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
 [netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) 
[netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
 [netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) 
[netty-all-4.0.32.Final.jar:4.0.32.Final]
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) 
[netty-all-4.0.32.Final.jar:4.0.32.Final]
        at 
io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112)
 [netty-all-4.0.32.Final.jar:4.0.32.Final]
        at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_92]
Caused by: org.apache.activemq.artemis.selector.strict.ParseException: 
Expression will not result in a boolean value: (foo / bar)
        at 
org.apache.activemq.artemis.selector.strict.StrictParser.asBooleanExpression(StrictParser.java:39)
 [artemis-selector-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.selector.strict.StrictParser.JmsSelector(StrictParser.java:49)
 [artemis-selector-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        at 
org.apache.activemq.artemis.selector.impl.SelectorParser.parse(SelectorParser.java:84)
 [artemis-selector-1.4.0-SNAPSHOT.jar:1.4.0-SNAPSHOT]
        ... 24 more
{code}

A single error line is enough. The full stack trace does not bring anything and 
should be removed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to