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

zhouxzhan 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 47355d115 [ISSUE #6272]Add judgment for SendLatencyFault in 
MQFaultStrategy#selectOneMessageQueue (#6273)
47355d115 is described below

commit 47355d115d9c9569e3f9db6ce17f0a5610da1a2c
Author: mxsm <[email protected]>
AuthorDate: Mon Mar 13 14:19:08 2023 +0800

    [ISSUE #6272]Add judgment for SendLatencyFault in 
MQFaultStrategy#selectOneMessageQueue (#6273)
    
    * [ISSUE #6272]Add judgment for SendLatencyFault in 
MQFaultStrategy#selectOneMessageQueue
    
    * fix code style
---
 .../main/java/org/apache/rocketmq/client/latency/MQFaultStrategy.java | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git 
a/client/src/main/java/org/apache/rocketmq/client/latency/MQFaultStrategy.java 
b/client/src/main/java/org/apache/rocketmq/client/latency/MQFaultStrategy.java
index bd0818688..e86238e55 100644
--- 
a/client/src/main/java/org/apache/rocketmq/client/latency/MQFaultStrategy.java
+++ 
b/client/src/main/java/org/apache/rocketmq/client/latency/MQFaultStrategy.java
@@ -17,6 +17,7 @@
 
 package org.apache.rocketmq.client.latency;
 
+import org.apache.commons.lang3.StringUtils;
 import org.apache.rocketmq.client.impl.producer.TopicPublishInfo;
 import org.apache.rocketmq.common.message.MessageQueue;
 import org.apache.rocketmq.logging.org.slf4j.Logger;
@@ -62,8 +63,9 @@ public class MQFaultStrategy {
                 for (int i = 0; i < tpInfo.getMessageQueueList().size(); i++) {
                     int pos = index++ % tpInfo.getMessageQueueList().size();
                     MessageQueue mq = tpInfo.getMessageQueueList().get(pos);
-                    if (latencyFaultTolerance.isAvailable(mq.getBrokerName()))
+                    if (!StringUtils.equals(lastBrokerName, 
mq.getBrokerName()) && latencyFaultTolerance.isAvailable(mq.getBrokerName())) {
                         return mq;
+                    }
                 }
 
                 final String notBestBroker = 
latencyFaultTolerance.pickOneAtLeast();

Reply via email to