diff --git a/pkg/device/ascendtolerance.go b/pkg/device/ascendtolerance.go index a506b5845623287d9101fa557d94c6e955cda3e6..121894259f5b7d9712383aade785f59b69143e69 100644 --- a/pkg/device/ascendtolerance.go +++ b/pkg/device/ascendtolerance.go @@ -199,6 +199,7 @@ func (hrt *HotResetTools) handlePodEvent(obj interface{}) { case kubeclient.EventTypeDelete: hrt.handlePodDeleteEvent(obj) default: + hrt.queue.Forget(obj) hwlog.RunLog.Debugf("hotReset scene not watch %s event(%s)", obj.(kubeclient.Event).Resource, obj.(kubeclient.Event).Type) } @@ -238,7 +239,10 @@ func (hrt *HotResetTools) handlePodAddEvent(obj interface{}) { err = hrt.writeCMToFile(cm) if err != nil { hwlog.RunLog.Errorf("Failed to write cm(%s) to file, err: %v", cm.Name, err) + hrt.queue.AddRateLimited(obj) + return } + hrt.queue.Forget(obj) } func (hrt *HotResetTools) handlePodDeleteEvent(obj interface{}) { @@ -269,6 +273,7 @@ func (hrt *HotResetTools) handlePodDeleteEvent(obj interface{}) { hwlog.RunLog.Errorf("Failed to remove file: %v", rmErr) } delete(hrt.jobs, event.Key) + hrt.queue.Forget(obj) } func (hrt *HotResetTools) getPodFromCache(podKey string) (*v1.Pod, error) { @@ -325,6 +330,7 @@ func (hrt *HotResetTools) handleConfigMapEvent(obj interface{}) { case kubeclient.EventTypeDelete: hrt.handleCMDeleteEvent(obj) default: + hrt.queue.Forget(obj) hwlog.RunLog.Debugf("hotReset scene not watch %s event(%s)", obj.(kubeclient.Event).Resource, obj.(kubeclient.Event).Type) } @@ -353,6 +359,8 @@ func (hrt *HotResetTools) handleCMUpdateEvent(obj interface{}) { if err = hrt.writeCMToFile(cm); err != nil { hwlog.RunLog.Errorf("Failed to write cm(%s) to file, err: %v", cm.Name, err) + hrt.queue.AddRateLimited(obj) + return } hrt.queue.Forget(obj) } @@ -360,7 +368,7 @@ func (hrt *HotResetTools) handleCMUpdateEvent(obj interface{}) { func (hrt *HotResetTools) handleCMDeleteEvent(obj interface{}) { event, ok := obj.(kubeclient.Event) if !ok { - hwlog.RunLog.Errorf("get kubeclient event failed") + hwlog.RunLog.Errorf("get kube-client event failed") return } hwlog.RunLog.Debugf("handle cm(%s) delete event", event.Key)