From 0a5f87bc5a36252cb8ca4779899775d9c83da0c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Mon, 18 Jul 2022 19:30:38 +0200 Subject: [PATCH] Sleep Scheduler: perform first check at startup Instead of waiting for a minute, run the first sleep scheduler iteration at startup. --- internal/manager/sleep_scheduler/sleep_scheduler.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/manager/sleep_scheduler/sleep_scheduler.go b/internal/manager/sleep_scheduler/sleep_scheduler.go index 48803397..05e58ad9 100644 --- a/internal/manager/sleep_scheduler/sleep_scheduler.go +++ b/internal/manager/sleep_scheduler/sleep_scheduler.go @@ -41,12 +41,14 @@ func (ss *SleepScheduler) Run(ctx context.Context) { Msg("sleep scheduler starting") defer log.Info().Msg("sleep scheduler shutting down") + waitDuration := 2 * time.Second // First check should be quickly after startup. for { select { case <-ctx.Done(): return - case <-time.After(checkInterval): + case <-time.After(waitDuration): ss.CheckSchedules(ctx) + waitDuration = checkInterval } } }