diff --git a/beacon_chain/nimbus_beacon_node.nim b/beacon_chain/nimbus_beacon_node.nim index 459d9f2a4f..81b2fa95aa 100644 --- a/beacon_chain/nimbus_beacon_node.nim +++ b/beacon_chain/nimbus_beacon_node.nim @@ -500,6 +500,7 @@ proc initFullNode( syncManager = newSyncManager[Peer, PeerId]( node.network.peerPool, dag.cfg.DENEB_FORK_EPOCH, + dag.cfg.FULU_FORK_EPOCH, dag.cfg.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, dag.cfg.MAX_BLOBS_PER_BLOCK_ELECTRA, SyncQueueKind.Forward, getLocalHeadSlot, @@ -511,6 +512,7 @@ proc initFullNode( backfiller = newSyncManager[Peer, PeerId]( node.network.peerPool, dag.cfg.DENEB_FORK_EPOCH, + dag.cfg.FULU_FORK_EPOCH, dag.cfg.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, dag.cfg.MAX_BLOBS_PER_BLOCK_ELECTRA, SyncQueueKind.Backward, getLocalHeadSlot, @@ -527,6 +529,7 @@ proc initFullNode( untrustedManager = newSyncManager[Peer, PeerId]( node.network.peerPool, dag.cfg.DENEB_FORK_EPOCH, + dag.cfg.FULU_FORK_EPOCH, dag.cfg.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, dag.cfg.MAX_BLOBS_PER_BLOCK_ELECTRA, SyncQueueKind.Backward, getLocalHeadSlot, diff --git a/beacon_chain/sync/sync_manager.nim b/beacon_chain/sync/sync_manager.nim index 577ee88f32..01b2cc2512 100644 --- a/beacon_chain/sync/sync_manager.nim +++ b/beacon_chain/sync/sync_manager.nim @@ -56,6 +56,7 @@ type SyncManager*[A, B] = ref object pool: PeerPool[A, B] DENEB_FORK_EPOCH: Epoch + FULU_FORK_EPOCH: Epoch MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: uint64 MAX_BLOBS_PER_BLOCK_ELECTRA: uint64 responseTimeout: chronos.Duration @@ -142,6 +143,7 @@ proc initQueue[A, B](man: SyncManager[A, B]) = proc newSyncManager*[A, B]( pool: PeerPool[A, B], denebEpoch: Epoch, + fuluEpoch: Epoch, minEpochsForBlobSidecarsRequests: uint64, maxBlobsPerBlockElectra: uint64, direction: SyncQueueKind, @@ -171,6 +173,7 @@ proc newSyncManager*[A, B]( var res = SyncManager[A, B]( pool: pool, DENEB_FORK_EPOCH: denebEpoch, + FULU_FORK_EPOCH: fuluEpoch, MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: minEpochsForBlobSidecarsRequests, MAX_BLOBS_PER_BLOCK_ELECTRA: maxBlobsPerBlockElectra, getLocalHeadSlot: getLocalHeadSlotCb, @@ -212,7 +215,7 @@ proc shouldGetBlobs[A, B](man: SyncManager[A, B], s: Slot): bool = let wallEpoch = man.getLocalWallSlot().epoch epoch = s.epoch() - (epoch >= man.DENEB_FORK_EPOCH) and + (epoch >= man.DENEB_FORK_EPOCH) and (epoch < man.FULU_FORK_EPOCH) and (wallEpoch < man.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS or epoch >= wallEpoch - man.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS)