-
Notifications
You must be signed in to change notification settings - Fork 624
Optimize discv5 #10081
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
Optimize discv5 #10081
Conversation
2e6c446 to
de8961f
Compare
… into optimize-discv5
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.
Pull request overview
This PR optimizes the discv5 discovery protocol by updating the Lantern.Discv5 package from preview.6 to preview.7, implementing allocation optimizations through ENR deduplication, and refactoring various aspects of the discovery code.
Key changes:
- Updates Lantern.Discv5.WireProtocol package to version 1.0.0-preview.7
- Refactors node discovery logic with improved variable naming and code patterns
- Modifies logging levels and async operations in the discovery handler
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| Directory.Packages.props | Updates Lantern.Discv5.WireProtocol package version to preview.7 |
| src/Nethermind/Nethermind.Runner/packages.lock.json | Updates lock file with new package versions and transitive dependencies |
| src/Nethermind/Nethermind.Runner/configs/base-sepolia.json | Fixes trailing whitespace formatting |
| src/Nethermind/Nethermind.Network.Discovery/Discv5/NettyDiscoveryV5Handler.cs | Updates copyright year, changes logging levels, and modernizes code style |
| src/Nethermind/Nethermind.Network.Discovery/Discv5/DiscoveryV5App.cs | Refactors discovery logic with improved naming, optimizes allocations, and changes async patterns |
src/Nethermind/Nethermind.Network.Discovery/Discv5/NettyDiscoveryV5Handler.cs
Show resolved
Hide resolved
src/Nethermind/Nethermind.Network.Discovery/Discv5/NettyDiscoveryV5Handler.cs
Outdated
Show resolved
Hide resolved
src/Nethermind/Nethermind.Network.Discovery/Discv5/DiscoveryV5App.cs
Outdated
Show resolved
Hide resolved
src/Nethermind/Nethermind.Network.Discovery/Discv5/DiscoveryV5App.cs
Outdated
Show resolved
Hide resolved
src/Nethermind/Nethermind.Network.Discovery/Discv5/DiscoveryV5App.cs
Outdated
Show resolved
Hide resolved
src/Nethermind/Nethermind.Network.Discovery/Discv5/DiscoveryV5App.cs
Outdated
Show resolved
Hide resolved
src/Nethermind/Nethermind.Network.Discovery/Discv5/NettyDiscoveryV5Handler.cs
Outdated
Show resolved
Hide resolved
571373d to
5045803
Compare
* Update schema * Fix schema * No need in type cast * Use improved discv5; refactor * Update PierTwo.Lantern.Discv5.WireProtocol * Less errors * Pooled
* Update schema * Fix schema * No need in type cast * Use improved discv5; refactor * Update PierTwo.Lantern.Discv5.WireProtocol * Less errors * Pooled
Requires
Changes
Types of changes
What types of changes does your code introduce?
Testing
Requires testing
If yes, did you write tests?