Skip to content

Conversation

algorandskiy
Copy link
Contributor

@algorandskiy algorandskiy commented Jul 23, 2025

Summary

This PR contains the following changes:

  1. Updated hybridRelayMeshCreator for relays: use WS as a primary source of peers and fallback to p2p nodes
  2. Vetting non-dialNode outgoing connects (such as made by pubsub to peers learned from PX).
  3. libp2p-pubsub default D values adjusted according to GossipFanout
  4. Fixes to flaky unit tests (set DNSBootstrapID = "") most likely caused to non-existing DNS records lookup timeout - if it takes longer than Eventually timeout for connectivity assertions tests fail.
  5. addressData -> psmdkAddressData variable rename to standardize with other keys by using psmdk prefix.

Related: #6045

Test Plan

Added unit tests
Performance cluster tests summary: 8k TPS (as expected for hybrid), 7+1 or 6+2 (ws+p2p) outgoing connections (as expected as well).

Copy link

codecov bot commented Jul 23, 2025

Codecov Report

Attention: Patch coverage is 79.06977% with 9 lines in your changes missing coverage. Please review.

Project coverage is 50.49%. Comparing base (36a83dd) to head (127b66b).
Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
network/mesh.go 84.00% 2 Missing and 2 partials ⚠️
network/wsNetwork.go 72.72% 3 Missing ⚠️
network/p2p/p2p.go 0.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6391      +/-   ##
==========================================
- Coverage   50.68%   50.49%   -0.19%     
==========================================
  Files         661      654       -7     
  Lines      110682   110699      +17     
==========================================
- Hits        56097    55900     -197     
- Misses      51724    51927     +203     
- Partials     2861     2872      +11     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@algorandskiy algorandskiy added the p2p Work related to the p2p project label Jul 25, 2025
@algorandskiy algorandskiy force-pushed the pavel/ws-relays-p2p-backup branch from 127b66b to 4f7a7ca Compare August 15, 2025 19:48
@algorandskiy algorandskiy changed the title WIP: network: wsnet with p2p backup meshing strategy network: wsnet with p2p backup meshing strategy Aug 15, 2025
@algorandskiy algorandskiy requested review from cce and jannotti August 15, 2025 19:52
libp2p pubsub can connect to PX streams so that we could end up with
more than GossipFanout outgoing peers.
This PR marks explicitly dialed peers using peerstore metadata
so that each connection can be checked and vetted
@algorandskiy algorandskiy force-pushed the pavel/ws-relays-p2p-backup branch from 4f7a7ca to dd1293d Compare August 19, 2025 17:58
@algorandskiy algorandskiy marked this pull request as ready for review August 25, 2025 16:21
@algorandskiy algorandskiy requested a review from gmalouf August 25, 2025 16:21
@algorandskiy algorandskiy force-pushed the pavel/ws-relays-p2p-backup branch from c47fd05 to 7187dfe Compare August 25, 2025 22:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement p2p Work related to the p2p project
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant