diff --git a/pkg/nfd-topology-gc/nfd-nrt-gc.go b/pkg/nfd-topology-gc/nfd-nrt-gc.go index d460db2c42..d5dfafd95c 100644 --- a/pkg/nfd-topology-gc/nfd-nrt-gc.go +++ b/pkg/nfd-topology-gc/nfd-nrt-gc.go @@ -146,6 +146,9 @@ func (n *topologyGC) garbageCollect() { // periodicGC runs garbage collector at every gcPeriod to make sure we haven't missed any node func (n *topologyGC) periodicGC(gcPeriod time.Duration) { + // Do initial round of garbage collection at startup time + n.garbageCollect() + gcTrigger := time.NewTicker(gcPeriod) defer gcTrigger.Stop() for { @@ -172,8 +175,6 @@ func (n *topologyGC) startNodeInformer() error { n.factory.Start(n.stopChan) n.factory.WaitForCacheSync(n.stopChan) - n.garbageCollect() - return nil }