[
https://issues.apache.org/jira/browse/MAPREDUCE-2242?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13099169#comment-13099169
]
Todd Lipcon commented on MAPREDUCE-2242:
----------------------------------------
Looks like there's a similar bug in MR2:
{code}
public ShellScriptBuilder env(String key, String value) {
line("export ", key, "=\"", value, "\"");
return this;
}
{code}
doesn't escape " with \"
> LinuxTaskController doesn't properly escape environment variables
> -----------------------------------------------------------------
>
> Key: MAPREDUCE-2242
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-2242
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Components: task-controller
> Affects Versions: 0.22.0
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Priority: Critical
> Attachments: mapreduce-2242.txt
>
>
> LinuxTaskController currently just writes "export FOO=bar" pairs into
> taskjvm.sh, which fails if the value has multiple words or contains a space.
> This is causing TestDebugScriptWithLinuxTaskController among others to fail
> on trunk with the following message:
> {code}
> export: 1: -Dhadoop.tasklog.iscleanup: bad variable name
> {code}
> since it generated a taskjvm.sh including the following:
> {code}
> export
> HADOOP_CLIENT_OPTS=-Dhadoop.tasklog.taskid=attempt_20110104180935141_0001_m_000001_0
> -Dhadoop.tasklog.iscleanup=false -Dhadoop.tasklog.totalLogFileSize=0
> {code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira