Don't allow bids for a ParaId where there is an overlapping lease period (#3361)

* add already leased

Co-Authored-By: parity-processbot <>

* add unit test

Co-Authored-By: parity-processbot <>

* add integration test and fix

Co-Authored-By: parity-processbot <>

* better doc

Co-Authored-By: parity-processbot <>

* Update runtime/common/src/slots.rs

* Update runtime/common/src/slots.rs

* Apply suggestions from code review

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>

* Update runtime/common/src/integration_tests.rs

* Update runtime/common/src/integration_tests.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_common::auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_common_auctions.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_common::auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_common_auctions.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_common::crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_common_crowdloan.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_common::auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_common_auctions.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_common::crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_common_crowdloan.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_common::slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_common_slots.rs

* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_common::slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_common_slots.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
Co-authored-by: Parity Bot <admin@parity.io>
This commit is contained in:
Shawn Tabrizi
2021-06-25 06:56:58 -04:00
committed by GitHub
parent 4a1d1b2de3
commit acec54a74b
10 changed files with 306 additions and 59 deletions
@@ -16,7 +16,7 @@
//! Autogenerated weights for runtime_common::auctions
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0
//! DATE: 2021-06-18, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! DATE: 2021-06-24, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 128
// Executed Command:
@@ -31,7 +31,7 @@
// --wasm-execution=compiled
// --heap-pages=4096
// --header=./file_header.txt
// --output=./runtime/kusama/src/weights/
// --output=./runtime/kusama/src/weights/runtime_common_auctions.rs
#![allow(unused_parens)]
@@ -44,22 +44,22 @@ use sp_std::marker::PhantomData;
pub struct WeightInfo<T>(PhantomData<T>);
impl<T: frame_system::Config> runtime_common::auctions::WeightInfo for WeightInfo<T> {
fn new_auction() -> Weight {
(24_014_000 as Weight)
(29_554_000 as Weight)
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
fn bid() -> Weight {
(134_189_000 as Weight)
(154_464_000 as Weight)
.saturating_add(T::DbWeight::get().reads(8 as Weight))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
}
fn on_initialize() -> Weight {
(23_127_259_000 as Weight)
(33_239_172_000 as Weight)
.saturating_add(T::DbWeight::get().reads(3688 as Weight))
.saturating_add(T::DbWeight::get().writes(3683 as Weight))
}
fn cancel_auction() -> Weight {
(4_854_786_000 as Weight)
(7_021_314_000 as Weight)
.saturating_add(T::DbWeight::get().reads(73 as Weight))
.saturating_add(T::DbWeight::get().writes(3673 as Weight))
}
@@ -16,7 +16,7 @@
//! Autogenerated weights for runtime_common::crowdloan
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0
//! DATE: 2021-06-18, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! DATE: 2021-06-24, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 128
// Executed Command:
@@ -31,7 +31,7 @@
// --wasm-execution=compiled
// --heap-pages=4096
// --header=./file_header.txt
// --output=./runtime/kusama/src/weights/
// --output=./runtime/kusama/src/weights/runtime_common_crowdloan.rs
#![allow(unused_parens)]
@@ -44,53 +44,53 @@ use sp_std::marker::PhantomData;
pub struct WeightInfo<T>(PhantomData<T>);
impl<T: frame_system::Config> runtime_common::crowdloan::WeightInfo for WeightInfo<T> {
fn create() -> Weight {
(84_286_000 as Weight)
(93_538_000 as Weight)
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().writes(3 as Weight))
}
fn contribute() -> Weight {
(575_519_000 as Weight)
(581_495_000 as Weight)
.saturating_add(T::DbWeight::get().reads(7 as Weight))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
}
fn withdraw() -> Weight {
(111_859_000 as Weight)
(127_588_000 as Weight)
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
}
fn refund(k: u32, ) -> Weight {
(45_601_000 as Weight)
// Standard Error: 27_000
.saturating_add((44_795_000 as Weight).saturating_mul(k as Weight))
(0 as Weight)
// Standard Error: 52_000
.saturating_add((56_719_000 as Weight).saturating_mul(k as Weight))
.saturating_add(T::DbWeight::get().reads(3 as Weight))
.saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(k as Weight)))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
.saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(k as Weight)))
}
fn dissolve() -> Weight {
(65_923_000 as Weight)
(68_758_000 as Weight)
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
fn edit() -> Weight {
(41_378_000 as Weight)
(42_049_000 as Weight)
.saturating_add(T::DbWeight::get().reads(1 as Weight))
.saturating_add(T::DbWeight::get().writes(1 as Weight))
}
fn add_memo() -> Weight {
(59_890_000 as Weight)
(65_306_000 as Weight)
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(1 as Weight))
}
fn poke() -> Weight {
(45_687_000 as Weight)
(51_610_000 as Weight)
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(1 as Weight))
}
fn on_initialize(n: u32, ) -> Weight {
(0 as Weight)
// Standard Error: 20_000
.saturating_add((106_096_000 as Weight).saturating_mul(n as Weight))
// Standard Error: 32_000
.saturating_add((131_978_000 as Weight).saturating_mul(n as Weight))
.saturating_add(T::DbWeight::get().reads(5 as Weight))
.saturating_add(T::DbWeight::get().reads((5 as Weight).saturating_mul(n as Weight)))
.saturating_add(T::DbWeight::get().writes(3 as Weight))
@@ -16,7 +16,7 @@
//! Autogenerated weights for runtime_common::slots
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0
//! DATE: 2021-06-18, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! DATE: 2021-06-25, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 128
// Executed Command:
@@ -31,7 +31,7 @@
// --wasm-execution=compiled
// --heap-pages=4096
// --header=./file_header.txt
// --output=./runtime/kusama/src/weights/
// --output=./runtime/kusama/src/weights/runtime_common_slots.rs
#![allow(unused_parens)]
@@ -44,16 +44,16 @@ use sp_std::marker::PhantomData;
pub struct WeightInfo<T>(PhantomData<T>);
impl<T: frame_system::Config> runtime_common::slots::WeightInfo for WeightInfo<T> {
fn force_lease() -> Weight {
(44_787_000 as Weight)
(54_624_000 as Weight)
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
fn manage_lease_period_start(c: u32, t: u32, ) -> Weight {
(0 as Weight)
// Standard Error: 15_000
.saturating_add((14_770_000 as Weight).saturating_mul(c as Weight))
// Standard Error: 15_000
.saturating_add((32_752_000 as Weight).saturating_mul(t as Weight))
// Standard Error: 36_000
.saturating_add((19_526_000 as Weight).saturating_mul(c as Weight))
// Standard Error: 36_000
.saturating_add((42_887_000 as Weight).saturating_mul(t as Weight))
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight)))
.saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(t as Weight)))
@@ -62,12 +62,12 @@ impl<T: frame_system::Config> runtime_common::slots::WeightInfo for WeightInfo<T
.saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(t as Weight)))
}
fn clear_all_leases() -> Weight {
(191_793_000 as Weight)
(230_377_000 as Weight)
.saturating_add(T::DbWeight::get().reads(9 as Weight))
.saturating_add(T::DbWeight::get().writes(9 as Weight))
}
fn trigger_onboard() -> Weight {
(45_111_000 as Weight)
(45_884_000 as Weight)
.saturating_add(T::DbWeight::get().reads(5 as Weight))
.saturating_add(T::DbWeight::get().writes(3 as Weight))
}