Hedger Lai created YUNIKORN-3458:
------------------------------------

             Summary: Premature victim loop termination in 
calculateVictimsByNode starves preemption
                 Key: YUNIKORN-3458
                 URL: https://issues.apache.org/jira/browse/YUNIKORN-3458
             Project: Apache YuniKorn
          Issue Type: Bug
          Components: core - scheduler
            Reporter: Hedger Lai
            Assignee: Hedger Lai
             Fix For: 1.6.0


In {{calculateVictimsByNode()}} ({{preemption.go}}), when a candidate victim 
exceeds {{askQueueRemaining}}, the loop executes {{break}}:

{code:go}
if askQueueRemaining != nil && 
askQueueRemaining.FitInActual(victim.GetAllocatedResource()) {
    askQueue.AddAllocation(victim.GetAllocatedResource())
} else {
    queueSnapshot.AddAllocation(victim.GetAllocatedResource())
    break
}
{code}

This prematurely aborts victim evaluation for the node, ignoring subsequent 
viable victims and causing preemption to fail.

h3. Proposed Fix
Change {{break}} to {{continue}}.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to