-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Changing PowerReduction
param causing network halt
#9447
Comments
Is someone taking a look at this? I believe it's one of the last pieces blocking a 0.43-RC |
I managed to reproduce the error in a script on my am/9447-power-red branch (it's macos-specific, and uses git checkout am/9447-power-red
./power_reduction.sh
# Follow instructions
# Will error with consensus failure at around block 100:
"should never retrieve a jailed validator from the power store" link to logs of the couple of blocks leading to the consensus error. |
The Since you're changing the way the state-machine views and treats validator powers, you're also changing the way validators are retrieved from the state. Specifically, the state-machine returns to Tendermint validator set updates every block (or epoch) via |
<!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description Closes: #9447 This PR partially reverts #8505. Namely: - it removes PowerReduction as a staking on-chain param - however, it keeps #8505's API changes regarding adding a `powerReduction` function argument to staking functions. This allows us to rely less on global variables in said functions. <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> --- ### Author Checklist *All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.* I have... - [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] added `!` to the type prefix if API or client breaking change - [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#pr-targeting)) - [ ] provided a link to the relevant issue or specification - [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules) - [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#testing) - [ ] added a changelog entry to `CHANGELOG.md` - [ ] included comments for [documenting Go code](https://blog.golang.org/godoc) - [ ] updated the relevant documentation or specification - [ ] reviewed "Files changed" and left comments if necessary - [ ] confirmed all CI checks have passed ### Reviewers Checklist *All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.* I have... - [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] confirmed `!` in the type prefix if API or client breaking change - [ ] confirmed all author checklist items have been addressed - [ ] reviewed state machine logic - [ ] reviewed API design and naming - [ ] reviewed documentation is accurate - [ ] reviewed tests and test coverage - [ ] manually tested (if applicable)
Why it is not deterministic? Since blocks are finalized, big majority of the validators will have the same state. There is no randomness. |
@robert-zaremba because you need to go into the |
Summary of Bug
PowerReduction
is now changed into an on-chain param. Updating it via a param change proposal is causing the consensus failure. It's occuring on a validator getting jailed once after the param is updated. Here's are the logs: https://pastebin.com/5RDu2mwHVersion
v0.43-beta1
Steps to Reproduce
PowerReduction
paramcc @sunnya97 @robert-zaremba @clevinson @aaronc
For Admin Use
The text was updated successfully, but these errors were encountered: