diff --git a/pkg/lib/queueinformer/queueinformer_operator.go b/pkg/lib/queueinformer/queueinformer_operator.go index 9320168a9e..ecdb4eb896 100644 --- a/pkg/lib/queueinformer/queueinformer_operator.go +++ b/pkg/lib/queueinformer/queueinformer_operator.go @@ -141,6 +141,12 @@ func (o *operator) RegisterInformer(informer cache.SharedIndexInformer) error { } func (o *operator) registerInformer(informer cache.SharedIndexInformer) { + // never double-register an informer + for i := range o.informers { + if o.informers[i] == informer { + return + } + } o.informers = append(o.informers, informer) o.addHasSynced(informer.HasSynced) }