Skip to content

Commit

Permalink
fix_: code review
Browse files Browse the repository at this point in the history
  • Loading branch information
richard-ramos committed Nov 21, 2024
1 parent a708ce1 commit 38dce59
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions protocol/messenger_mailserver.go
Original file line number Diff line number Diff line change
Expand Up @@ -815,10 +815,11 @@ loop:
// If time range is greater than 24 hours, limit the range: to - (to-24h)
from := w.from
to := w.to
nextWorkTo := to

exceeds24h := false
if batch.To-batch.From > uint32(oneDayDuration.Seconds()) {
from = to - uint32(oneDayDuration.Seconds())
nextWorkTo = from
exceeds24h = true
}

cursor, envelopesCount, err := messageRequester.SendMessagesRequestForTopics(queryCtx, storenodeID, from, to, w.cursor, w.pubsubTopic, w.contentTopics, w.limit, true, processEnvelopes)
Expand All @@ -843,21 +844,31 @@ loop:

// Check the cursor after calling `shouldProcessNextPage`.
// The app might use process the fetched envelopes in the callback for own needs.
if cursor == nil {
// If from/to does not exceed 24h and no cursor was returned, we have already
// requested the entire time range
if cursor == nil && !exceeds24h {
return
}

logger.Debug("processBatch producer - creating work (cursor)")

workWg.Add(1)
workCh <- work{
newWork := work{
pubsubTopic: w.pubsubTopic,
contentTopics: w.contentTopics,
cursor: cursor,
limit: nextPageLimit,
from: w.from,
to: nextWorkTo,
to: w.to,
}

// If from/to has exceeded the 24h, but there are no more records within the current
// 24h range, then we update the `to` for the new work to not include it.
if cursor == nil && exceeds24h {
newWork.to = from
}

workWg.Add(1)
workCh <- newWork
}(w)
case err := <-errCh:
logger.Debug("processBatch - received error", zap.Error(err))
Expand Down

0 comments on commit 38dce59

Please sign in to comment.