[ 
https://issues.apache.org/jira/browse/MAPREDUCE-4987?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chris Nauroth updated MAPREDUCE-4987:
-------------------------------------

    Attachment: MAPREDUCE-4987.4.patch

I'm attaching version 4 of the patch, which just makes one more change in 
{{ContainerLaunch#sanitizeEnv}}.  I said earlier that we need to use the 
environment variables of the container when building the classpath jar.  That 
was only partially correct.  Instead, we need to start with the environment 
variables of the current process, and then add/overwrite the container 
environment established within {{sanitizeEnv}}.  This agrees with the logic of 
launching the container process, which uses 
{{Shell#ShellCommandExector#execute}}.  This uses a {{ProcessBuilder}} 
initialized with the environment of the parent process before adding the 
container environment variables.  This is significant when launching a cluster 
from the distribution and you want to override things like HADOOP_MAPRED_HOME 
in your dev environment.

I also reordered the code so that {{sanitizeEnv}} completes all of its changes 
to the environment before we create the classpath jar.

I reran the tests on Mac and Windows after this final change.
                
> TestMRJobs#testDistributedCache fails on Windows due to unexpected behavior 
> of symlinks
> ---------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-4987
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4987
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: distributed-cache, nodemanager
>    Affects Versions: 3.0.0
>            Reporter: Chris Nauroth
>            Assignee: Chris Nauroth
>         Attachments: MAPREDUCE-4987.1.patch, MAPREDUCE-4987.2.patch, 
> MAPREDUCE-4987.3.patch, MAPREDUCE-4987.4.patch
>
>
> On Windows, {{TestMRJobs#testDistributedCache}} fails on an assertion while 
> checking the length of a symlink.  It expects to see the length of the target 
> of the symlink, but Java 6 on Windows always reports that a symlink has 
> length 0.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to