Git-Yang opened a new issue #2865:
URL: https://github.com/apache/rocketmq/issues/2865


   **BUG REPORT**
   
   1. Please describe the issue you observed:
   通过批量接口发送消息时,出现部分消息消费不到的情况。
   
   - 客户端日志:
   
![image](https://user-images.githubusercontent.com/30995057/117802518-27ebe700-b288-11eb-9c0d-90dbfcc534c2.png)
   
   - 服务端日志:
   - - store.log
   
![image](https://user-images.githubusercontent.com/30995057/117801315-bcede080-b286-11eb-91d5-d4464626f89f.png)
   
   - - storeerror.log
   
![image](https://user-images.githubusercontent.com/30995057/117800472-bf036f80-b285-11eb-884a-da63e2a852df.png)
   
   - 异常queueOffset
   写入到同一topic+queue的两条不同的message对应的queueOffset相同
   
![image](https://user-images.githubusercontent.com/30995057/117801743-3a195580-b287-11eb-83e2-2615d48da687.png)
   
   - 问题定位
   batch message在lock外构建时,分配了对应了queueOffset。queueOffset记录在HashMap中,在并发情况下导致数据错误。
   
![image](https://user-images.githubusercontent.com/30995057/117802012-86fd2c00-b287-11eb-9b1e-7908ed2c90a2.png)
   
![image](https://user-images.githubusercontent.com/30995057/117803391-28d14880-b289-11eb-9dff-ebf00ea88379.png)
   
   
   2. Please tell us about your environment:
   version:4.8.0
   jdk 8
   centos 7
   
   3. Other information (e.g. detailed explanation, logs, related issues, 
suggestions how to fix, etc):
   在lock外层对消息序列化后,在lock内层补充queueOffset信息。
   


-- 
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]


Reply via email to