mirror of
https://github.com/rancher/norman.git
synced 2025-09-05 01:00:36 +00:00
Fix bug where we don't trigger handlers on second start
This commit is contained in:
@@ -200,7 +200,7 @@ func (g *genericController) Start(ctx context.Context, threadiness int) error {
|
|||||||
|
|
||||||
if g.running {
|
if g.running {
|
||||||
for _, h := range g.handlers {
|
for _, h := range g.handlers {
|
||||||
if h.generation < g.generation {
|
if h.generation != g.generation {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
for _, key := range g.informer.GetStore().ListKeys() {
|
for _, key := range g.informer.GetStore().ListKeys() {
|
||||||
@@ -219,6 +219,11 @@ func (g *genericController) Start(ctx context.Context, threadiness int) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (g *genericController) queueObject(obj interface{}) {
|
func (g *genericController) queueObject(obj interface{}) {
|
||||||
|
if _, ok := obj.(generationKey); ok {
|
||||||
|
g.queue.Add(obj)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
key, err := cache.DeletionHandlingMetaNamespaceKeyFunc(obj)
|
key, err := cache.DeletionHandlingMetaNamespaceKeyFunc(obj)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
g.queue.Add(key)
|
g.queue.Add(key)
|
||||||
@@ -267,7 +272,11 @@ func (g *genericController) processNextWorkItem() bool {
|
|||||||
logrus.Errorf("%v %v %v", g.name, key, err)
|
logrus.Errorf("%v %v %v", g.name, key, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if gk, ok := key.(generationKey); ok {
|
||||||
|
g.queue.AddRateLimited(gk.key)
|
||||||
|
} else {
|
||||||
g.queue.AddRateLimited(key)
|
g.queue.AddRateLimited(key)
|
||||||
|
}
|
||||||
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user