wilfred-s commented on code in PR #1096:
URL: https://github.com/apache/yunikorn-core/pull/1096#discussion_r3627615209
##########
pkg/scheduler/objects/application.go:
##########
@@ -1302,16 +1322,24 @@ func (sa *Application)
tryPlaceholderAllocate(nodeIterator func() NodeIterator,
}
}
}
+
// cannot allocate if the iterator is not giving us any schedulable
nodes
iterator := nodeIterator()
if iterator == nil {
return nil
}
+
// we checked all placeholders and asks nothing worked as yet
// pick the first fit and try all nodes if that fails give up
var allocResult *AllocationResult
if phFit != nil && reqFit != nil {
resKey := reqFit.GetAllocationKey()
+
+ // run predicates for this pod before in hand and fetch
feasible nodes
+ feasibleNodes, predicatesResult :=
reqFit.preAllocateConditions(true)
+ if !predicatesResult {
+ return nil
+ }
Review Comment:
Filter in the shim must run pre-filter first and it does. That is needed to
make sure the cycle state is initialised. Have a look at
`predicateManagerImpl.podFitsNode()`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]