[ 
https://issues.apache.org/jira/browse/ARTEMIS-2437?focusedWorklogId=294182&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-294182
 ]

ASF GitHub Bot logged work on ARTEMIS-2437:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 13/Aug/19 21:02
            Start Date: 13/Aug/19 21:02
    Worklog Time Spent: 10m 
      Work Description: tabish121 commented on issue #2795: ARTEMIS-2437 Allow 
extended types in annotations in AMQP to Core
URL: https://github.com/apache/activemq-artemis/pull/2795#issuecomment-521008001
 
 
   As reported in the original JIRA when an AMQP message is converted to core 
that contains complex AMQP types inside annotation sections the converter 
currently blows up instead of handling the message which is not correct as a 
core client should still be able to receive the message.  For the cases of 
conversions due to large messages or moving over clusters the current broker 
again cannot handle those and so this is a reasonable fix as it preserves the 
AMQP data.  If you want to contribute a complete solution such that AMQP to 
AMQP the message is never converted that would be welcome however until that 
time a fix is needed.  
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 294182)
    Time Spent: 50m  (was: 40m)

> 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
>          Time Spent: 50m
>  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
(v7.6.14#76016)

Reply via email to