[ https://issues.apache.org/jira/browse/YARN-7763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16331834#comment-16331834 ]
Weiwei Yang edited comment on YARN-7763 at 1/19/18 7:08 AM: ------------------------------------------------------------ Hi [~kkaranasos] Thanks for the comments, here is my thoughts {quote}we should do an instanceof SingleConstraint before the cast {quote} I did not do that because I think we should have something better than {{instanceof}} to tell which constraint we are dealing with. E.g would a {{getType}} possible ? That was why I added a TODO in {{canSatisfyConstraints}} as a placeholder to handle other type of constraints. {quote}constraint priority {quote} Hmm... I was thinking the other way around. This way I can have cluster admin to setup some basic constraints applied to all apps, and at the same time allow app/user to override constraints if they have special requirement. The behavior you described sounds like for a certain allocation tag, once defined in global constraint, that constraint will apply to everywhere; which means it won't allow different constraint for one same tag. How to allow customization in this case? Thanks was (Author: cheersyang): Hi [~kkaranasos] Thanks for the comments, here is my thoughts {quote}{quote}we should do an instanceof SingleConstraint before the cast {quote}{quote} I did not do that because I think we should have something better than {{instanceof}} to tell which constraint we are dealing with. E.g would a {{getType}} possible ? That was why I added a TODO in {{canSatisfyConstraints}} as a placeholder to handle other type of constraints. {quote}{quote}constraint priority {quote}{quote} Hmm... I was thinking the other way around. This way I can have cluster admin to setup some basic constraints applied to all apps, and at the same time allow app/user to override constraints if they have special requirement. The behavior you described sounds like for a certain allocation tag, once defined in global constraint, that constraint will apply to everywhere; which means it won't allow different constraint for one same tag. How to allow customization in this case? Thanks > Allow Constraints specified in the SchedulingRequest to override application > level constraints > ---------------------------------------------------------------------------------------------- > > Key: YARN-7763 > URL: https://issues.apache.org/jira/browse/YARN-7763 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: Wangda Tan > Assignee: Weiwei Yang > Priority: Blocker > Attachments: YARN-7763-YARN-6592.001.patch, > YARN-7763-YARN-6592.002.patch, YARN-7763-YARN-6592.003.patch > > > As I mentioned on YARN-6599, we will add SchedulingRequest as part of the > PlacementConstraintUtil method and both of processor/scheduler implementation > will use the same logic. The logic looks like: > {code:java} > PlacementConstraint pc = schedulingRequest.getPlacementConstraint(); > If (pc == null) { > pc = > PlacementConstraintMgr.getPlacementConstraint(schedulingRequest.getAllocationTags()); > } > // Do placement constraint match ...{code} -- 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