You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by wa...@apache.org on 2015/09/14 05:11:44 UTC
[05/22] hadoop git commit: HADOOP-12348. MetricsSystemImpl creates
MetricsSourceAdapter with wrong time unit parameter. (zxu via rkanter)
HADOOP-12348. MetricsSystemImpl creates MetricsSourceAdapter with wrong time unit parameter. (zxu via rkanter)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/9538af0e
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/9538af0e
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/9538af0e
Branch: refs/heads/YARN-1197
Commit: 9538af0e1a7428b8787afa8d5e0b82c1e04adca7
Parents: fba06a7
Author: Robert Kanter <rk...@apache.org>
Authored: Fri Sep 11 15:20:17 2015 -0700
Committer: Robert Kanter <rk...@apache.org>
Committed: Fri Sep 11 15:20:17 2015 -0700
----------------------------------------------------------------------
hadoop-common-project/hadoop-common/CHANGES.txt | 3 +++
.../hadoop/metrics2/impl/MetricsSourceAdapter.java | 12 ++++++++----
.../apache/hadoop/metrics2/impl/MetricsSystemImpl.java | 6 +++---
.../hadoop/metrics2/impl/TestMetricsSystemImpl.java | 13 +++++++++++++
4 files changed, 27 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/9538af0e/hadoop-common-project/hadoop-common/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt
index 6ea2484..37c1cc8 100644
--- a/hadoop-common-project/hadoop-common/CHANGES.txt
+++ b/hadoop-common-project/hadoop-common/CHANGES.txt
@@ -1091,6 +1091,9 @@ Release 2.8.0 - UNRELEASED
HADOOP-12388. Fix components' version information in the web page
'About the Cluster'. (Jun Gong via zxu)
+ HADOOP-12348. MetricsSystemImpl creates MetricsSourceAdapter with
+ wrong time unit parameter. (zxu via rkanter)
+
Release 2.7.2 - UNRELEASED
INCOMPATIBLE CHANGES
http://git-wip-us.apache.org/repos/asf/hadoop/blob/9538af0e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSourceAdapter.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSourceAdapter.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSourceAdapter.java
index f3ddc91..ace874e 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSourceAdapter.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSourceAdapter.java
@@ -61,7 +61,7 @@ class MetricsSourceAdapter implements DynamicMBean {
private Iterable<MetricsRecordImpl> lastRecs;
private long jmxCacheTS = 0;
- private int jmxCacheTTL;
+ private long jmxCacheTTL;
private MBeanInfo infoCache;
private ObjectName mbeanName;
private final boolean startMBeans;
@@ -69,7 +69,7 @@ class MetricsSourceAdapter implements DynamicMBean {
MetricsSourceAdapter(String prefix, String name, String description,
MetricsSource source, Iterable<MetricsTag> injectedTags,
MetricsFilter recordFilter, MetricsFilter metricFilter,
- int jmxCacheTTL, boolean startMBeans) {
+ long jmxCacheTTL, boolean startMBeans) {
this.prefix = checkNotNull(prefix, "prefix");
this.name = checkNotNull(name, "name");
this.source = checkNotNull(source, "source");
@@ -84,7 +84,7 @@ class MetricsSourceAdapter implements DynamicMBean {
MetricsSourceAdapter(String prefix, String name, String description,
MetricsSource source, Iterable<MetricsTag> injectedTags,
- int period, MetricsConfig conf) {
+ long period, MetricsConfig conf) {
this(prefix, name, description, source, injectedTags,
conf.getFilter(RECORD_FILTER_KEY),
conf.getFilter(METRIC_FILTER_KEY),
@@ -229,7 +229,11 @@ class MetricsSourceAdapter implements DynamicMBean {
return mbeanName;
}
-
+ @VisibleForTesting
+ long getJmxCacheTTL() {
+ return jmxCacheTTL;
+ }
+
private void updateInfoCache() {
LOG.debug("Updating info cache...");
infoCache = infoBuilder.reset(lastRecs).get();
http://git-wip-us.apache.org/repos/asf/hadoop/blob/9538af0e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSystemImpl.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSystemImpl.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSystemImpl.java
index a1d258d..15914d6 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSystemImpl.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/impl/MetricsSystemImpl.java
@@ -262,7 +262,7 @@ public class MetricsSystemImpl extends MetricsSystem implements MetricsSource {
checkNotNull(config, "config");
MetricsConfig conf = sourceConfigs.get(name);
MetricsSourceAdapter sa = new MetricsSourceAdapter(prefix, name, desc,
- source, injectedTags, period, conf != null ? conf
+ source, injectedTags, period * 1000L, conf != null ? conf
: config.subset(SOURCE_KEY));
sources.put(name, sa);
sa.start();
@@ -359,7 +359,7 @@ public class MetricsSystemImpl extends MetricsSystem implements MetricsSource {
return;
}
logicalTime = 0;
- long millis = period * 1000;
+ long millis = period * 1000L;
timer = new Timer("Timer for '"+ prefix +"' metrics system", true);
timer.scheduleAtFixedRate(new TimerTask() {
@Override
@@ -550,7 +550,7 @@ public class MetricsSystemImpl extends MetricsSystem implements MetricsSource {
private void registerSystemSource() {
MetricsConfig sysConf = sourceConfigs.get(MS_NAME);
sysSource = new MetricsSourceAdapter(prefix, MS_STATS_NAME, MS_STATS_DESC,
- MetricsAnnotations.makeSource(this), injectedTags, period,
+ MetricsAnnotations.makeSource(this), injectedTags, period * 1000L,
sysConf == null ? config.subset(SOURCE_KEY) : sysConf);
sysSource.start();
}
http://git-wip-us.apache.org/repos/asf/hadoop/blob/9538af0e/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/metrics2/impl/TestMetricsSystemImpl.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/metrics2/impl/TestMetricsSystemImpl.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/metrics2/impl/TestMetricsSystemImpl.java
index 6238d79..ecf2cc8 100644
--- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/metrics2/impl/TestMetricsSystemImpl.java
+++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/metrics2/impl/TestMetricsSystemImpl.java
@@ -544,6 +544,19 @@ public class TestMetricsSystemImpl {
}
}
+ @Test
+ public void testRegisterSourceJmxCacheTTL() {
+ MetricsSystem ms = new MetricsSystemImpl();
+ ms.init("TestMetricsSystem");
+ TestSource ts = new TestSource("ts");
+ ms.register(ts);
+ MetricsSourceAdapter sa = ((MetricsSystemImpl) ms)
+ .getSourceAdapter("TestSource");
+ assertEquals(MetricsConfig.PERIOD_DEFAULT * 1000 + 1,
+ sa.getJmxCacheTTL());
+ ms.shutdown();
+ }
+
@Metrics(context="test")
private static class TestSource {
@Metric("C1 desc") MutableCounterLong c1;