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 d43b34342f6a744e7f5d02d7a0a8ed6525c0b06d..8372845e7fed8ed68b274bff18a5bb8de82d0925 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;