close unused PeerInfo instance
Should not be needed from the GC's point of view, but needed when gathering Future.state statistics, due to `PeerInfo.lifefut`.
This commit is contained in:
parent
b44ba24142
commit
97abe77398
|
@ -663,13 +663,16 @@ proc runDiscoveryLoop*(node: Eth2Node) {.async.} =
|
||||||
try:
|
try:
|
||||||
let discoveredPeers =
|
let discoveredPeers =
|
||||||
node.discovery.randomNodes(node.wantedPeers - currentPeerCount)
|
node.discovery.randomNodes(node.wantedPeers - currentPeerCount)
|
||||||
debug "Discovered peers", peer = $discoveredPeers
|
|
||||||
for peer in discoveredPeers:
|
for peer in discoveredPeers:
|
||||||
try:
|
try:
|
||||||
let peerInfo = peer.record.toTypedRecord.toPeerInfo
|
let peerInfo = peer.record.toTypedRecord.toPeerInfo
|
||||||
if peerInfo != nil and peerInfo.id notin node.switch.connections:
|
if peerInfo != nil:
|
||||||
|
if peerInfo.id notin node.switch.connections:
|
||||||
|
debug "Discovered new peer", peer = $peer
|
||||||
# TODO do this in parallel
|
# TODO do this in parallel
|
||||||
await node.dialPeer(peerInfo)
|
await node.dialPeer(peerInfo)
|
||||||
|
else:
|
||||||
|
peerInfo.close()
|
||||||
except CatchableError as err:
|
except CatchableError as err:
|
||||||
debug "Failed to connect to peer", peer = $peer, err = err.msg
|
debug "Failed to connect to peer", peer = $peer, err = err.msg
|
||||||
except CatchableError as err:
|
except CatchableError as err:
|
||||||
|
|
Loading…
Reference in New Issue