[ https://issues.apache.org/jira/browse/YARN-7800?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Weiwei Yang updated YARN-7800: ------------------------------ Attachment: bind_node_constraint.pdf > Bind node constraint once a container is proposed to be placed on this node > --------------------------------------------------------------------------- > > Key: YARN-7800 > URL: https://issues.apache.org/jira/browse/YARN-7800 > Project: Hadoop YARN > Issue Type: Sub-task > Components: RM > Reporter: Weiwei Yang > Assignee: Weiwei Yang > Priority: Major > Attachments: bind_node_constraint.pdf > > > We found when there is circular dependency between multiple scheduling > requests, allocation decisions made by placement constraint algorithm might > be conflicting with related tags. More describing of the issue please refer > to YARN-7783. > To solve this issue, a possible solution is to bind *node constraint*. If the > algorithm wants to place any new container to this node, except for checking > if it satisfies the placement constraint, it also check if it satisfies the > node constraint. For example > 1) "foo", anti-affinity with "foo" > +Implies node constraint:+ on each node, it cannot have more than 1 foo tags > 2) "bar", anti-affinity with "foo" > +Implies node constraint:+ on each node, it cannot have both "bar" and "foo" > tags > With such constraint, it works like > * req2 is placed on any of nodes, e.g n2, +a node constraint[1] is added to > n2 that constrains this node cannot have both "bar" and "foo" tags+ > * when the algorithm wants to place req1 on n2, it checks if its placement > constraint is satisfied. It should be as there is no foo container on this > node yet. > * Then the algorithm checks if the node constraint is satisfied. It is not > because it violate node constraint [1]. > This avoids to do additional re-attempt like what was done in YARN-7783. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org