This is an automated email from the ASF dual-hosted git repository.
jxue pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/helix.git
The following commit(s) were added to refs/heads/master by this push:
new f737b83 Add totalMessageReceivedCounter and decrepcate old
totalMessageReceived (#1251)
f737b83 is described below
commit f737b83245594e80c2d28b0c3da3b00bec50fd99
Author: Junkai Xue <[email protected]>
AuthorDate: Wed Aug 12 11:01:39 2020 -0700
Add totalMessageReceivedCounter and decrepcate old totalMessageReceived
(#1251)
Currently we should have counter type for totalMessageReceived but did not
make it correct.
To fix this, we should have the a new counter metrics instead of directly
changing the metrics for smooth migration.
---
.../apache/helix/monitoring/mbeans/ClusterStatusMonitor.java | 1 +
.../org/apache/helix/monitoring/mbeans/ResourceMonitor.java | 12 ++++++++++--
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git
a/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ClusterStatusMonitor.java
b/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ClusterStatusMonitor.java
index 1911385..da49041 100644
---
a/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ClusterStatusMonitor.java
+++
b/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ClusterStatusMonitor.java
@@ -390,6 +390,7 @@ public class ClusterStatusMonitor implements
ClusterStatusMonitorMBean {
ResourceMonitor resourceMonitor = _resourceMonitorMap.get(resource);
if (resourceMonitor != null) {
resourceMonitor.increaseMessageCount(messageCountPerResource.get(resource));
+
resourceMonitor.increaseMessageCountWithCounter(messageCountPerResource.get(resource));
}
}
}
diff --git
a/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ResourceMonitor.java
b/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ResourceMonitor.java
index 111a652..b659f9c 100644
---
a/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ResourceMonitor.java
+++
b/helix-core/src/main/java/org/apache/helix/monitoring/mbeans/ResourceMonitor.java
@@ -71,8 +71,9 @@ public class ResourceMonitor extends DynamicMBeanProvider {
private SimpleDynamicMetric<Long> _successTopStateHandoffCounter;
private SimpleDynamicMetric<Long> _failedTopStateHandoffCounter;
private SimpleDynamicMetric<Long> _maxSinglePartitionTopStateHandoffDuration;
- private SimpleDynamicMetric<Long> _totalMessageReceived;
-
+ @Deprecated
+ private SimpleDynamicMetric<Long> _totalMessageReceived; // This should be
counter since the value behavior is ever-increasing
+ private SimpleDynamicMetric<Long> _totalMessageReceivedCounter;
// Histograms
private HistogramDynamicMetric _partitionTopStateHandoffDurationGauge;
private HistogramDynamicMetric _partitionTopStateHandoffHelixLatencyGauge;
@@ -138,6 +139,7 @@ public class ResourceMonitor extends DynamicMBeanProvider {
new SlidingTimeWindowArrayReservoir(getResetIntervalInMs(),
TimeUnit.MILLISECONDS)));
_totalMessageReceived = new SimpleDynamicMetric("TotalMessageReceived",
0L);
+ _totalMessageReceivedCounter = new
SimpleDynamicMetric("TotalMessageReceivedCounter", 0L);
_maxSinglePartitionTopStateHandoffDuration =
new
SimpleDynamicMetric("MaxSinglePartitionTopStateHandoffDurationGauge", 0L);
_failedTopStateHandoffCounter = new
SimpleDynamicMetric("FailedTopStateHandoffCounter", 0L);
@@ -202,10 +204,15 @@ public class ResourceMonitor extends DynamicMBeanProvider
{
return _totalMessageReceived.getValue();
}
+ @Deprecated
public synchronized void increaseMessageCount(long messageReceived) {
_totalMessageReceived.updateValue(_totalMessageReceived.getValue() +
messageReceived);
}
+ public synchronized void increaseMessageCountWithCounter(long
messageReceived) {
+
_totalMessageReceivedCounter.updateValue(_totalMessageReceivedCounter.getValue()
+ messageReceived);
+ }
+
public String getResourceName() {
return _resourceName;
}
@@ -467,6 +474,7 @@ public class ResourceMonitor extends DynamicMBeanProvider {
_partitionTopStateHandoffHelixLatencyGauge,
_partitionTopStateNonGracefulHandoffDurationGauge,
_totalMessageReceived,
+ _totalMessageReceivedCounter,
_numPendingStateTransitions,
_rebalanceState
);