From 0c1686eb20baacbaca18a8cabc0fb7c78bcd2232 Mon Sep 17 00:00:00 2001 From: Jacek Sieka Date: Wed, 25 Jan 2023 11:26:58 +0100 Subject: [PATCH] fix pruned backfill summary (fixes #4552) When enabling pruned history mode, the backfill summary as it was computed with full backfilling may be pruned - don't try to load it on init --- beacon_chain/consensus_object_pools/blockchain_dag.nim | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/beacon_chain/consensus_object_pools/blockchain_dag.nim b/beacon_chain/consensus_object_pools/blockchain_dag.nim index 3202d86ed..1f10a1f6b 100644 --- a/beacon_chain/consensus_object_pools/blockchain_dag.nim +++ b/beacon_chain/consensus_object_pools/blockchain_dag.nim @@ -1097,7 +1097,10 @@ proc init*(T: type ChainDAGRef, cfg: RuntimeConfig, db: BeaconChainDB, dag.backfill = block: let backfillSlot = db.finalizedBlocks.low.expect("tail at least") - if backfillSlot < dag.tail.slot: + if backfillSlot <= dag.horizon: + # Backfill done, no need to load anything + BeaconBlockSummary() + elif backfillSlot < dag.tail.slot: let backfillRoot = db.finalizedBlocks.get(backfillSlot).expect( "low to be loadable")