HADOOP-11586. Update use of Iterator to Iterable in AbstractMetricsContext.java. Contributed by Ray Chiang.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/27447c57 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/27447c57 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/27447c57 Branch: refs/heads/HDFS-7285 Commit: 27447c57717ccaf991933c56dee566e71f86242e Parents: f607b72 Author: Akira Ajisaka <[email protected]> Authored: Thu Feb 12 14:41:03 2015 -0800 Committer: Zhe Zhang <[email protected]> Committed: Mon Feb 16 10:29:47 2015 -0800 ---------------------------------------------------------------------- hadoop-common-project/hadoop-common/CHANGES.txt | 3 +++ .../hadoop/metrics/spi/AbstractMetricsContext.java | 12 ++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/27447c57/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 0a274d3..7078d42 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -594,6 +594,9 @@ Release 2.7.0 - UNRELEASED HADOOP-11543. Improve help message for hadoop/yarn command. (Brahma Reddy Battula via ozawa). + HADOOP-11586. Update use of Iterator to Iterable in + AbstractMetricsContext.java. (Ray Chiang via aajisaka) + OPTIMIZATIONS HADOOP-11323. WritableComparator#compare keeps reference to byte array. http://git-wip-us.apache.org/repos/asf/hadoop/blob/27447c57/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics/spi/AbstractMetricsContext.java ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics/spi/AbstractMetricsContext.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics/spi/AbstractMetricsContext.java index ae45585..067dc35 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics/spi/AbstractMetricsContext.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics/spi/AbstractMetricsContext.java @@ -318,13 +318,13 @@ public abstract class AbstractMetricsContext implements MetricsContext { * Emits the records. */ private synchronized void emitRecords() throws IOException { - for (String recordName : bufferedData.keySet()) { - RecordMap recordMap = bufferedData.get(recordName); + for (Map.Entry<String,RecordMap> recordEntry : bufferedData.entrySet()) { + RecordMap recordMap = recordEntry.getValue(); synchronized (recordMap) { Set<Entry<TagMap, MetricMap>> entrySet = recordMap.entrySet (); for (Entry<TagMap, MetricMap> entry : entrySet) { OutputRecord outRec = new OutputRecord(entry.getKey(), entry.getValue()); - emitRecord(contextName, recordName, outRec); + emitRecord(contextName, recordEntry.getKey(), outRec); } } } @@ -339,8 +339,8 @@ public abstract class AbstractMetricsContext implements MetricsContext { @Override public synchronized Map<String, Collection<OutputRecord>> getAllRecords() { Map<String, Collection<OutputRecord>> out = new TreeMap<String, Collection<OutputRecord>>(); - for (String recordName : bufferedData.keySet()) { - RecordMap recordMap = bufferedData.get(recordName); + for (Map.Entry<String,RecordMap> recordEntry : bufferedData.entrySet()) { + RecordMap recordMap = recordEntry.getValue(); synchronized (recordMap) { List<OutputRecord> records = new ArrayList<OutputRecord>(); Set<Entry<TagMap, MetricMap>> entrySet = recordMap.entrySet(); @@ -348,7 +348,7 @@ public abstract class AbstractMetricsContext implements MetricsContext { OutputRecord outRec = new OutputRecord(entry.getKey(), entry.getValue()); records.add(outRec); } - out.put(recordName, records); + out.put(recordEntry.getKey(), records); } } return out;
