[ 
https://issues.apache.org/jira/browse/HADOOP-6106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12724057#action_12724057
 ] 

Hemanth Yamijala commented on HADOOP-6106:
------------------------------------------

The patch contains the following changes:

- Converted the timedOut variable to an atomic boolean, as it was being 
accessed from the timer task as well as from the ShellCommandExecutor.
- Creating the Timer only if the timeout interval is > 0.
- Setting completed variable at exactly the same places as the previous code in 
order not to change contract.
- Cancelling timer in the finally block of the code.
- Refactored the constructors of ShellCommandExecutor to all reach one 
constructor.

Sreekanth, can you please run ant test and test-patch so I can commit this ?

> Provide an option in ShellCommandExecutor to timeout commands that do not 
> complete within a certain amount of time.
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-6106
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6106
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: util
>            Reporter: Hemanth Yamijala
>            Assignee: Sreekanth Ramakrishnan
>         Attachments: HADOOP-6106.patch, mapred-211-common-3.patch
>
>
> In MAPREDUCE-211 we came across a need to provide an option to timeout 
> commands launched via the ShellCommandExecutor. The use case is for the 
> health check script being developed in MAPREDUCE-211. We would like the 
> TaskTracker thread to not be blocked by a problematic script or in instances 
> where fork()+exec() has hung (which apparently has been observed in large 
> clusters).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to