mirror of
https://github.com/status-im/nim-libp2p.git
synced 2025-02-18 15:59:22 +00:00
fix grafted defect
This commit is contained in:
parent
aded78f259
commit
f122ec9dbf
@ -285,7 +285,7 @@ proc grafted(g: GossipSub, p: PubSubPeer, topic: string) =
|
||||
|
||||
debug "grafted", p
|
||||
do:
|
||||
doAssert(false, "grafted: TopicInfo key not found for " & $p)
|
||||
doAssert(false, "grafted: peerStats key not found for " & $p)
|
||||
|
||||
proc pruned(g: GossipSub, p: PubSubPeer, topic: string) =
|
||||
g.peerStats.withValue(p, stats) do:
|
||||
@ -685,7 +685,12 @@ proc handleGraft(g: GossipSub,
|
||||
|
||||
# If they send us a graft before they send us a subscribe, what should
|
||||
# we do? For now, we add them to mesh but don't add them to gossipsub.
|
||||
|
||||
if peer notin g.peerStats:
|
||||
g.peerStats[peer] = PeerStats()
|
||||
|
||||
if topic in g.topics:
|
||||
discard g.gossipsub.addPeer(topic, peer)
|
||||
if g.mesh.peers(topic) < GossipSubDHi:
|
||||
# In the spec, there's no mention of DHi here, but implicitly, a
|
||||
# peer will be removed from the mesh on next rebalance, so we don't want
|
||||
|
Loading…
x
Reference in New Issue
Block a user