You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-dev@hadoop.apache.org by "John Gordon (JIRA)" <ji...@apache.org> on 2012/06/06 23:43:22 UTC
[jira] [Created] (MAPREDUCE-4322) Fix command-line length abort
issues on Windows
John Gordon created MAPREDUCE-4322:
--------------------------------------
Summary: Fix command-line length abort issues on Windows
Key: MAPREDUCE-4322
URL: https://issues.apache.org/jira/browse/MAPREDUCE-4322
Project: Hadoop Map/Reduce
Issue Type: Bug
Components: tasktracker
Environment: Windows, downstream applications with long aggregate classpaths
Reporter: John Gordon
When a task is started on the tasktracker, it creates a small batch file to invoke java and runs that batch. Within the batch file, the invocation of Java currently has -classpath ${CLASSPATH} inline to the command. That line often exceeds 8000 characters. This is ok for most linux distributions because the line limit env variable is often set much higher than this. However, for Windows this cause cmd to abort execution. This surfaces in Hadoop as an unknown failure mode for the task.
I think the easiest and most natural way to fix this is to push the -classpath option into a config file to take the longest variable part of the line and put it somewhere that scales better.
--
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
[jira] [Resolved] (MAPREDUCE-4322) Fix command-line length abort
issues on Windows
Posted by "Arun C Murthy (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAPREDUCE-4322?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Arun C Murthy resolved MAPREDUCE-4322.
--------------------------------------
Resolution: Fixed
Fix Version/s: 1-win
Target Version/s: (was: 1.1.0)
+1, lgtm.
I just committed this. Thanks Ivan for the patch and Bikas for the detailed reviews.
> Fix command-line length abort issues on Windows
> -----------------------------------------------
>
> Key: MAPREDUCE-4322
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-4322
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Components: tasktracker
> Environment: Windows, downstream applications with long aggregate classpaths
> Reporter: John Gordon
> Assignee: Ivan Mitic
> Fix For: 1-win
>
> Attachments: MAPREDUCE-4322-branch-1-win(2).patch, MAPREDUCE-4322-branch-1-win(3).patch, MAPREDUCE-4322-branch-1-win(4).patch, MAPREDUCE-4322-branch-1-win(5).patch, MAPREDUCE-4322-branch-1-win.patch
>
> Original Estimate: 12h
> Remaining Estimate: 12h
>
> When a task is started on the tasktracker, it creates a small batch file to invoke java and runs that batch. Within the batch file, the invocation of Java currently has -classpath ${CLASSPATH} inline to the command. That line often exceeds 8000 characters. This is ok for most linux distributions because the line limit env variable is often set much higher than this. However, for Windows this cause cmd to abort execution. This surfaces in Hadoop as an unknown failure mode for the task.
> I think the easiest and most natural way to fix this is to push the -classpath option into a config file to take the longest variable part of the line and put it somewhere that scales better.
--
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