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

Robbie Gemmell closed ARTEMIS-2268.
-----------------------------------
    Resolution: Not A Problem

> Encountered exception 
> [org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerReceiverContext]
>  Expected Symbol type but found encoding: -95: 
> org.apache.qpid.proton.ProtonException: Expected Symbol type but found 
> encoding: -95
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-2268
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2268
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>            Reporter: Leo Provido
>            Priority: Major
>
> We were trying out some existing tests with the latest build of Artemis 
> (2.7.0-SNAPSHOT - as of 27-Feb-2019) and we encountered an exception thrown. 
> When this occurs, our consumer is replying to a received message (i.e. 
> sending a message to another queue on the same broker).  The exception 
> message that is shown in the Artemis log is also reported back via the AMQP 
> client library.
> Below shows the exception and stack trace found in artemis-service.out.log.
> 2019-03-05 16:17:44,954 WARN  
> [org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerReceiverContext]
>  Expected Symbol type but found encoding: -95: 
> org.apache.qpid.proton.ProtonException: Expected Symbol type but found 
> encoding: -95
>       at 
> org.apache.qpid.proton.codec.DecoderImpl.readSymbol(DecoderImpl.java:771) 
> [proton-j-0.31.0.jar:]
>       at 
> org.apache.qpid.proton.codec.messaging.FastPathMessageAnnotationsType.readValue(FastPathMessageAnnotationsType.java:126)
>  [proton-j-0.31.0.jar:]
>       at 
> org.apache.qpid.proton.codec.messaging.FastPathMessageAnnotationsType.readValue(FastPathMessageAnnotationsType.java:43)
>  [proton-j-0.31.0.jar:]
>       at 
> org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage.scanMessageData(AMQPMessage.java:480)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage.ensureMessageDataScanned(AMQPMessage.java:437)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage.<init>(AMQPMessage.java:177)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.serverSend(AMQPSessionCallback.java:433)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerReceiverContext.actualDelivery(ProtonServerReceiverContext.java:304)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerReceiverContext.onMessage(ProtonServerReceiverContext.java:299)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPConnectionContext.onDelivery(AMQPConnectionContext.java:541)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.handler.Events.dispatch(Events.java:92)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler.dispatch(ProtonHandler.java:484)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler.flush(ProtonHandler.java:284)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.handler.ProtonHandler.inputBuffer(ProtonHandler.java:241)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPConnectionContext.inputBuffer(AMQPConnectionContext.java:170)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.protocol.amqp.broker.ActiveMQProtonRemotingConnection.bufferReceived(ActiveMQProtonRemotingConnection.java:149)
>  [artemis-amqp-protocol-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:643)
>  [artemis-server-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:73)
>  [artemis-core-client-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) 
> [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) 
> [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) 
> [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
>  [netty-all-4.1.28.Final.jar:4.1.28.Final]
>       at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
> The Exception that gets thrown is in the code below, which can be found in 
> https://github.com/apache/qpid-proton-j/blob/master/proton-j/src/main/java/org/apache/qpid/proton/codec/DecoderImpl.java#L757
>           public Symbol readSymbol(final Symbol defaultValue)
>           {
>               byte encodingCode = _buffer.get();
>       
>               switch (encodingCode)
>               {
>                   case EncodingCodes.SYM8:
>                       return (Symbol) _constructors[EncodingCodes.SYM8 & 
> 0xff].readValue();
>                   case EncodingCodes.SYM32:
>                       return (Symbol) _constructors[EncodingCodes.SYM32 & 
> 0xff].readValue();
>                   case EncodingCodes.NULL:
>                       return defaultValue;
>                   default:
>                       throw new ProtonException("Expected Symbol type but 
> found encoding: " + encodingCode);
>               }
>           }
> From the exception message (org.apache.qpid.proton.ProtonException: Expected 
> Symbol type but found encoding: -95), encoding code has symbol -95 which does 
> not match any of the switch cases SYM8, SYM32 and NULL.
> Note that this issue does not occur in Artemis 2.6.3 and 2.6.4 but does occur 
> in the latest Artemis build (2.7.0-SNAPSHOT - as of 27-Feb-2019). 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to