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 to...@apache.org on 2011/01/26 08:07:51 UTC

svn commit: r1063616 - in /hadoop/common/branches/branch-0.22: CHANGES.txt src/java/org/apache/hadoop/conf/Configuration.java src/test/core/org/apache/hadoop/conf/TestConfiguration.java

Author: todd
Date: Wed Jan 26 07:07:50 2011
New Revision: 1063616

URL: http://svn.apache.org/viewvc?rev=1063616&view=rev
Log:
HADOOP-7118. Fix NPE in Configuration.writeXml. Contributed by Todd Lipcon

Modified:
    hadoop/common/branches/branch-0.22/CHANGES.txt
    hadoop/common/branches/branch-0.22/src/java/org/apache/hadoop/conf/Configuration.java
    hadoop/common/branches/branch-0.22/src/test/core/org/apache/hadoop/conf/TestConfiguration.java

Modified: hadoop/common/branches/branch-0.22/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/CHANGES.txt?rev=1063616&r1=1063615&r2=1063616&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/CHANGES.txt (original)
+++ hadoop/common/branches/branch-0.22/CHANGES.txt Wed Jan 26 07:07:50 2011
@@ -396,6 +396,8 @@ Release 0.22.0 - Unreleased
 
     HADOOP-7046. Fix Findbugs warning in Configuration. (Po Cheung via shv)
 
+    HADOOP-7118. Fix NPE in Configuration.writeXml (todd)
+
 Release 0.21.1 - Unreleased
 
   IMPROVEMENTS

Modified: hadoop/common/branches/branch-0.22/src/java/org/apache/hadoop/conf/Configuration.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/src/java/org/apache/hadoop/conf/Configuration.java?rev=1063616&r1=1063615&r2=1063616&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/src/java/org/apache/hadoop/conf/Configuration.java (original)
+++ hadoop/common/branches/branch-0.22/src/java/org/apache/hadoop/conf/Configuration.java Wed Jan 26 07:07:50 2011
@@ -1610,6 +1610,7 @@ public class Configuration implements It
     Element conf = doc.createElement("configuration");
     doc.appendChild(conf);
     conf.appendChild(doc.createTextNode("\n"));
+    getProps(); // ensure properties is set
     for (Enumeration e = properties.keys(); e.hasMoreElements();) {
       String name = (String)e.nextElement();
       Object object = properties.get(name);

Modified: hadoop/common/branches/branch-0.22/src/test/core/org/apache/hadoop/conf/TestConfiguration.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/src/test/core/org/apache/hadoop/conf/TestConfiguration.java?rev=1063616&r1=1063615&r2=1063616&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/src/test/core/org/apache/hadoop/conf/TestConfiguration.java (original)
+++ hadoop/common/branches/branch-0.22/src/test/core/org/apache/hadoop/conf/TestConfiguration.java Wed Jan 26 07:07:50 2011
@@ -18,6 +18,7 @@
 package org.apache.hadoop.conf;
 
 import java.io.BufferedWriter;
+import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileWriter;
 import java.io.IOException;
@@ -255,6 +256,16 @@ public class TestConfiguration extends T
     assertEquals(expectedOutput, conf.toString());
   }
   
+  public void testWriteXml() throws IOException {
+    Configuration conf = new Configuration();
+    ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
+    conf.writeXml(baos);
+    String result = baos.toString();
+    assertTrue("Result has proper header", result.startsWith(
+        "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><configuration>"));
+    assertTrue("Result has proper footer", result.endsWith("</configuration>"));
+  }
+  
   public void testIncludes() throws Exception {
     tearDown();
     System.out.println("XXX testIncludes");