Repository: hadoop
Updated Branches:
  refs/heads/branch-2 a82ea9275 -> 1285035c6


HADOOP-10568. Reuse ObjectMapper instance in CombinedHostsFileReader and 
CombinedHostsFileWriter. Contributed by Yiqun Lin.

(cherry picked from commit 991c946593454b73b56f3c403fe128afe6f46355)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/1285035c
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/1285035c
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/1285035c

Branch: refs/heads/branch-2
Commit: 1285035c67d7f4102268fea17383a338bc78a573
Parents: a82ea92
Author: Akira Ajisaka <[email protected]>
Authored: Wed Jun 29 10:10:19 2016 -0700
Committer: Akira Ajisaka <[email protected]>
Committed: Wed Jun 29 10:10:56 2016 -0700

----------------------------------------------------------------------
 .../apache/hadoop/hdfs/util/CombinedHostsFileReader.java | 11 ++++++-----
 .../apache/hadoop/hdfs/util/CombinedHostsFileWriter.java |  4 ++--
 2 files changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/1285035c/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileReader.java
----------------------------------------------------------------------
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileReader.java
 
b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileReader.java
index 33acb91..9b23ad0 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileReader.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileReader.java
@@ -22,7 +22,6 @@ import java.io.FileInputStream;
 import java.io.InputStreamReader;
 import java.io.IOException;
 import java.io.Reader;
-
 import java.util.Iterator;
 import java.util.Set;
 import java.util.HashSet;
@@ -31,7 +30,7 @@ import org.apache.hadoop.classification.InterfaceAudience;
 import org.apache.hadoop.classification.InterfaceStability;
 import org.codehaus.jackson.JsonFactory;
 import org.codehaus.jackson.map.ObjectMapper;
-
+import org.codehaus.jackson.map.ObjectReader;
 import org.apache.hadoop.hdfs.protocol.DatanodeAdminProperties;
 
 /**
@@ -48,6 +47,10 @@ import 
org.apache.hadoop.hdfs.protocol.DatanodeAdminProperties;
 @InterfaceAudience.LimitedPrivate({"HDFS"})
 @InterfaceStability.Unstable
 public final class CombinedHostsFileReader {
+  private static final ObjectReader READER =
+      new ObjectMapper().reader(DatanodeAdminProperties.class);
+  private static final JsonFactory JSON_FACTORY = new JsonFactory();
+
   private CombinedHostsFileReader() {
   }
 
@@ -60,12 +63,10 @@ public final class CombinedHostsFileReader {
   public static Set<DatanodeAdminProperties>
       readFile(final String hostsFile) throws IOException {
     HashSet<DatanodeAdminProperties> allDNs = new HashSet<>();
-    ObjectMapper mapper = new ObjectMapper();
     try (Reader input =
          new InputStreamReader(new FileInputStream(hostsFile), "UTF-8")) {
       Iterator<DatanodeAdminProperties> iterator =
-          mapper.readValues(new JsonFactory().createJsonParser(input),
-              DatanodeAdminProperties.class);
+          READER.readValues(JSON_FACTORY.createJsonParser(input));
       while (iterator.hasNext()) {
         DatanodeAdminProperties properties = iterator.next();
         allDNs.add(properties);

http://git-wip-us.apache.org/repos/asf/hadoop/blob/1285035c/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileWriter.java
----------------------------------------------------------------------
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileWriter.java
 
b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileWriter.java
index ea70be2..7a50d63 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileWriter.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/util/CombinedHostsFileWriter.java
@@ -45,6 +45,7 @@ import 
org.apache.hadoop.hdfs.protocol.DatanodeAdminProperties;
 @InterfaceAudience.LimitedPrivate({"HDFS"})
 @InterfaceStability.Unstable
 public final class CombinedHostsFileWriter {
+  private static final ObjectMapper MAPPER = new ObjectMapper();
   private CombinedHostsFileWriter() {
   }
 
@@ -60,8 +61,7 @@ public final class CombinedHostsFileWriter {
     try (Writer output =
        new OutputStreamWriter(new FileOutputStream(hostsFile), "UTF-8")) {
       for (DatanodeAdminProperties datanodeAdminProperties: allDNs) {
-        ObjectMapper mapper = new ObjectMapper();
-        configs.append(mapper.writeValueAsString(datanodeAdminProperties));
+        configs.append(MAPPER.writeValueAsString(datanodeAdminProperties));
       }
       output.write(configs.toString());
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to