This is an automated email from the ASF dual-hosted git repository.

yuzhou pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git


The following commit(s) were added to refs/heads/develop by this push:
     new 86c1216  [ISSUE #1843] fix: broker panic when producer send to retry 
topic (#1844)
86c1216 is described below

commit 86c1216957d6aaa7021943815f5fbfbf0d649c0c
Author: xujianhai666 <[email protected]>
AuthorDate: Mon Dec 20 21:54:02 2021 +0800

    [ISSUE #1843] fix: broker panic when producer send to retry topic (#1844)
    
    producer send message to retry topic directly, broker will panic
    because maxReconsumeTimes is null and convert to int.
    
    add null check for maxReconsumeTimes
    
    Closes #1843
---
 .../java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java
 
b/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java
index f5ebf3a..f925364 100644
--- 
a/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java
+++ 
b/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java
@@ -358,7 +358,7 @@ public class SendMessageProcessor extends 
AbstractSendMessageProcessor implement
             }
 
             int maxReconsumeTimes = subscriptionGroupConfig.getRetryMaxTimes();
-            if (request.getVersion() >= MQVersion.Version.V3_4_9.ordinal()) {
+            if (request.getVersion() >= MQVersion.Version.V3_4_9.ordinal() && 
requestHeader.getMaxReconsumeTimes() != null) {
                 maxReconsumeTimes = requestHeader.getMaxReconsumeTimes();
             }
             int reconsumeTimes = requestHeader.getReconsumeTimes() == null ? 0 
: requestHeader.getReconsumeTimes();

Reply via email to