Skip to content

Commit

Permalink
Update maintain-guides-how-to-chill.md (#2375)
Browse files Browse the repository at this point in the history
* Update maintain-guides-how-to-chill.md

Summarize the contents in paritytech/substrate#8920

#2173

* Added content on Chill other

* Update maintain-guides-how-to-chill.md

Added suggestions from Danny

* Update maintain-guides-how-to-chill.md

minor correction
  • Loading branch information
DrW3RK authored and jakehemmerle committed Jul 27, 2021
1 parent 492c40d commit 2e0a23c
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 4 deletions.
4 changes: 2 additions & 2 deletions docs/learn-nominator.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,8 @@ the fact that the solution set must fit in a single block, in some eras, a minim
will be required to nominate with in order to receive staking rewards.

This parameter can be updated via on-chain governance and the most recent and up to date version can
be found on [chain state](https://polkadot.js.org/apps/#/chainstate) (selected state query -
staking - minimumNominatorBond)
be found on [chain state](https://polkadot.js.org/apps/#/chainstate) (select **state query >
staking > minimumNominatorBond**)

### Oversubscribed Validators

Expand Down
11 changes: 9 additions & 2 deletions docs/maintain-guides-how-to-chill.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,13 @@ nominator under a heading that says "Redenomination required". If your validator
involuntarily chilled, you will need to request your nominators to re-issue the nominate call in
order to start nominating you again.

[chill extrinsic]:
https://substrate.dev/rustdocs/latest/pallet_staking/pallet/enum.Call.html#variant.chill

## Chill Other

An unbounded and unlimited number of nominators and validators in Polkadot's NPoS is just not possible due to constraints in the runtime. As a result, multiple checks are incorporated to keep the size of staking system manageable, like mandating minimum active bond requirements for both nominators and validators. When these requirements are modified through on-chain governance, they can be enforced only on the accounts that newly call `nominate` or `validate` after the update. The changes to the bonding parameters would not automatically chill the active accounts on-chain which do not meet the requirements.

For instance, let us consider a scenario where the minimum staking requirement for nominators is changed from 20 DOTs to 40 DOTs. An account that was actively nominating with 20 DOTs before this update would still keep receiving staking rewards. To handle this corner case, the `chill_other` extrinsic was incorporated which also helps to keep things backwards compatible and safe. The `chill_other` extrinsic is permissionless and any third party user can target it on an account where the minimum active bond is not satisfied, and chill that account. The list of addresses of all the active validators and their nominators can be viewed by running [validator stats](https://github.com/w3f/validator-stats) script.

[chill extrinsic]: https://substrate.dev/rustdocs/latest/pallet_staking/pallet/enum.Call.html#variant.chill

[accounts]: learn-staking.md#accounts

0 comments on commit 2e0a23c

Please sign in to comment.