From c2ba00ea0340780cfc76ccc1235fac74f4c35756 Mon Sep 17 00:00:00 2001 From: pk910 Date: Wed, 23 Aug 2023 15:49:02 +0200 Subject: [PATCH] fixed issue with block backfilling for far behind clients --- indexer/client.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/indexer/client.go b/indexer/client.go index ccec612a..e579852d 100644 --- a/indexer/client.go +++ b/indexer/client.go @@ -364,7 +364,12 @@ func (client *IndexerClient) ensureParentBlocks(currentBlock *CacheBlock) error logger.WithField("client", client.clientName).Debugf("received known block %v:%v [0x%x] backfill", utils.EpochOfSlot(parentSlot), parentSlot, parentRoot) } client.ensureBlock(parentBlock, parentHead) - if int64(utils.EpochOfSlot(parentSlot)) <= client.lastFinalizedEpoch { + + finalizedEpoch := client.indexerCache.finalizedEpoch + if client.lastFinalizedEpoch > finalizedEpoch { + finalizedEpoch = client.lastFinalizedEpoch + } + if int64(utils.EpochOfSlot(parentSlot)) <= finalizedEpoch { logger.WithField("client", client.clientName).Debugf("backfill cache: reached finalized slot %v:%v [0x%x]", utils.EpochOfSlot(parentSlot), parentSlot, parentRoot) break }