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 "Wangda Tan (JIRA)" <ji...@apache.org> on 2014/05/22 07:18:38 UTC
[jira] [Created] (HADOOP-10625) Configuration: names should be
trimmed when putting/getting to properties
Wangda Tan created HADOOP-10625:
-----------------------------------
Summary: Configuration: names should be trimmed when putting/getting to properties
Key: HADOOP-10625
URL: https://issues.apache.org/jira/browse/HADOOP-10625
Project: Hadoop Common
Issue Type: Bug
Components: conf
Affects Versions: 2.4.0
Reporter: Wangda Tan
Currently, Hadoop will not trim name when putting a pair of k/v to property. But when loading configuration from file, names will be trimmed:
(In Configuration.java)
{code}
if ("name".equals(field.getTagName()) && field.hasChildNodes())
attr = StringInterner.weakIntern(
((Text)field.getFirstChild()).getData().trim());
if ("value".equals(field.getTagName()) && field.hasChildNodes())
value = StringInterner.weakIntern(
((Text)field.getFirstChild()).getData());
{code}
With this behavior, following steps will be problematic:
1. User incorrectly set " hadoop.key=value" (with a space before hadoop.key)
2. User try to get "hadoop.key", cannot get "value"
3. Serialize/deserialize configuration (Like what did in MR)
4. User try to get "hadoop.key", can get "value", which will make inconsistency problem.
--
This message was sent by Atlassian JIRA
(v6.2#6252)