[ 
https://issues.apache.org/jira/browse/MAPREDUCE-4368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13401894#comment-13401894
 ] 

Bikas Saha commented on MAPREDUCE-4368:
---------------------------------------

That would leave the code change incomplete. But I am ok with that since it is 
blocked by the basic generic bug in the handling of the white space delimiter 
for java opts. Could you please open a jira (not targeted to branch-1-win) to 
track and fix the bug around handling blanks while delimiting java opts? And 
leave a comment with that jira number to explain the missing check mentioned in 
your last comment.
After that I am +1 on the fix. We can commit unless someone else has any 
objections.
                
> TaskRunner fails to start jars when the java.library.path contains a quoted 
> path with embedded spaces
> -----------------------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-4368
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4368
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: tasktracker
>    Affects Versions: 1-win
>         Environment: on Windows: 
> set PATH=%PATH%;"C:\this memorable place".
>            Reporter: John Gordon
>              Labels: newbie, patch
>         Attachments: TaskRunner.patch, TaskRunner2.patch
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> TaskRunner splits arguments by space before it adds them back to the vargs 
> list, so it loses all context of quote escaped strings with embedded spaces.  
> This gets fixed up later by wrapping all arguments with " -- so you get 
> something like java "-D<opt>=<value>".  This is problematic for paths with 
> embedded spaces, where we end up creating "-D<opt>=<first part" "last part>". 
>  To java, the jar being run is last part.  So with the environment above, you 
> will see "ClassNoDefFoundError: memorable" and the jar will fail to start.  
> In this particular case, we know that java.libarary.path contains paths and 
> the tests often use %PATH% to seed this, so the fix is to remove embedded 
> quotes in listed path elements because we know the aggregate will be quoted 
> when the JVM is started.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to