-
-
Notifications
You must be signed in to change notification settings - Fork 93
Reproduce Update Propagation Issues with Peer Blocking Tests #1592
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reproduce Update Propagation Issues with Peer Blocking Tests #1592
Conversation
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
This seems good first glancve, but there is a lot of new code here which seems redundant?: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sanity This seems good first glance, but there is a lot of new code here which seems redundant?
would be nice to have a summary of what each test is testing and refactor common code where possible
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
… logging Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
…tion Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
…sing TTL and wait times Co-Authored-By: Ian Clarke <github@ian.33mail.com>
…ving current state before updates Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
Co-Authored-By: Ian Clarke <github@ian.33mail.com>
e036c59
to
2e278d8
Compare
I cleaned up quite a lot all this stuff and got it working, added the tests are ignored for now cause they are NOT passing and we need to fix em, but are useful for debugging. |
Reproduce Update Propagation Issues with Peer Blocking Tests
Overview
This PR implements tests that successfully reproduce the update propagation issues seen in the live Freenet network. Using the peer blocking functionality from PR #1581, we've created tests that simulate a network where peers are connected through a gateway but not directly to each other, which better represents the topology of the live network.
Findings
Our tests confirm the hypothesis that updates and subscriptions are unreliable when peers are not directly connected:
Specifically, we found that:
Implementation Details
This PR includes several test implementations:
run_app_blocked_peers.rs
- Basic implementation of peer blocking testrun_app_blocked_peers_optimized.rs
- Optimized version with reduced timeoutsrun_app_blocked_peers_debug.rs
- Enhanced logging for subscription operationsrun_app_blocked_peers_reliable.rs
- Multiple update rounds with increasing delaysTest Results
The debug test clearly shows the issue:
This matches the behavior reported in the live network where users cannot join rooms about 2/3 of the time.
Next Steps
Potential solutions to investigate:
Related Issues
This PR is related to the subscription reliability issues in the Freenet network, particularly in applications like River where users cannot join rooms reliably.
Link to Devin run
https://app.devin.ai/sessions/d77861025c92420e8806849f463924ef
Requested by: Ian Clarke (ian.clarke@gmail.com)