[
https://issues.apache.org/jira/browse/ARTEMIS-2608?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Federico Valeri updated ARTEMIS-2608:
-------------------------------------
Description:
This issue seems to be related to the conversion of binary properties.
Quick workaround: clear message properties in the AMQP producer.
Reproducer (attached):
1. Send a message to the broker using OpenWire client
2. Consume that message using AMQP client
3. Send that message back to the broker using AMQP client
Result: message could not be consumed by the OpenWire consumer.
{code:java}
2020-01-23 12:52:44,095 WARN [org.apache.activemq.artemis.core.server] Error
during message dispatch: java.lang.ClassCastException:
org.apache.activemq.artemis.api.core.SimpleString cannot be cast to [B
at
org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.toAMQMessage(OpenWireMessageConverter.java:629)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.createMessageDispatch(OpenWireMessageConverter.java:501)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.protocol.openwire.amq.AMQConsumer.handleDeliver(AMQConsumer.java:258)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.sendMessage(AMQSession.java:312)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1161)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:504)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:3510)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:2856)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl.access$2300(QueueImpl.java:122)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:3848)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[rt.jar:1.8.0_232]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[rt.jar:1.8.0_232]
at
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
{code}
was:
This issue seems to be related to the conversion of the "HDR" binary properties.
Quick workaround: clear message properties in the AMQP producer.
Reproducer:
1. Send a message to the broker using OpenWire client
2. Consume that message using AMQP client
3. Send that message back to the broker using AMQP client
Result: message could not be consumed by the OpenWire consumer.
{code:java}
2020-01-23 12:52:44,095 WARN [org.apache.activemq.artemis.core.server] Error
during message dispatch: java.lang.ClassCastException:
org.apache.activemq.artemis.api.core.SimpleString cannot be cast to [B
at
org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.toAMQMessage(OpenWireMessageConverter.java:629)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.createMessageDispatch(OpenWireMessageConverter.java:501)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.protocol.openwire.amq.AMQConsumer.handleDeliver(AMQConsumer.java:258)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.sendMessage(AMQSession.java:312)
[artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1161)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:504)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:3510)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:2856)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl.access$2300(QueueImpl.java:122)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:3848)
[artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[rt.jar:1.8.0_232]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[rt.jar:1.8.0_232]
at
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
[artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
{code}
> ClassCastException when consuming a message using OpenWire
> ----------------------------------------------------------
>
> Key: ARTEMIS-2608
> URL: https://issues.apache.org/jira/browse/ARTEMIS-2608
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: OpenWire
> Affects Versions: 2.11.0
> Reporter: Federico Valeri
> Priority: Major
> Attachments: cce-reproducer.zip
>
> Time Spent: 2h 50m
> Remaining Estimate: 0h
>
> This issue seems to be related to the conversion of binary properties.
> Quick workaround: clear message properties in the AMQP producer.
> Reproducer (attached):
> 1. Send a message to the broker using OpenWire client
> 2. Consume that message using AMQP client
> 3. Send that message back to the broker using AMQP client
> Result: message could not be consumed by the OpenWire consumer.
> {code:java}
> 2020-01-23 12:52:44,095 WARN [org.apache.activemq.artemis.core.server] Error
> during message dispatch: java.lang.ClassCastException:
> org.apache.activemq.artemis.api.core.SimpleString cannot be cast to [B
> at
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.toAMQMessage(OpenWireMessageConverter.java:629)
> [artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.createMessageDispatch(OpenWireMessageConverter.java:501)
> [artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.protocol.openwire.amq.AMQConsumer.handleDeliver(AMQConsumer.java:258)
> [artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.sendMessage(AMQSession.java:312)
> [artemis-openwire-protocol-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1161)
> [artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:504)
> [artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:3510)
> [artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:2856)
> [artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.server.impl.QueueImpl.access$2300(QueueImpl.java:122)
> [artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:3848)
> [artemis-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42)
> [artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31)
> [artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66)
> [artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> [rt.jar:1.8.0_232]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> [rt.jar:1.8.0_232]
> at
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
> [artemis-commons-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
> {code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)