in pkg/capacityscheduling/capacity_scheduling.go [685:705]
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.Errorf("ElasticQuota deletePodIfPresent for pod %v/%v error %v", newPod.Namespace, newPod.Name, err)
}
}
}
}