Apply PR feedback
This commit is contained in:
parent
cdbeb63879
commit
afc853a776
|
@ -265,26 +265,28 @@ class GossipSub(IPubsubRouter):
|
||||||
async def mesh_heartbeat(self):
|
async def mesh_heartbeat(self):
|
||||||
# Note: the comments here are the exact pseudocode from the spec
|
# Note: the comments here are the exact pseudocode from the spec
|
||||||
for topic in self.mesh:
|
for topic in self.mesh:
|
||||||
|
# Skip if no peers have subscribed to the topic
|
||||||
|
if topic not in self.pubsub.peer_topics:
|
||||||
|
continue
|
||||||
|
|
||||||
num_mesh_peers_in_topic = len(self.mesh[topic])
|
num_mesh_peers_in_topic = len(self.mesh[topic])
|
||||||
if num_mesh_peers_in_topic < self.degree_low:
|
if num_mesh_peers_in_topic < self.degree_low:
|
||||||
if topic in self.pubsub.peer_topics:
|
gossipsub_peers_in_topic = [peer for peer in self.pubsub.peer_topics[topic]
|
||||||
gossipsub_peers_in_topic = [peer for peer in self.pubsub.peer_topics[topic]
|
if peer in self.peers_gossipsub]
|
||||||
if peer in self.peers_gossipsub]
|
|
||||||
|
|
||||||
# Select D - |mesh[topic]| peers from peers.gossipsub[topic] - mesh[topic]
|
# Select D - |mesh[topic]| peers from peers.gossipsub[topic] - mesh[topic]
|
||||||
selected_peers = GossipSub.select_from_minus(
|
selected_peers = GossipSub.select_from_minus(
|
||||||
self.degree - num_mesh_peers_in_topic,
|
self.degree - num_mesh_peers_in_topic,
|
||||||
gossipsub_peers_in_topic,
|
gossipsub_peers_in_topic,
|
||||||
self.mesh[topic]
|
self.mesh[topic]
|
||||||
)
|
)
|
||||||
|
|
||||||
for peer in selected_peers:
|
for peer in selected_peers:
|
||||||
# Add peer to mesh[topic]
|
# Add peer to mesh[topic]
|
||||||
self.mesh[topic].append(peer)
|
self.mesh[topic].append(peer)
|
||||||
|
|
||||||
# Emit GRAFT(topic) control message to peer
|
# Emit GRAFT(topic) control message to peer
|
||||||
await self.emit_graft(topic, peer)
|
await self.emit_graft(topic, peer)
|
||||||
|
|
||||||
if num_mesh_peers_in_topic > self.degree_high:
|
if num_mesh_peers_in_topic > self.degree_high:
|
||||||
# Select |mesh[topic]| - D peers from mesh[topic]
|
# Select |mesh[topic]| - D peers from mesh[topic]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user