Merge branch 'dev/etan/df-safeiter' into feat/splitview

This commit is contained in:
Etan Kissling 2024-04-03 11:31:07 +02:00
commit 4034ad43a0
No known key found for this signature in database
GPG Key ID: B21DA824C5A3D03D
1 changed files with 9 additions and 5 deletions

View File

@ -299,8 +299,10 @@ proc getMissingBlobs(rman: RequestManager): seq[BlobIdentifier] =
delay = wallTime - wallSlot.start_beacon_time() delay = wallTime - wallSlot.start_beacon_time()
waitDur = TimeDiff(nanoseconds: BLOB_GOSSIP_WAIT_TIME_NS) waitDur = TimeDiff(nanoseconds: BLOB_GOSSIP_WAIT_TIME_NS)
var fetches: seq[BlobIdentifier] var
for blobless in rman.quarantine[].peekBlobless(): fetches: seq[BlobIdentifier]
ready: seq[Eth2Digest]
for root, blobless in rman.quarantine[].peekBlobless():
# give blobs a chance to arrive over gossip # give blobs a chance to arrive over gossip
if blobless.message.slot == wallSlot and delay < waitDur: if blobless.message.slot == wallSlot and delay < waitDur:
debug "Not handling missing blobs early in slot" debug "Not handling missing blobs early in slot"
@ -321,9 +323,11 @@ proc getMissingBlobs(rman: RequestManager): seq[BlobIdentifier] =
warn "missing blob handler found blobless block with all blobs", warn "missing blob handler found blobless block with all blobs",
blk=blobless.root, blk=blobless.root,
commitments=len(blobless.message.body.blob_kzg_commitments) commitments=len(blobless.message.body.blob_kzg_commitments)
discard rman.blockVerifier(ForkedSignedBeaconBlock.init(blobless), ready.add(root)
false) for root in ready:
rman.quarantine[].removeBlobless(blobless) let blobless = rman.quarantine[].popBlobless(root).valueOr:
continue
discard rman.blockVerifier(blobless, false)
fetches fetches
proc requestManagerBlobLoop( proc requestManagerBlobLoop(