Skip to content

Conversation

@edmundnoble
Copy link

No description provided.

InvalidAdjacentVersion -> "An adjancent parent has a chainweb version that does not match the version of the validated header"
IncorrectForkNumber -> "The block has an incorrect fork number"
InvalidForkVotes -> "The block has an invalid fork vote count"
UnknownForkNumber -> "The block has an unknown fork number"

Choose a reason for hiding this comment

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

I assume this msg is shown in the log. I suggest helping the node operator and add "The node is likely outdated and require an upgrade"

Copy link
Author

Choose a reason for hiding this comment

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

I remember having this thought, then deciding against it, and now I can't think of any good reason to 😅 done.

, IncorrectGenesisTarget
, IncorrectPayloadHash
, IncorrectForkNumber
, UnknownForkNumber

Choose a reason for hiding this comment

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

I think, we shouldn't blacklist peers for that reason. Because we are probably the culprit here.

Copy link
Author

Choose a reason for hiding this comment

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

If we don't blacklist a peer on a different fork number, we may waste local and remote peer resources attempting to share blocks with them and catch up to their blocks; and in general, there is not much reason to share a mempool with the peer either, because the likelihood is that transactions will not be valid between the two forks and replaying transactions across forks is likely not desired behavior.

definiteValidationFailures specifically denotes validation failures which indicate that there is a difference in block validation behavior; this is exactly a hard fork, and fork numbers are hard forks by definition.

@edmundnoble edmundnoble merged commit aa4c204 into master Dec 20, 2025
11 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants