From 27d640e391ed50620c160479ce5859aff5aca1b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?rich=CE=9Brd?= Date: Fri, 30 Aug 2024 11:46:19 -0400 Subject: [PATCH] fix: stop creating goroutines if context is already canceled (#1213) --- waku/v2/api/missing/missing_messages.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/waku/v2/api/missing/missing_messages.go b/waku/v2/api/missing/missing_messages.go index bafde783..058af9a4 100644 --- a/waku/v2/api/missing/missing_messages.go +++ b/waku/v2/api/missing/missing_messages.go @@ -144,6 +144,13 @@ func (m *MissingMessageVerifier) fetchHistory(c chan<- *protocol.Envelope, inter j = len(contentTopics) } + select { + case <-interest.ctx.Done(): + return + default: + // continue... + } + now := m.timesource.Now() err := m.fetchMessagesBatch(c, interest, i, j, now) if err != nil { @@ -260,6 +267,13 @@ func (m *MissingMessageVerifier) fetchMessagesBatch(c chan<- *protocol.Envelope, j = len(missingHashes) } + select { + case <-interest.ctx.Done(): + return nil + default: + // continue... + } + wg.Add(1) go func(messageHashes []pb.MessageHash) { defer wg.Wait()