Explorar o código

HADOOP-14213. Move Configuration runtime check for hadoop-site.xml to initialization. Contributed by Jonathan Eagles

(cherry picked from commit 595f62e362c08704d6fb692e21c97b512bc7ec49)
Ravi Prakash %!s(int64=8) %!d(string=hai) anos
pai
achega
87339d7691

+ 8 - 10
hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java

@@ -655,21 +655,24 @@ public class Configuration implements Iterable<Map.Entry<String,String>>,
     }
   }
  
-  static{
-    //print deprecation warning if hadoop-site.xml is found in classpath
+  static {
+    // Add default resources
+    addDefaultResource("core-default.xml");
+    addDefaultResource("core-site.xml");
+
+    // print deprecation warning if hadoop-site.xml is found in classpath
     ClassLoader cL = Thread.currentThread().getContextClassLoader();
     if (cL == null) {
       cL = Configuration.class.getClassLoader();
     }
-    if(cL.getResource("hadoop-site.xml")!=null) {
+    if (cL.getResource("hadoop-site.xml") != null) {
       LOG.warn("DEPRECATED: hadoop-site.xml found in the classpath. " +
           "Usage of hadoop-site.xml is deprecated. Instead use core-site.xml, "
           + "mapred-site.xml and hdfs-site.xml to override properties of " +
           "core-default.xml, mapred-default.xml and hdfs-default.xml " +
           "respectively");
+      addDefaultResource("hadoop-site.xml");
     }
-    addDefaultResource("core-default.xml");
-    addDefaultResource("core-site.xml");
   }
   
   private Properties properties;
@@ -2557,11 +2560,6 @@ public class Configuration implements Iterable<Map.Entry<String,String>>,
       for (String resource : defaultResources) {
         loadResource(properties, new Resource(resource), quiet);
       }
-    
-      //support the hadoop-site.xml as a deprecated case
-      if(getResource("hadoop-site.xml")!=null) {
-        loadResource(properties, new Resource("hadoop-site.xml"), quiet);
-      }
     }
     
     for (int i = 0; i < resources.size(); i++) {