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

Ensure > 100 genesis validator candidates are handled correctly #1710

Closed
cwgoes opened this issue Jul 17, 2018 · 5 comments
Closed

Ensure > 100 genesis validator candidates are handled correctly #1710

cwgoes opened this issue Jul 17, 2018 · 5 comments
Assignees
Labels
C:x/staking T: API Breaking Breaking changes that impact APIs and the SDK only (not state machine). T:Bug

Comments

@cwgoes
Copy link
Contributor

cwgoes commented Jul 17, 2018

As on gaia-7000 try 1.

Should be addressed in #1373.

@cwgoes cwgoes added C:x/staking T: API Breaking Breaking changes that impact APIs and the SDK only (not state machine). T:Bug labels Jul 17, 2018
@rigelrozanski
Copy link
Contributor

rigelrozanski commented Jul 18, 2018

Care to summarize what happened on try 1?

@cwgoes
Copy link
Contributor Author

cwgoes commented Jul 18, 2018

We didn't actually fault on gaia-7000 because of this (we instead faulted due to a duplicate validator accidentally in the genesis file), but I think we would have. With the current way of reading genesis, the SDK will pick the top hundred candidates as validators, but won't update Tendermint on the first block - so Tendermint had 107 validators. Eventually, a validator that was bonded in Tendermint but not bonded in the SDK might be slashed, or in some other way behave in an undefined manner since the SDK thought the validator was unbonded but it was actually bonded (and voting) in Tendermint.

#1373 should fix this though, just noting here for reference.

@rigelrozanski
Copy link
Contributor

rigelrozanski commented Jul 18, 2018

Oh interesting yeah makes sense. Currently on the SDK side, we "bond" the top 100 at genesis, so those valid bonded validators will exist in the staking TendermintUpdates we just need to make sure we pass back the Tendermint updates from staking into ResponseInitChain

@cwgoes cwgoes self-assigned this Jul 25, 2018
@cwgoes
Copy link
Contributor Author

cwgoes commented Jul 25, 2018

Chris to add testcase for > 100 genesis validators.

@cwgoes
Copy link
Contributor Author

cwgoes commented Aug 29, 2018

@cwgoes cwgoes closed this as completed Aug 29, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C:x/staking T: API Breaking Breaking changes that impact APIs and the SDK only (not state machine). T:Bug
Projects
None yet
Development

No branches or pull requests

2 participants