diff --git a/federationapi/queue/queue.go b/federationapi/queue/queue.go index 63861e458..392737918 100644 --- a/federationapi/queue/queue.go +++ b/federationapi/queue/queue.go @@ -119,11 +119,11 @@ func NewOutgoingQueues( } else { log.WithError(err).Error("Failed to get EDU server names for destination queue hydration") } - offset := time.Duration(5) + offset := time.Second * 5 for serverName := range serverNames { if queue := queues.getQueue(serverName); queue != nil { - time.AfterFunc(time.Second*offset, queue.wakeQueueIfNeeded) - offset++ + time.AfterFunc(offset, queue.wakeQueueIfNeeded) + offset += time.Second } } } diff --git a/keyserver/internal/device_list_update.go b/keyserver/internal/device_list_update.go index 4b2b8c187..06b75d675 100644 --- a/keyserver/internal/device_list_update.go +++ b/keyserver/internal/device_list_update.go @@ -157,8 +157,12 @@ func (u *DeviceListUpdater) Start() error { if err != nil { return err } + offset := time.Second * 10 for _, userID := range staleLists { - u.notifyWorkers(userID) + time.AfterFunc(offset, func() { + u.notifyWorkers(userID) + }) + offset += time.Second } return nil }