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

Fix ibft not mining bug when network split on waiting for commit mess… #10

Merged
merged 2 commits into from
Apr 21, 2022

Conversation

DarianShawn
Copy link
Collaborator

Description

Jury IBFT consensus would not restore to mining in some network split use cases.

Suppose, proposer received enough prepare messages from other nodes, locked the validate state, and missed enough commit message, then the round change. The magic happen, the whole network would not mine at all. The only way to fix is to restart the whole network validator nodes, which is unacceptable.

This PR would fixed it, since we unlock the validate state when a new round change happen, then new propose could be handled properly.

By the way, we add IBFT message validation in validate state, which could prevent some faulty node attacks.

Changes include

  • Bugfix (non-breaking change that solves an issue)
  • Hotfix (change that solves an urgent issue, and requires immediate attention)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (change that is not backwards-compatible and/or changes current functionality)

Checklist

  • I have assigned this PR to myself
  • I have added at least 1 reviewer
  • I have added the relevant labels
  • I have updated the official documentation
  • I have added sufficient documentation in code

Testing

  • I have tested this code with the official test suite
  • I have tested this code manually

@DarianShawn DarianShawn added the hotfix Major bug fix that should be merged ASAP label Apr 21, 2022
@DarianShawn DarianShawn self-assigned this Apr 21, 2022
Copy link
Collaborator

@abrahamcruise321 abrahamcruise321 left a comment

Choose a reason for hiding this comment

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

OK

@abrahamcruise321 abrahamcruise321 merged commit 4dfcea4 into dev Apr 21, 2022
@abrahamcruise321 abrahamcruise321 deleted the fix/network-split-make-ibft-not-mining branch April 21, 2022 09:30
@github-actions github-actions bot locked and limited conversation to collaborators Apr 21, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
hotfix Major bug fix that should be merged ASAP
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants