You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Jonathan Hung (JIRA)" <ji...@apache.org> on 2017/05/06 00:19:04 UTC

[jira] [Commented] (YARN-5543) ResourceManager SchedulingMonitor could potentially terminate the preemption checker thread

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

Jonathan Hung commented on YARN-5543:
-------------------------------------

Attached a branch-2.7 patch, since it does not apply cleanly there.

> ResourceManager SchedulingMonitor could potentially terminate the preemption checker thread
> -------------------------------------------------------------------------------------------
>
>                 Key: YARN-5543
>                 URL: https://issues.apache.org/jira/browse/YARN-5543
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: capacityscheduler, resourcemanager
>    Affects Versions: 2.7.0, 2.6.1
>            Reporter: Min Shen
>            Assignee: Min Shen
>              Labels: oct16-medium
>         Attachments: YARN-5543.001.patch, YARN-5543.002.patch, YARN-5543.003.patch, YARN-5543-branch-2.7.001.patch
>
>
> In SchedulingMonitor.java, when the service starts, it starts a checker thread to perform Capacity Scheduler's preemption. However, the implementation of this checker thread has the following issue:
> {code}
> while (!stopped && !Thread.currentThread().isInterrupted()) {
>     ....
>     try {
>       Thread.sleep(monitorInterval)
>     } catch (InterruptedException e) {
>       ....
>       break;
>     }
> }
> {code}
> The above code snippet will terminate the checker thread whenever it is interrupted. 
> We noticed in our cluster that this could lead to CapacityScheduler's preemption disabled unexpectedly due to the checker thread getting terminated.
> We propose to use ScheduledExecutorService to improve the robustness of this part of the code to ensure the liveness of CapacityScheduler's preemption functionality.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org