Skip to content

Commit d17e7f8

Browse files
ImJeremyHeZaptoss
authored andcommitted
Fix logs and stop the node when missing delayed message is detected (EspressoSystems#715)
1 parent a322fb7 commit d17e7f8

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

arbnode/espresso_delayed_message_fetcher.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ func (f *DelayedMessageFetcher) processDelayedMessage(messageWithMetadataAndPos
180180
delayedMessageToProcess := delayedMessagesRead - 1
181181

182182
if delayedMessageToProcess > delayedCount {
183-
log.Warn("delayed message fetcher is lagging behind. delayedMessagesRead: %v, delayedCount: %v", delayedMessagesRead, delayedCount)
183+
log.Warn("delayed message fetcher is lagging behind", "delayedMessagesRead", delayedMessagesRead, "delayedCount", delayedCount)
184184
return nil, fmt.Errorf("delayed message fetcher is lagging behind")
185185
}
186186
log.Debug("Getting delayed message", "delayedCount", delayedMessageToProcess)
@@ -334,6 +334,12 @@ func (d *DelayedMessageFetcher) getDelayedMessagesInRange(ctx context.Context, b
334334
continue
335335
}
336336

337+
if seqNum > lastDelayedMessageIndex+1 {
338+
// Delayed message fetcher expects to fetch messages strictly in order. If a missing message is detected here,
339+
// it indicates a break in sequential fetching. Recovery is not handled by this fetcher and would require additional logic.
340+
log.Crit("Caff node is missing a delayed message", "seqNum", seqNum, "lastDelayedMessageIndex", lastDelayedMessageIndex)
341+
}
342+
337343
lastDelayedMessageIndex++
338344
err = d.storeDelayedMessage(batch, lastDelayedMessageIndex, *msg)
339345
if err != nil {

0 commit comments

Comments
 (0)