hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Arun Suresh (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-7682) Expose canAssign method in the PlacementConstraintManager
Date Fri, 29 Dec 2017 04:51:02 GMT

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

Arun Suresh commented on YARN-7682:

bq. The problem Panagiotis describes with affinity seems to happen only when the source tag
is the same as the target tag. If it is not, then the canAssign should fail no matter whether
it is the first allocation. So I think these two cases should be distinguished.
To clarify: if source != target, then canAssgn should fail if the NODE does not have the tag
and if source == target, we can relax this for first allocation. right ?

My opinion is..
So, like you mentioned, until we can support multiple containers satisfyability at the same
time - we should probably return true for affinity irrespective of whether source and target
tags are same or different. Essentially, checkSatisfyablilty should just check that cMax is
not exceeded - and if cMin == 0 (assuming end user request for anti-affinity will be translated
into a SingleConstraint with cMin = 0).

Support for multiple container checkSatisfyablilty is not easy - since even the Scheduler
actually allocates a single RMConatiner at a time - and we we need some more refactoring.
Also what if we want container affinity across apps, in which case we would have to do checkSatisfyability
and get the scheduler to allocate containers for multiple apps simultaneously - which might
not even be possible, if both apps are in different queues.

> Expose canAssign method in the PlacementConstraintManager
> ---------------------------------------------------------
>                 Key: YARN-7682
>                 URL: https://issues.apache.org/jira/browse/YARN-7682
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Arun Suresh
>            Assignee: Panagiotis Garefalakis
>         Attachments: YARN-7682-YARN-6592.001.patch, YARN-7682.wip.patch
> As per discussion in YARN-7613. Lets expose {{canAssign}} method in the PlacementConstraintManager
that takes a sourceTags, applicationId, SchedulerNode and AllocationTagsManager and returns
true if constraints are not violated by placing the container on the node.
> I prefer not passing in the SchedulingRequest, since it can have > 1 numAllocations.
We want this api to be called for single allocations.

This message was sent by Atlassian JIRA

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

View raw message