[
https://issues.apache.org/jira/browse/MAPREDUCE-4564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13449343#comment-13449343
]
Bikas Saha commented on MAPREDUCE-4564:
---------------------------------------
Solution is to make sure that termination of wintutils also terminates the job
object. This patch adds code to do that by making the job object handle not
inheritable and setting the job object to be terminated when the last handle is
closed. When winutils exist (cleanly or crashed or killed) its handle to the
job object will be closed. Since that is the only handle, closing it will
terminate the job object.
Currently, winutils calls TerminateJobObject() before it exits. This ensures
that the job object is destroyed when winutils exits. So the patch is
consistent with the current approach. It enhances that by making sure the job
object is terminated even when winutils is killed externally.
> Shell timeout mechanism does not work for processes spawned using winutils
> --------------------------------------------------------------------------
>
> Key: MAPREDUCE-4564
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-4564
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Reporter: Bikas Saha
> Assignee: Bikas Saha
> Attachments: MAPREDUCE-4564.branch-1-win.1.patch
>
>
> Upon timeout, Shell calls Java process.destroy() to terminate the spawned
> process. This would destroy the winutils process but not the real process
> spawned by winutils.
--
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