From 25f6711d7fd6fe0f00532a810b9fef7e81467b03 Mon Sep 17 00:00:00 2001 From: zhangyang Date: Mon, 21 Jun 2021 20:42:29 +0800 Subject: [PATCH] [statistics] Fix the inconsistency of putMessageDistributeTime statistics Signed-off-by: zhangyang --- .../java/org/apache/rocketmq/store/StoreStatsService.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/store/src/main/java/org/apache/rocketmq/store/StoreStatsService.java b/store/src/main/java/org/apache/rocketmq/store/StoreStatsService.java index d43b34342f..8372845e7f 100644 --- a/store/src/main/java/org/apache/rocketmq/store/StoreStatsService.java +++ b/store/src/main/java/org/apache/rocketmq/store/StoreStatsService.java @@ -57,6 +57,7 @@ public class StoreStatsService extends ServiceThread { private final LinkedList getTimesMissList = new LinkedList(); private final LinkedList transferedMsgCountList = new LinkedList(); private volatile AtomicLong[] putMessageDistributeTime; + private volatile AtomicLong[] lastPutMessageDistributeTime; private long messageStoreBootTimestamp = System.currentTimeMillis(); private volatile long putMessageEntireTimeMax = 0; private volatile long getMessageEntireTimeMax = 0; @@ -80,11 +81,11 @@ public class StoreStatsService extends ServiceThread { next[i] = new AtomicLong(0); } - AtomicLong[] old = this.putMessageDistributeTime; + this.lastPutMessageDistributeTime = this.putMessageDistributeTime; this.putMessageDistributeTime = next; - return old; + return lastPutMessageDistributeTime; } public long getPutMessageEntireTimeMax() { @@ -298,7 +299,7 @@ public class StoreStatsService extends ServiceThread { } private String putMessageDistributeTimeToString() { - final AtomicLong[] times = this.putMessageDistributeTime; + final AtomicLong[] times = this.lastPutMessageDistributeTime; if (null == times) return null;