readd eaguer dht lookup is required in some cases

This commit is contained in:
Dmitriy Ryajov 2023-11-23 12:35:21 -06:00 committed by gmega
parent ab8a97118d
commit 2b362dda27
No known key found for this signature in database
GPG Key ID: FFD8DAF00660270F

View File

@ -184,15 +184,17 @@ proc requestBlock*(
if b.pendingBlocks.isInFlight(address): if b.pendingBlocks.isInFlight(address):
return await blockFuture return await blockFuture
let let peers = b.peers.selectCheapest(address)
peers = b.peers.selectCheapest(address) if peers.len == 0:
maybePeer = b.discovery.queueFindBlocksReq(@[address.cidOrTreeCid])
if peers.len > 0:
peers[hash(address) mod peers.len].some let maybePeer =
elif b.peers.len > 0: if peers.len > 0:
toSeq(b.peers)[hash(address) mod b.peers.len].some peers[hash(address) mod peers.len].some
else: elif b.peers.len > 0:
BlockExcPeerCtx.none toSeq(b.peers)[hash(address) mod b.peers.len].some
else:
BlockExcPeerCtx.none
if peer =? maybePeer: if peer =? maybePeer:
asyncSpawn b.monitorBlockHandle(blockFuture, address, peer.id) asyncSpawn b.monitorBlockHandle(blockFuture, address, peer.id)