reduce slash defer durations (#1504)

* reduce slash defer durations

* update comments

* tests
This commit is contained in:
Robert Habermeier
2020-07-30 15:25:21 -04:00
committed by GitHub
parent 652ae86afd
commit 64bf3a1e6e
3 changed files with 47 additions and 8 deletions
+16 -3
View File
@@ -90,7 +90,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: create_runtime_str!("kusama"), spec_name: create_runtime_str!("kusama"),
impl_name: create_runtime_str!("parity-kusama"), impl_name: create_runtime_str!("parity-kusama"),
authoring_version: 2, authoring_version: 2,
spec_version: 2022, spec_version: 2023,
impl_version: 0, impl_version: 0,
#[cfg(not(feature = "disable-runtime-api"))] #[cfg(not(feature = "disable-runtime-api"))]
apis: RUNTIME_API_VERSIONS, apis: RUNTIME_API_VERSIONS,
@@ -317,8 +317,8 @@ parameter_types! {
pub const SessionsPerEra: SessionIndex = 6; pub const SessionsPerEra: SessionIndex = 6;
// 28 eras for unbonding (7 days). // 28 eras for unbonding (7 days).
pub const BondingDuration: staking::EraIndex = 28; pub const BondingDuration: staking::EraIndex = 28;
// 28 eras in which slashes can be cancelled (7 days). // 27 eras in which slashes can be cancelled (slightly less than 7 days).
pub const SlashDeferDuration: staking::EraIndex = 28; pub const SlashDeferDuration: staking::EraIndex = 27;
pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE; pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE;
pub const MaxNominatorRewardedPerValidator: u32 = 64; pub const MaxNominatorRewardedPerValidator: u32 = 64;
// quarter of the last session will be for election. // quarter of the last session will be for election.
@@ -1337,3 +1337,16 @@ sp_api::impl_runtime_apis! {
} }
} }
} }
#[cfg(test)]
mod tests {
use super::Runtime;
#[test]
fn slash_defer_less_than_bonding_duration() {
assert!(
<Runtime as staking::Trait>::SlashDeferDuration::get()
< <Runtime as staking::Trait>::BondingDuration::get()
);
}
}
+15 -2
View File
@@ -89,7 +89,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: create_runtime_str!("polkadot"), spec_name: create_runtime_str!("polkadot"),
impl_name: create_runtime_str!("parity-polkadot"), impl_name: create_runtime_str!("parity-polkadot"),
authoring_version: 0, authoring_version: 0,
spec_version: 22, spec_version: 23,
impl_version: 0, impl_version: 0,
#[cfg(not(feature = "disable-runtime-api"))] #[cfg(not(feature = "disable-runtime-api"))]
apis: RUNTIME_API_VERSIONS, apis: RUNTIME_API_VERSIONS,
@@ -329,7 +329,7 @@ parameter_types! {
pub const SessionsPerEra: SessionIndex = 6; pub const SessionsPerEra: SessionIndex = 6;
// 28 eras for unbonding (28 days). // 28 eras for unbonding (28 days).
pub const BondingDuration: staking::EraIndex = 28; pub const BondingDuration: staking::EraIndex = 28;
pub const SlashDeferDuration: staking::EraIndex = 28; pub const SlashDeferDuration: staking::EraIndex = 27;
pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE; pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE;
pub const MaxNominatorRewardedPerValidator: u32 = 64; pub const MaxNominatorRewardedPerValidator: u32 = 64;
// last 15 minutes of the last session will be for election. // last 15 minutes of the last session will be for election.
@@ -1475,3 +1475,16 @@ sp_api::impl_runtime_apis! {
} }
} }
} }
#[cfg(test)]
mod tests {
use super::Runtime;
#[test]
fn slash_defer_less_than_bonding_duration() {
assert!(
<Runtime as staking::Trait>::SlashDeferDuration::get()
< <Runtime as staking::Trait>::BondingDuration::get()
);
}
}
+16 -3
View File
@@ -86,7 +86,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: create_runtime_str!("westend"), spec_name: create_runtime_str!("westend"),
impl_name: create_runtime_str!("parity-westend"), impl_name: create_runtime_str!("parity-westend"),
authoring_version: 2, authoring_version: 2,
spec_version: 42, spec_version: 43,
impl_version: 0, impl_version: 0,
#[cfg(not(feature = "disable-runtime-api"))] #[cfg(not(feature = "disable-runtime-api"))]
apis: RUNTIME_API_VERSIONS, apis: RUNTIME_API_VERSIONS,
@@ -294,8 +294,8 @@ parameter_types! {
pub const SessionsPerEra: SessionIndex = 6; pub const SessionsPerEra: SessionIndex = 6;
// 28 eras for unbonding (7 days). // 28 eras for unbonding (7 days).
pub const BondingDuration: staking::EraIndex = 28; pub const BondingDuration: staking::EraIndex = 28;
// 28 eras in which slashes can be cancelled (7 days). // 27 eras in which slashes can be cancelled (slightly less than 7 days).
pub const SlashDeferDuration: staking::EraIndex = 28; pub const SlashDeferDuration: staking::EraIndex = 27;
pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE; pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE;
pub const MaxNominatorRewardedPerValidator: u32 = 64; pub const MaxNominatorRewardedPerValidator: u32 = 64;
// quarter of the last session will be for election. // quarter of the last session will be for election.
@@ -1113,3 +1113,16 @@ sp_api::impl_runtime_apis! {
} }
} }
} }
#[cfg(test)]
mod tests {
use super::Runtime;
#[test]
fn slash_defer_less_than_bonding_duration() {
assert!(
<Runtime as staking::Trait>::SlashDeferDuration::get()
< <Runtime as staking::Trait>::BondingDuration::get()
);
}
}