in pkg/capacityscheduling/capacity_scheduling.go [730:750]
func (c *CapacityScheduling) updatePod(oldObj, newObj interface{}) {
oldPod := oldObj.(*v1.Pod)
newPod := newObj.(*v1.Pod)
if oldPod.Status.Phase == v1.PodSucceeded || oldPod.Status.Phase == v1.PodFailed {
return
}
if newPod.Status.Phase != v1.PodRunning && newPod.Status.Phase != v1.PodPending {
c.Lock()
defer c.Unlock()
elasticQuotaInfo := c.elasticQuotaInfos[newPod.Namespace]
if elasticQuotaInfo != nil {
err := elasticQuotaInfo.deletePodIfPresent(newPod)
if err != nil {
klog.ErrorS(err, "Failed to delete Pod from its associated elasticQuota", "pod", klog.KObj(newPod))
}
}
}
}