You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Sebastian Nagel (JIRA)" <ji...@apache.org> on 2013/11/01 16:45:23 UTC
[jira] [Created] (HADOOP-10080) Variables in configuration
properties are substituted in wrong order of precedence
Sebastian Nagel created HADOOP-10080:
----------------------------------------
Summary: Variables in configuration properties are substituted in wrong order of precedence
Key: HADOOP-10080
URL: https://issues.apache.org/jira/browse/HADOOP-10080
Project: Hadoop Common
Issue Type: Bug
Components: conf
Affects Versions: 2.2.0
Reporter: Sebastian Nagel
Priority: Minor
API doc of [Configuration|https://hadoop.apache.org/docs/stable/api/org/apache/hadoop/conf/Configuration.html] states:
{quote}
Value strings are first processed for variable expansion. The available properties are:
1. Other properties defined in this Configuration; and, if a name is undefined here,
2. Properties in System.getProperties().
{quote}
The current implementation of variable expansion, however, gives precedence to system properties. If a system property is defined it's value is used no matter whether a configuration property of same name exists.
This may cause inconsistent behaviour, e.g., if in the API doc example "basedir" is set as system property ({{-Dbasedir=/mnt/tmp}}) the results of two intuitively equivalent calls differ:
{code}
new Path(conf.get("tempdir")) // = /mnt/data/tmp
new Path(conf.get("basedir"), "tmp") // = /user/wastl/tmp
{code}
--
This message was sent by Atlassian JIRA
(v6.1#6144)