Open liudaomanbu opened 5 years ago
Which version is used?
Which version is used?
master branch,2.1.1.BUILD-SNAPSHOT version. Latest version.
I tracked it , and think the problem should be completely resolved in rocketmq-client
.
If designed in this way, it should not be possible. so I think that should enhance rocketmq-spring
.
Data flow guidance :
org.apache.rocketmq.common.message.MessageDecoder#decode(java.nio.ByteBuffer, boolean, boolean, boolean)
->org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl#sendKernelImpl
->MessageClientIDSetter.setUniqID(msg);
Do you think? @fangjian0423
msgId: created by RocketMQ
id in properties: we don't create it, it automatically generate by Spring Messaging with IdGenerator
UNIQ_KEY in properties: created by RocketMQ
maybe setHeader key solve the problem
please try the beta version #2029 to see if it solves your problem, or provide us more information to help find the latent bug.
Which Component rocketmq
Is your feature request related to a problem? Please describe. rocketmq的消息中的消息id似乎没有完整的传递下去,在转换为Spring的Messsage对象时就看不到原始的rocketmq消息id了.这并不利于排查问题和追踪消费情况.
The message ID in the rocketmq message does not seem to be passed down completely. When converted to Spring's Message object, the original rocketmq message ID can not be seen. This is not conducive to problem solving and tracking consumption.
Describe the solution you'd like 将rocketmq的消息中的消息id使用Spring的Messsage对象的header传递下去. The message ID in the rocketmq message is passed down using the header of Spring's Message object.
Additional context 只传递了unique_key,但是id却没有传递 Only unique_key is passed, but id is not passed