Skip to content
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

Add support for eth/67 #4561

Merged
merged 13 commits into from
Nov 1, 2022
Merged

Add support for eth/67 #4561

merged 13 commits into from
Nov 1, 2022

Conversation

marcindsobczak
Copy link
Contributor

@marcindsobczak marcindsobczak commented Sep 13, 2022

!!! DO NOT MERGE IT BEFORE ##4475!!!
PR mentioned above is needed for snap sync healing phase after dropping GetNodeData

EIP: https://eips.ethereum.org/EIPS/eip-4938

Changes:

  • add support for eth/67 and enable it only if snap protocol is enabled

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation Update
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Other (please describe):

Testing

Requires testing

  • Yes
  • No

In case you checked yes, did you write tests??

  • Yes
  • No

# Conflicts:
#	src/Nethermind/Nethermind.Network/ProtocolsManager.cs
# Conflicts:
#	src/Nethermind/Nethermind.Init/Steps/InitializeNetwork.cs
@marcindsobczak marcindsobczak marked this pull request as ready for review September 29, 2022 17:04
switch (message.PacketType)
{
case Eth66MessageCode.GetNodeData:
break;
Copy link
Contributor

@asdacap asdacap Oct 10, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So essentially, it will just timeout on their end?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, good point, I will rethink it

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does the spec says?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spec obligates us to remove message types GetNodeData and NodeData from the eth protocol, is not specifying our exact behaviour:
https://eips.ethereum.org/EIPS/eip-4938#specification
So I think we should do the same as we do when receiving other not supported messages - ignore without respond

@marcindsobczak marcindsobczak merged commit 250713f into master Nov 1, 2022
@marcindsobczak marcindsobczak deleted the feature/eth67 branch November 1, 2022 12:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement EIP-4938: eth/67
3 participants