[ https://issues.apache.org/jira/browse/MAPREDUCE-4368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13401887#comment-13401887 ]
John Gordon commented on MAPREDUCE-4368: ---------------------------------------- Good feedback, refactoring to keep the Shell.WINDOWS checks down and get the replace applied in both contexts iff Windows. Testing the new patch now, will post soon. > 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 > > 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