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

jinrongtong 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 dc902082b [ISSUE #5804] Optimize BrokerStatsManager#incTopicPutLatency 
create statsKey (#5805)
dc902082b is described below

commit dc902082bdb5578c197c24eaeeab54055eba329d
Author: mxsm <[email protected]>
AuthorDate: Thu Jan 12 10:42:41 2023 +0800

    [ISSUE #5804] Optimize BrokerStatsManager#incTopicPutLatency create 
statsKey (#5805)
---
 .../org/apache/rocketmq/store/stats/BrokerStatsManager.java   | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git 
a/store/src/main/java/org/apache/rocketmq/store/stats/BrokerStatsManager.java 
b/store/src/main/java/org/apache/rocketmq/store/stats/BrokerStatsManager.java
index ace8d4c20..132ddc333 100644
--- 
a/store/src/main/java/org/apache/rocketmq/store/stats/BrokerStatsManager.java
+++ 
b/store/src/main/java/org/apache/rocketmq/store/stats/BrokerStatsManager.java
@@ -68,7 +68,6 @@ public class BrokerStatsManager {
     @Deprecated public static final String COMMERCIAL_RCV_SIZE = 
Stats.COMMERCIAL_RCV_SIZE;
     @Deprecated public static final String COMMERCIAL_PERM_FAILURES = 
Stats.COMMERCIAL_PERM_FAILURES;
 
-
     // Send message latency
     public static final String TOPIC_PUT_LATENCY = "TOPIC_PUT_LATENCY";
     public static final String GROUP_ACK_NUMS = "GROUP_ACK_NUMS";
@@ -500,8 +499,14 @@ public class BrokerStatsManager {
     }
 
     public void incTopicPutLatency(final String topic, final int queueId, 
final int incValue) {
-        final String statsKey = String.format("%d@%s", queueId, topic);
-        this.statsTable.get(TOPIC_PUT_LATENCY).addValue(statsKey, incValue, 1);
+        StringBuilder statsKey;
+        if (topic != null) {
+            statsKey = new StringBuilder(topic.length() + 6);
+        } else {
+            statsKey = new StringBuilder(6);
+        }
+        statsKey.append(queueId).append("@").append(topic);
+        this.statsTable.get(TOPIC_PUT_LATENCY).addValue(statsKey.toString(), 
incValue, 1);
     }
 
     public void incBrokerPutNums() {

Reply via email to