You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "clebert suconic (Jira)" <ji...@apache.org> on 2019/08/26 15:48:07 UTC

[jira] [Reopened] (ARTEMIS-2437) AMQP message conversion fails if annotations contain values outwith simple property types

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

clebert suconic reopened ARTEMIS-2437:
--------------------------------------

> AMQP message conversion fails if annotations contain values outwith simple property types
> -----------------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-2437
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2437
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: AMQP
>    Affects Versions: 2.9.0
>            Reporter: Jiri Daněk
>            Assignee: Timothy Bish
>            Priority: Major
>             Fix For: 2.10.0
>
>          Time Spent: 2h
>  Remaining Estimate: 0h
>
> {noformat}
> $ bin/artemis browser --destination example
> Consumer:: filter = null
> Consumer ActiveMQQueue[example], thread=0 trying to browse 1000 messages
> [...]
> Consumer ActiveMQQueue[example], thread=0 browsing Alert!!!
> Consumer ActiveMQQueue[example], thread=0 browsed: 4 messages
> Consumer ActiveMQQueue[example], thread=0 Browser thread finished
> {noformat}
> In fact, there is 5 messages in the queue, and probably when browsing last one, the following error is printed to broker stdout.
> {noformat}
> 2019-07-31 15:07:30,742 ERROR [org.apache.activemq.artemis.core.server] AMQ224046: Exception while browser handled from Reference[627]:NON-RELIABLE:AMQPMessage [durable=false, messageID=627, address=example, size=121, applicationProperties=null, properties=Properties{messageId=null, userId=null, to='null', subject='null', replyTo='null', correlationId=null, contentType=null, contentEncoding=null, absoluteExpiryTime=null, creationTime=null, groupId='null', groupSequence=null, replyToGroupId='null'}, extraProperties = TypedProperties[_AMQ_AD=example]]: java.lang.RuntimeException: class java.util.LinkedHashMap is not a valid property type
>         at org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage.toCore(AMQPMessage.java:695) [artemis-amqp-protocol-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.protocol.core.impl.CoreSessionCallback.sendMessage(CoreSessionCallback.java:123) [artemis-server-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1168) [artemis-server-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:510) [artemis-server-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl$BrowserDeliverer.run(ServerConsumerImpl.java:1484) [artemis-server-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) [artemis-commons-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) [artemis-commons-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66) [artemis-commons-2.9.0.jar:2.9.0]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_212]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_212]
>         at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [artemis-commons-2.9.0.jar:2.9.0]
> Caused by: org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException: class java.util.LinkedHashMap is not a valid property type
>         at org.apache.activemq.artemis.utils.collections.TypedProperties.setObjectProperty(TypedProperties.java:1112) [artemis-commons-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.message.impl.CoreMessage.putObjectProperty(CoreMessage.java:1014) [artemis-core-client-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.message.impl.CoreMessage.putObjectProperty(CoreMessage.java:1030) [artemis-core-client-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.core.message.impl.CoreMessage.putObjectProperty(CoreMessage.java:53) [artemis-core-client-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.reader.MessageUtil.setObjectProperty(MessageUtil.java:262) [artemis-core-client-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.protocol.amqp.converter.jms.ServerJMSMessage.setObjectProperty(ServerJMSMessage.java:345) [artemis-amqp-protocol-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.protocol.amqp.converter.AmqpCoreConverter.setProperty(AmqpCoreConverter.java:441) [artemis-amqp-protocol-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.protocol.amqp.converter.AmqpCoreConverter.processMessageAnnotations(AmqpCoreConverter.java:281) [artemis-amqp-protocol-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.protocol.amqp.converter.AmqpCoreConverter.toCore(AmqpCoreConverter.java:202) [artemis-amqp-protocol-2.9.0.jar:2.9.0]
>         at org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage.toCore(AMQPMessage.java:692) [artemis-amqp-protocol-2.9.0.jar:2.9.0]
>         ... 10 more
> {noformat}
> When browsing messages in web console, no messages are displayed for this queue.
> I will add reproducer when I create it.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)