Author: kasha
Date: Sun Aug 10 22:30:09 2014
New Revision: 1617174
URL: http://svn.apache.org/r1617174
Log:
HADOOP-10402. Configuration.getValByRegex does not substitute for variables.
(Robert Kanter via kasha)
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestConfiguration.java
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
URL:
http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1617174&r1=1617173&r2=1617174&view=diff
==============================================================================
---
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
(original)
+++
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
Sun Aug 10 22:30:09 2014
@@ -115,6 +115,9 @@ Release 2.6.0 - UNRELEASED
HADOOP-10929. Typo in Configuration.getPasswordFromCredentialProviders
(lmccay via brandonli)
+ HADOOP-10402. Configuration.getValByRegex does not substitute for
+ variables. (Robert Kanter via kasha)
+
Release 2.5.0 - UNRELEASED
INCOMPATIBLE CHANGES
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
URL:
http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java?rev=1617174&r1=1617173&r2=1617174&view=diff
==============================================================================
---
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
(original)
+++
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java
Sun Aug 10 22:30:09 2014
@@ -2747,7 +2747,8 @@ public class Configuration implements It
item.getValue() instanceof String) {
m = p.matcher((String)item.getKey());
if(m.find()) { // match
- result.put((String) item.getKey(), (String) item.getValue());
+ result.put((String) item.getKey(),
+ substituteVars(getProps().getProperty((String) item.getKey())));
}
}
}
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestConfiguration.java
URL:
http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestConfiguration.java?rev=1617174&r1=1617173&r2=1617174&view=diff
==============================================================================
---
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestConfiguration.java
(original)
+++
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestConfiguration.java
Sun Aug 10 22:30:09 2014
@@ -178,6 +178,14 @@ public class TestConfiguration extends T
// check that expansion also occurs for getInt()
assertTrue(conf.getInt("intvar", -1) == 42);
assertTrue(conf.getInt("my.int", -1) == 42);
+
+ Map<String, String> results = conf.getValByRegex("^my.*file$");
+ assertTrue(results.keySet().contains("my.relfile"));
+ assertTrue(results.keySet().contains("my.fullfile"));
+ assertTrue(results.keySet().contains("my.file"));
+ assertEquals(-1, results.get("my.relfile").indexOf("${"));
+ assertEquals(-1, results.get("my.fullfile").indexOf("${"));
+ assertEquals(-1, results.get("my.file").indexOf("${"));
}
public void testFinalParam() throws IOException {