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();