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

Feature Gate: LockoutsConflict in handling VoteStateUpdates with old roots #27361

Closed
carllin opened this issue Aug 24, 2022 · 0 comments
Closed
Assignees
Labels
feature-gate Pull Request adds or modifies a runtime feature gate

Comments

@carllin
Copy link
Contributor

carllin commented Aug 24, 2022

Description

In a VoteStateUpdate, when a proposed root is:

  1. Not in the SlotHashes history
  2. Bigger than existing slots in the VoteState

It will get rejected due to LockoutsConflict

For instance:

Current VoteState {root: 0, 1, 2 ,5, 11, 15}
SlotHashes: {8}
Proposed VoteStateUpdate: {root: 5, 11, 15}

Because the proposed root 5 is not in SlotHashes, we currently leave the root as 0. Then we fail with LockoutsConflict on processing the VoteStateUpdate because 1, 2 should have been included in the VoteStateUpdate and not have been popped off from the current VoteState

We should instead set the root to the largest slot in the current VoteState less than the proposed root

Feature ID

G74BkWBzmsByZ1kxHy44H3wjwp5hp7JbrGRuDpco22tY

Activation Method

Single Core Contributor

Minimum Beta Version

No response

Minimum Stable Version

No response

Testnet Activation Epoch

360

Devnet Activation Epoch

434

Mainnet-Beta Activation Epoch

468

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-gate Pull Request adds or modifies a runtime feature gate
Projects
None yet
Development

No branches or pull requests

2 participants