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

lizhanhui 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 adb83ca09 [ISSUE #5179] Math.abs() method call redundant, judgment and 
repeated assignment   (#5181)
adb83ca09 is described below

commit adb83ca09633b76150fd3dca294803d96a4dfd60
Author: RapperCL <[email protected]>
AuthorDate: Fri Sep 23 21:06:28 2022 +0800

    [ISSUE #5179] Math.abs() method call redundant, judgment and repeated 
assignment   (#5181)
    
    * remove the abs method
    
    * Judgment optimization
    
    * Reduce duplicate settings
    
    Co-authored-by: chenyong <[email protected]>
---
 .../java/org/apache/rocketmq/client/common/ThreadLocalIndex.java | 1 -
 .../apache/rocketmq/client/impl/producer/TopicPublishInfo.java   | 9 +++------
 .../java/org/apache/rocketmq/client/latency/MQFaultStrategy.java | 4 +---
 .../org/apache/rocketmq/client/trace/AsyncTraceDispatcher.java   | 5 +----
 4 files changed, 5 insertions(+), 14 deletions(-)

diff --git 
a/client/src/main/java/org/apache/rocketmq/client/common/ThreadLocalIndex.java 
b/client/src/main/java/org/apache/rocketmq/client/common/ThreadLocalIndex.java
index b74efd6eb..c345a266b 100644
--- 
a/client/src/main/java/org/apache/rocketmq/client/common/ThreadLocalIndex.java
+++ 
b/client/src/main/java/org/apache/rocketmq/client/common/ThreadLocalIndex.java
@@ -28,7 +28,6 @@ public class ThreadLocalIndex {
         Integer index = this.threadLocalIndex.get();
         if (null == index) {
             index = random.nextInt();
-            this.threadLocalIndex.set(index);
         }
         this.threadLocalIndex.set(++index);
         return Math.abs(index & POSITIVE_MASK);
diff --git 
a/client/src/main/java/org/apache/rocketmq/client/impl/producer/TopicPublishInfo.java
 
b/client/src/main/java/org/apache/rocketmq/client/impl/producer/TopicPublishInfo.java
index 2f8337ede..079cee848 100644
--- 
a/client/src/main/java/org/apache/rocketmq/client/impl/producer/TopicPublishInfo.java
+++ 
b/client/src/main/java/org/apache/rocketmq/client/impl/producer/TopicPublishInfo.java
@@ -72,9 +72,7 @@ public class TopicPublishInfo {
         } else {
             for (int i = 0; i < this.messageQueueList.size(); i++) {
                 int index = this.sendWhichQueue.incrementAndGet();
-                int pos = Math.abs(index) % this.messageQueueList.size();
-                if (pos < 0)
-                    pos = 0;
+                int pos = index % this.messageQueueList.size();
                 MessageQueue mq = this.messageQueueList.get(pos);
                 if (!mq.getBrokerName().equals(lastBrokerName)) {
                     return mq;
@@ -86,9 +84,8 @@ public class TopicPublishInfo {
 
     public MessageQueue selectOneMessageQueue() {
         int index = this.sendWhichQueue.incrementAndGet();
-        int pos = Math.abs(index) % this.messageQueueList.size();
-        if (pos < 0)
-            pos = 0;
+        int pos = index % this.messageQueueList.size();
+
         return this.messageQueueList.get(pos);
     }
 
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 c74b3cd73..a8c7b0747 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
@@ -60,9 +60,7 @@ public class MQFaultStrategy {
             try {
                 int index = tpInfo.getSendWhichQueue().incrementAndGet();
                 for (int i = 0; i < tpInfo.getMessageQueueList().size(); i++) {
-                    int pos = Math.abs(index++) % 
tpInfo.getMessageQueueList().size();
-                    if (pos < 0)
-                        pos = 0;
+                    int pos = index++ % tpInfo.getMessageQueueList().size();
                     MessageQueue mq = tpInfo.getMessageQueueList().get(pos);
                     if (latencyFaultTolerance.isAvailable(mq.getBrokerName()))
                         return mq;
diff --git 
a/client/src/main/java/org/apache/rocketmq/client/trace/AsyncTraceDispatcher.java
 
b/client/src/main/java/org/apache/rocketmq/client/trace/AsyncTraceDispatcher.java
index 923952734..439253f32 100644
--- 
a/client/src/main/java/org/apache/rocketmq/client/trace/AsyncTraceDispatcher.java
+++ 
b/client/src/main/java/org/apache/rocketmq/client/trace/AsyncTraceDispatcher.java
@@ -426,10 +426,7 @@ public class AsyncTraceDispatcher implements 
TraceDispatcher {
                                 }
                             }
                             int index = sendWhichQueue.incrementAndGet();
-                            int pos = Math.abs(index) % filterMqs.size();
-                            if (pos < 0) {
-                                pos = 0;
-                            }
+                            int pos = index % filterMqs.size();
                             return filterMqs.get(pos);
                         }
                     }, traceBrokerSet, callback);

Reply via email to