[
https://issues.apache.org/jira/browse/ARTEMIS-4657?focusedWorklogId=910163&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-910163
]
ASF GitHub Bot logged work on ARTEMIS-4657:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 15/Mar/24 18:18
Start Date: 15/Mar/24 18:18
Worklog Time Spent: 10m
Work Description: tabish121 commented on code in PR #4833:
URL: https://github.com/apache/activemq-artemis/pull/4833#discussion_r1526667612
##########
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessageConverter.java:
##########
@@ -590,9 +591,11 @@ private static ActiveMQMessage
toAMQMessage(MessageReference reference,
}
amqMsg.setCommandId(commandId);
- final SimpleString corrId = getObjectProperty(coreMessage,
SimpleString.class, OpenWireConstants.JMS_CORRELATION_ID_PROPERTY);
- if (corrId != null) {
- amqMsg.setCorrelationId(corrId.toString());
+ final Object correlationID = coreMessage.getCorrelationID();
+ if (correlationID instanceof String || correlationID instanceof
SimpleString) {
+ amqMsg.setCorrelationId(correlationID.toString());
+ } else if (correlationID instanceof byte[]) {
+ amqMsg.setCorrelationId(new String((byte[])correlationID,
StandardCharsets.UTF_8));
Review Comment:
You could send bytes for a normal two byte encoding where the second byte
violates the prefix value of the encoding rules. The UTF8 spec uses upper bits
of the bytes to stretch out the characters encodings across subsequent bytes,
looking into the proton-j read UTF8 reading code in ReadableBuffer would likely
shed a bit of light on how to corrupt a trailing encoded byte.
Issue Time Tracking
-------------------
Worklog Id: (was: 910163)
Time Spent: 4h 20m (was: 4h 10m)
> Support correlation ID compatibility between JMS clients
> --------------------------------------------------------
>
> Key: ARTEMIS-4657
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4657
> Project: ActiveMQ Artemis
> Issue Type: Improvement
> Reporter: Justin Bertram
> Assignee: Justin Bertram
> Priority: Major
> Time Spent: 4h 20m
> Remaining Estimate: 0h
>
> Currently there are some use-cases with both {{String}} and {{byte[]}} values
> of JMS correlation ID that don't work between Core, OpenWire, and AMQP. We
> should support as many as possible.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)