[
https://issues.apache.org/jira/browse/YARN-8459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524057#comment-16524057
]
Wangda Tan commented on YARN-8459:
----------------------------------
[~cheersyang],
According to our current locking design of CapacityScheduler:
1) Add/remove node/app requires CS lock.
2) Allocate/release container acquires app/node/queue lock only for better
performance.
The simplest solution is to put allocate/release container under CS lock, but
it will cause performance regression. Adding a stopping flag to app/node seems
like cleanest solution in my mind, please share if you have any better idea.
[~sunilg],
My intention is to put the setStopping under app/node lock instead of using
volatile. We don't want a node is allocating container but the other thread is
trying to remove the node.
> Capacity Scheduler should properly handle container allocation on app/node
> when app/node being removed by scheduler
> -------------------------------------------------------------------------------------------------------------------
>
> Key: YARN-8459
> URL: https://issues.apache.org/jira/browse/YARN-8459
> Project: Hadoop YARN
> Issue Type: Bug
> Components: capacity scheduler
> Affects Versions: 3.1.0
> Reporter: Wangda Tan
> Assignee: Wangda Tan
> Priority: Blocker
> Attachments: YARN-8459.001.patch
>
>
> Thanks [~gopalv] for reporting this issue.
> In async mode, capacity scheduler can allocate/reserve containers on node/app
> when node/app is being removed ({{doneApplicationAttempt}}/{{removeNode}}).
> This will cause some issues, for example.
> a. Container for app_1 reserved on node_x.
> b. At the same time, app_1 is being removed.
> c. Reserve on node operation finished after app_1 removed
> ({{doneApplicationAttempt}}).
> For all the future runs, the node_x is completely blocked by the invalid
> reservation. It keep reporting "Trying to schedule for a finished app, please
> double check" for the node_x.
> We need a fix to make sure this won't happen.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]