From e5385be6daaca6a4cf4a1a3143b56b1d047afff4 Mon Sep 17 00:00:00 2001 From: Moritz Marquardt Date: Wed, 24 Nov 2021 19:08:34 +0100 Subject: [PATCH] Fix iterator issue causing 100% CPU load --- certificates.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/certificates.go b/certificates.go index 0f75c53..d0735c6 100644 --- a/certificates.go +++ b/certificates.go @@ -443,7 +443,8 @@ func setupCertificates() { // clean up expired certs now := time.Now() expiredCertCount := 0 - key, resBytes, err := keyDatabase.Items().Next() + keyDatabaseIterator := keyDatabase.Items() + key, resBytes, err := keyDatabaseIterator.Next() for err == nil { if !bytes.Equal(key, MainDomainSuffix) { resGob := bytes.NewBuffer(resBytes) @@ -464,7 +465,7 @@ func setupCertificates() { } } } - key, resBytes, err = keyDatabase.Items().Next() + key, resBytes, err = keyDatabaseIterator.Next() } log.Printf("Removed %d expired certificates from the database", expiredCertCount)