-
Notifications
You must be signed in to change notification settings - Fork 78
Rlp-discovery #1129
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
Open
realcodywburns
wants to merge
880
commits into
input-output-hk:develop
Choose a base branch
from
chippr-robotics:rlp-discovery
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Rlp-discovery #1129
realcodywburns
wants to merge
880
commits into
input-output-hk:develop
from
chippr-robotics:rlp-discovery
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…getNodes Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…e-message-decode Fix DeleteAccountsSpec, FilterManagerSpec, and PeerDiscoveryManagerSpec mock expectations
…d relationships Co-authored-by: realcodywburns <[email protected]>
…test-failures Fix block header timestamp in fast sync integration tests
…i trait Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…eption-messagehandler Fix ClassCastException in VMClientSpec by extracting MessageHandlerApi trait
- Override system in PeerActorSpec TestSetup to use explicit scheduler from TestKit - Increase normalTimeout from 3s to 5s to allow for slow initialization - Run scalafmt on all source files Co-authored-by: realcodywburns <[email protected]>
- Fix AuthInitiateMessageV4 encoder to wrap values in RLPValue - Fix FrameCodecSpec DummyMsg encoder similarly - Remove rebrand_backup_20251024_215518 directory - Clean up unused imports - Run scalafmt Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…itialization-error Fix scheduler initialization and RLP encoding in Scala 3 migration
…ssues Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…Timeout Co-authored-by: realcodywburns <[email protected]>
…ption-issues Increase Pekko actor timeouts to prevent mining and sync failures
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…coding Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…atting Co-authored-by: realcodywburns <[email protected]>
Disable TUI by default per maintainer request
Co-authored-by: realcodywburns <[email protected]>
…rsSpec Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…-errors Fix NumberFormatException crash during network sync from empty RLP byte arrays
The root cause was in RLPxConnectionHandler.ethMessageCodecFactory where the message decoder chain was ordered incorrectly. Network protocol messages (Hello, Disconnect, Ping, Pong) are part of the base RLPx protocol and must be decoded before capability-specific messages. When ETH68 peers sent Disconnect messages (code 0x01), the ETH68 decoder tried first and failed with "Unknown eth/68 message type: 1", then the NetworkMessageDecoder would fail to decode properly. This caused the connection to be terminated, resulting in zero stable peer connections. Changed decoder chain from: EthereumMessageDecoder.ethMessageDecoder(negotiated).orElse(NetworkMessageDecoder) to: NetworkMessageDecoder.orElse(EthereumMessageDecoder.ethMessageDecoder(negotiated)) This aligns with the Ethereum devp2p specification and matches the test suite. Co-authored-by: realcodywburns <[email protected]>
- Added Issue 14 to known-issues.md with comprehensive documentation - Updated CHANGELOG.md with critical bugfix entry - Updated known-issues table of contents and last updated date - Added references to Ethereum devp2p specification Co-authored-by: realcodywburns <[email protected]>
…ections Fix ETH68 peer disconnect - incorrect message decoder order
…lerFactory issue Co-authored-by: realcodywburns <[email protected]>
…uplication, handle charset properly Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
… and remove unnecessary null check Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…dlerfactory-failure Fix JupnP URLStreamHandlerFactory conflict preventing node startup
Co-authored-by: realcodywburns <[email protected]>
Co-authored-by: realcodywburns <[email protected]>
…tters Co-authored-by: realcodywburns <[email protected]>
…EtcHelloExchangeState.scala modified: src/main/scala/com/chipprbots/ethereum/network/rlpx/MessageCodec.scala modified: src/main/scala/com/chipprbots/ethereum/network/rlpx/RLPxConnectionHandler.scala
…usting test expectations The test was failing because: 1. MessageCodec constructor arguments were swapped - each codec was getting its own version instead of the peer's version 2. Test used v4 for local when P2pVersion threshold was changed from 5 to 4, causing both sides to compress Fixed by: - Swapping version arguments so each codec gets the remote peer's version - Changing negotiatedLocalP2PVersion from 4 to 3 in the failing test - Updating test comment for clarity Co-authored-by: realcodywburns <[email protected]>
…ge-delivery Fix dead letters from RLPxConnectionHandler to terminated TCP selectors
…nges; enhance logging for decompression errors and handle protocol deviations in message decoding
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
A clear and concise description of what this pull request does or fixes.
Proposed Solution
Optional Explain how does this PR solves the problem stated in Description. You can also enumerate different alternatives considered while approaching this task.
Important Changes Introduced
Optional Notice Reviewers about changes that were introduced while developing this task
Testing
Optional Leave some recommendations should be useful while reviewers are testing this PR