mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 03:41:45 +00:00
Merge pull request #107816 from DuC-cnZj/master
fix flushBackoffQCompleted: remove defer
This commit is contained in:
commit
a5d28a638f
@ -411,24 +411,29 @@ func (p *PriorityQueue) AddUnschedulableIfNotPresent(pInfo *framework.QueuedPodI
|
|||||||
func (p *PriorityQueue) flushBackoffQCompleted() {
|
func (p *PriorityQueue) flushBackoffQCompleted() {
|
||||||
p.lock.Lock()
|
p.lock.Lock()
|
||||||
defer p.lock.Unlock()
|
defer p.lock.Unlock()
|
||||||
|
broadcast := false
|
||||||
for {
|
for {
|
||||||
rawPodInfo := p.podBackoffQ.Peek()
|
rawPodInfo := p.podBackoffQ.Peek()
|
||||||
if rawPodInfo == nil {
|
if rawPodInfo == nil {
|
||||||
return
|
break
|
||||||
}
|
}
|
||||||
pod := rawPodInfo.(*framework.QueuedPodInfo).Pod
|
pod := rawPodInfo.(*framework.QueuedPodInfo).Pod
|
||||||
boTime := p.getBackoffTime(rawPodInfo.(*framework.QueuedPodInfo))
|
boTime := p.getBackoffTime(rawPodInfo.(*framework.QueuedPodInfo))
|
||||||
if boTime.After(p.clock.Now()) {
|
if boTime.After(p.clock.Now()) {
|
||||||
return
|
break
|
||||||
}
|
}
|
||||||
_, err := p.podBackoffQ.Pop()
|
_, err := p.podBackoffQ.Pop()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.ErrorS(err, "Unable to pop pod from backoff queue despite backoff completion", "pod", klog.KObj(pod))
|
klog.ErrorS(err, "Unable to pop pod from backoff queue despite backoff completion", "pod", klog.KObj(pod))
|
||||||
return
|
break
|
||||||
}
|
}
|
||||||
p.activeQ.Add(rawPodInfo)
|
p.activeQ.Add(rawPodInfo)
|
||||||
metrics.SchedulerQueueIncomingPods.WithLabelValues("active", BackoffComplete).Inc()
|
metrics.SchedulerQueueIncomingPods.WithLabelValues("active", BackoffComplete).Inc()
|
||||||
defer p.cond.Broadcast()
|
broadcast = true
|
||||||
|
}
|
||||||
|
|
||||||
|
if broadcast {
|
||||||
|
p.cond.Broadcast()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user