Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MQ Manager ( Ver: 7.5.0.6) not receiving JMSCorrelationID #71

Open
jobykurianiag opened this issue Oct 10, 2024 · 2 comments
Open

MQ Manager ( Ver: 7.5.0.6) not receiving JMSCorrelationID #71

jobykurianiag opened this issue Oct 10, 2024 · 2 comments

Comments

@jobykurianiag
Copy link

jobykurianiag commented Oct 10, 2024

Hello,

We are using "Kafka connect mq sink" for sending message from AWS MSK Topic to MQ Manager (WebSphere MQ Ver: 7.5.0.6). The connector deployed in ECS Fargate. We are using below config to send message, unfortunately MQ Manager not receiving "JMSCorrelationID".

Kafka - AWS MSK
Connector version - v1.5.2
Task - AWS ECS Service

mq-sink.json

{
"name": "name-sink",
"config":
{
"connector.class": "com.ibm.eventstreams.connect.mqsink.MQSinkConnector",
"tasks.max": "1",
"topics": "topic name",
"key.converter": "org.apache.kafka.connect.storage.StringConverter",
"value.converter": "org.apache.kafka.connect.storage.StringConverter",
"mq.queue.manager": "XXXX",
"mq.connection.name.list": "XXXX",
"mq.channel.name": "XXXXX",
"mq.queue": "XXXXX",
"mq.message.body.jms": "false",
"mq.message.builder": "com.ibm.eventstreams.connect.mqsink.builders.DefaultMessageBuilder",
"mq.message.builder.key.header": "JMSCorrelationID",
"offset.storage.file.filename": "",
"mq.userid":"XXXXX"
}
}

But when we sent same message to another MQ Manager with latest version (IBM MQ v9.2), it is working for them (they are receiving "JMSCorrelationID" as part of message).

  1. Is there any minimum version requirement for MQ Manager, in order to use mq sink connector ?
  2. If MQ Version is not supported, is there any alternative option to send "JMSCorrelationID" ?
@dalelane
Copy link
Contributor

dalelane commented Oct 10, 2024

Did you mean to set JMSCorrelationID and to set JMS to false? At first glance, that seems like an unusual combination.

cf. https://github.com/ibm-messaging/kafka-connect-mq-sink/blob/main/README.md#key-support-and-partitioning

... Because these values are set using JMS message properties, they only have an effect if mq.message.body.jms=true is set ...

@mamwl1
Copy link

mamwl1 commented Oct 10, 2024

Dale,

All MQ messages can have a correlation ID regardless of whether they are sent in "JMS format" or not. The only difference is that non-JMS correlation IDs can only be 24 bytes long as they have to fit in the MQMD. JMS format ones can be bigger if needed.

The link you posted about needing mq.message.body.jms=true to be set is I think referring to the topic/partition and offset which are message properties and therefore do need JMS format messages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants