staking

bondingDuration: u32

  • interface: staking.bondingDuration

  • summary: Number of eras that staked funds must remain bonded for.

historyDepth: u32

  • interface: staking.historyDepth

  • summary: Number of eras to keep in history.

    Following information is kept for eras in [current_era -  HistoryDepth, current_era]: ErasStakers, ErasStakersClipped, ErasValidatorPrefs, ErasValidatorReward, ErasRewardPoints, ErasTotalStake, ErasStartSessionIndex, ClaimedRewards, ErasStakersPaged, ErasStakersOverview.

    Must be more than the number of eras delayed by session. I.e. active era must always be in history. I.e. active_era >  current_era - history_depth must be guaranteed.

    If migrating an existing pallet from storage value to config value, this should be set to same value or greater as in storage.

    Note: HistoryDepth is used as the upper bound for the BoundedVec item StakingLedger.legacy_claimed_rewards. Setting this value lower than the existing value can lead to inconsistencies in the StakingLedger and will need to be handled properly in a migration. The test reducing_history_depth_abrupt shows this effect.

maxExposurePageSize: u32

  • interface: staking.maxExposurePageSize

  • summary: The maximum size of each T::ExposurePage.

    An ExposurePage is weakly bounded to a maximum of MaxExposurePageSize nominators.

    For older non-paged exposure, a reward payout was restricted to the top MaxExposurePageSize nominators. This is to limit the i/o cost for the nominator payout.

    Note: MaxExposurePageSize is used to bound ClaimedRewards and is unsafe to reduce without handling it in a migration.

maxUnlockingChunks: u32

  • interface: staking.maxUnlockingChunks

  • summary: The maximum number of unlocking chunks a [StakingLedger] can have. Effectively determines how many unique eras a staker may be unbonding in.

    Note: MaxUnlockingChunks is used as the upper bound for the BoundedVec item StakingLedger.unlocking. Setting this value lower than the existing value can lead to inconsistencies in the StakingLedger and will need to be handled properly in a runtime migration. The test reducing_max_unlocking_chunks_abrupt shows this effect.

sessionsPerEra: u32

  • interface: staking.sessionsPerEra

  • summary: Number of sessions per era.

slashDeferDuration: u32

  • interface: staking.slashDeferDuration

  • summary: Number of eras that slashes are deferred by, after computation.

    This should be less than the bonding duration. Set to 0 if slashes should be applied immediately, without opportunity for intervention.