Enhance peer discovery logging and address resolution handling in BootstrapDiscovery

This commit is contained in:
sumanjeet0012@gmail.com
2025-07-24 00:11:05 +05:30
parent 0416572457
commit e91f458446

View File

@ -60,6 +60,9 @@ class BootstrapDiscovery:
return return
peer_id = ID.from_base58(peer_id_str) peer_id = ID.from_base58(peer_id_str)
addrs = [addr for addr in resolved_addrs] addrs = [addr for addr in resolved_addrs]
if not addrs:
logger.warning(f"No addresses resolved for DNS address: {addr_str}")
return
peer_info = PeerInfo(peer_id, addrs) peer_info = PeerInfo(peer_id, addrs)
self.add_addr(peer_info) self.add_addr(peer_info)
else: else:
@ -76,16 +79,16 @@ class BootstrapDiscovery:
logger.debug(f"Skipping own peer ID: {peer_info.peer_id}") logger.debug(f"Skipping own peer ID: {peer_info.peer_id}")
return return
# Skip if already discovered # Always add addresses to peerstore (allows multiple addresses for same peer)
if str(peer_info.peer_id) in self.discovered_peers:
logger.debug(f"Peer already discovered: {peer_info.peer_id}")
return
# Add to peerstore with TTL (using same pattern as mDNS)
self.peerstore.add_addrs(peer_info.peer_id, peer_info.addrs, 10) self.peerstore.add_addrs(peer_info.peer_id, peer_info.addrs, 10)
# Track discovered peer # Only emit discovery event if this is the first time we see this peer
self.discovered_peers.add(str(peer_info.peer_id)) peer_id_str = str(peer_info.peer_id)
if peer_id_str not in self.discovered_peers:
# Emit peer discovery event # Track discovered peer
peerDiscovery.emit_peer_discovered(peer_info) self.discovered_peers.add(peer_id_str)
# Emit peer discovery event
peerDiscovery.emit_peer_discovered(peer_info)
logger.debug(f"Peer discovered: {peer_info.peer_id}")
else:
logger.debug(f"Additional addresses added for peer: {peer_info.peer_id}")