difftreelog
Missed tests was added. Scheduler pallet renamed.
in: master
13 files changed
Makefilediffbeforeafterboth--- a/Makefile
+++ b/Makefile
@@ -103,7 +103,7 @@
.PHONY: bench-scheduler
bench-scheduler:
- make _bench2 PALLET=unq-scheduler PALLET_DIR=scheduler
+ make _bench2 PALLET=unique-scheduler PALLET_DIR=scheduler
.PHONY: bench
bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-scheduler
pallets/scheduler/Cargo.tomldiffbeforeafterboth--- a/pallets/scheduler/Cargo.toml
+++ b/pallets/scheduler/Cargo.toml
@@ -1,5 +1,5 @@
[package]
-name = "pallet-unq-scheduler"
+name = "pallet-unique-scheduler"
version = "0.1.0"
authors = ["Unique Network <support@uniquenetwork.io>"]
edition = "2021"
pallets/scheduler/src/benchmarking.rsdiffbeforeafterboth1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617// Original license18// This file is part of Substrate.1920// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.21// SPDX-License-Identifier: Apache-2.02223// Licensed under the Apache License, Version 2.0 (the "License");24// you may not use this file except in compliance with the License.25// You may obtain a copy of the License at26//27// http://www.apache.org/licenses/LICENSE-2.028//29// Unless required by applicable law or agreed to in writing, software30// distributed under the License is distributed on an "AS IS" BASIS,31// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.32// See the License for the specific language governing permissions and33// limitations under the License.3435//! Scheduler pallet benchmarking.3637use super::*;38use frame_benchmarking::{benchmarks, account};39use frame_support::{40 ensure,41 traits::{OnInitialize},42};43use frame_system::RawOrigin;44use sp_runtime::traits::Hash;45use sp_std::{prelude::*, vec};4647use crate::Pallet as Scheduler;48use frame_system::Pallet as System;49use frame_support::traits::Currency;5051const BLOCK_NUMBER: u32 = 2;5253/// Add `n` named items to the schedule.54///55/// For `resolved`:56/// - `None`: aborted (hash without preimage)57/// - `Some(true)`: hash resolves into call if possible, plain call otherwise58/// - `Some(false)`: plain call59fn fill_schedule<T: Config>(60 when: T::BlockNumber,61 n: u32,62 periodic: bool,63 resolved: Option<bool>,64) -> Result<(), &'static str> {65 let t = DispatchTime::At(when);66 let caller = account("user", 0, 1);6768 // Give the sender account max funds for transfer (their account will never reasonably be killed).69 T::Currency::make_free_balance_be(&caller, T::Currency::minimum_balance());7071 for i in 0..n {72 let (call, hash) = call_and_hash::<T>(i);73 let call_or_hash = match resolved {74 Some(_) => call.into(),75 None => CallOrHashOf::<T>::Hash(hash),76 };77 let period = match periodic {78 true => Some(((i + 100).into(), 100)),79 false => None,80 };8182 let slice_id: [u8; 4] = i.encode().try_into().unwrap();83 let mut id: [u8; 16] = [0; 16];84 id[..4].clone_from_slice(&slice_id);8586 let origin = frame_system::RawOrigin::Signed(caller.clone()).into();87 Scheduler::<T>::do_schedule_named(id, t, period, 0, origin, call_or_hash)?;88 }89 ensure!(90 Agenda::<T>::get(when).len() == n as usize,91 "didn't fill schedule"92 );93 Ok(())94}9596fn call_and_hash<T: Config>(i: u32) -> (<T as Config>::Call, T::Hash) {97 // Essentially a no-op call.98 let call: <T as Config>::Call = frame_system::Call::remark { remark: i.encode() }.into();99 let hash = T::Hashing::hash_of(&call);100 (call, hash)101}102103benchmarks! {104 on_initialize_periodic_named_resolved {105 let s in 1 .. T::MaxScheduledPerBlock::get();106 let when = BLOCK_NUMBER.into();107 fill_schedule::<T>(when, s, true, Some(true))?;108 }: { Scheduler::<T>::on_initialize(BLOCK_NUMBER.into()); }109 verify {110 assert_eq!(System::<T>::event_count(), s);111 for i in 0..s {112 assert_eq!(Agenda::<T>::get(when + (i + 100).into()).len(), 1 as usize);113 }114 }115116 on_initialize_named_resolved {117 let s in 1 .. T::MaxScheduledPerBlock::get();118 let when = BLOCK_NUMBER.into();119 fill_schedule::<T>(when, s, false, Some(true))?;120 }: { Scheduler::<T>::on_initialize(BLOCK_NUMBER.into()); }121 verify {122 assert_eq!(System::<T>::event_count(), s);123 assert!(Agenda::<T>::iter().count() == 0);124 }125126 on_initialize_periodic_resolved {127 let s in 1 .. T::MaxScheduledPerBlock::get();128 let when = BLOCK_NUMBER.into();129 fill_schedule::<T>(when, s, true, Some(true))?;130 }: { Scheduler::<T>::on_initialize(BLOCK_NUMBER.into()); }131 verify {132 assert_eq!(System::<T>::event_count(), s );133 for i in 0..s {134 assert_eq!(Agenda::<T>::get(when + (i + 100).into()).len(), 1 as usize);135 }136 }137138 on_initialize_resolved {139 let s in 1 .. T::MaxScheduledPerBlock::get();140 let when = BLOCK_NUMBER.into();141 fill_schedule::<T>(when, s, false, Some(true))?;142 }: { Scheduler::<T>::on_initialize(BLOCK_NUMBER.into()); }143 verify {144 assert_eq!(System::<T>::event_count(), s);145 assert!(Agenda::<T>::iter().count() == 0);146 }147148 schedule_named {149 let caller: T::AccountId = account("user", 0, 1);150 let origin: RawOrigin<T::AccountId> = frame_system::RawOrigin::Signed(caller.clone());151 let s in 0 .. T::MaxScheduledPerBlock::get();152 let slice_id: [u8; 4] = s.encode().try_into().unwrap();153 let mut id: [u8; 16] = [0; 16];154 id[..4].clone_from_slice(&slice_id);155 let when = BLOCK_NUMBER.into();156 let periodic = Some((T::BlockNumber::one(), 100));157 let priority = 0;158 // Essentially a no-op call.159 let inner_call = frame_system::Call::set_storage { items: vec![] }.into();160 let call = Box::new(CallOrHashOf::<T>::Value(inner_call));161 fill_schedule::<T>(when, s, true, Some(false))?;162 }: _(origin, id, when, periodic, priority, call)163 verify {164 ensure!(165 Agenda::<T>::get(when).len() == (s + 1) as usize,166 "didn't add to schedule"167 );168 }169170 cancel_named {171 let caller: T::AccountId = account("user", 0, 1);172 let origin: RawOrigin<T::AccountId> = frame_system::RawOrigin::Signed(caller.clone());173 let s in 1 .. T::MaxScheduledPerBlock::get();174 let when = BLOCK_NUMBER.into();175 let id = 0.encode().try_into().unwrap_or([0; MAX_TASK_ID_LENGTH_IN_BYTES as usize]);176 fill_schedule::<T>(when, s, true, Some(false))?;177 }: _(origin, id)178 verify {179 ensure!(180 Lookup::<T>::get(id).is_none(),181 "didn't remove from lookup"182 );183 // Removed schedule is NONE184 ensure!(185 Agenda::<T>::get(when)[0].is_none(),186 "didn't remove from schedule"187 );188 }189190 impl_benchmark_test_suite!(Scheduler, crate::mock::new_test_ext(), crate::mock::Test);191}pallets/scheduler/src/lib.rsdiffbeforeafterboth--- a/pallets/scheduler/src/lib.rs
+++ b/pallets/scheduler/src/lib.rs
@@ -158,11 +158,10 @@
Self::on_initialize_periodic(2) - Self::on_initialize_periodic(1)
}
(true, true, Some(false)) => {
- Self::on_initialize_periodic_named(2) - Self::on_initialize_periodic_named(1)
- }
- (false, false, Some(true)) => {
- Self::on_initialize_resolved(2) - Self::on_initialize_resolved(1)
+ Self::on_initialize_periodic_named_resolved(2)
+ - Self::on_initialize_periodic_named_resolved(1)
}
+ (false, false, Some(true)) => Self::on_initialize(2) - Self::on_initialize(1),
(false, true, Some(true)) => {
Self::on_initialize_named_resolved(2) - Self::on_initialize_named_resolved(1)
}
pallets/scheduler/src/weights.rsdiffbeforeafterboth--- a/pallets/scheduler/src/weights.rs
+++ b/pallets/scheduler/src/weights.rs
@@ -1,6 +1,6 @@
// Template adopted from https://github.com/paritytech/substrate/blob/master/.maintain/frame-weight-template.hbs
-//! Autogenerated weights for pallet_unq_scheduler
+//! Autogenerated weights for pallet_unique_scheduler
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
//! DATE: 2022-06-09, STEPS: `50`, REPEAT: 200, LOW RANGE: `[]`, HIGH RANGE: `[]`
@@ -11,7 +11,7 @@
// benchmark
// pallet
// --pallet
-// pallet-unq-scheduler
+// pallet-unique-scheduler
// --wasm-execution
// compiled
// --extrinsic
@@ -31,17 +31,22 @@
use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}};
use sp_std::marker::PhantomData;
-/// Weight functions needed for pallet_unq_scheduler.
+/// Weight functions needed for pallet_unique_scheduler.
pub trait WeightInfo {
fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight;
fn on_initialize_named_resolved(s: u32, ) -> Weight;
+ fn on_initialize_periodic(s: u32, ) -> Weight;
fn on_initialize_periodic_resolved(s: u32, ) -> Weight;
+ fn on_initialize_aborted(s: u32, ) -> Weight;
+ fn on_initialize_named_aborted(s: u32, ) -> Weight;
+ fn on_initialize_named(s: u32, ) -> Weight;
+ fn on_initialize(s: u32, ) -> Weight;
fn on_initialize_resolved(s: u32, ) -> Weight;
fn schedule_named(s: u32, ) -> Weight;
fn cancel_named(s: u32, ) -> Weight;
}
-/// Weights for pallet_unq_scheduler using the Substrate node and recommended hardware.
+/// Weights for pallet_unique_scheduler using the Substrate node and recommended hardware.
pub struct SubstrateWeight<T>(PhantomData<T>);
impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
// Storage: Scheduler Agenda (r:2 w:2)
@@ -50,9 +55,9 @@
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {
- (39_822_000 as Weight)
- // Standard Error: 4_000
- .saturating_add((31_823_000 as Weight).saturating_mul(s as Weight))
+ (35_999_000 as Weight)
+ // Standard Error: 3_000
+ .saturating_add((32_234_000 as Weight).saturating_mul(s as Weight))
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
@@ -64,9 +69,9 @@
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_named_resolved(s: u32, ) -> Weight {
- (36_019_000 as Weight)
- // Standard Error: 3_000
- .saturating_add((22_660_000 as Weight).saturating_mul(s as Weight))
+ (34_874_000 as Weight)
+ // Standard Error: 2_000
+ .saturating_add((23_114_000 as Weight).saturating_mul(s as Weight))
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
.saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
@@ -76,24 +81,84 @@
// Storage: System AllExtrinsicsLen (r:1 w:1)
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_periodic(s: u32, ) -> Weight {
+ (36_469_000 as Weight)
+ // Standard Error: 3_000
+ .saturating_add((32_202_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(T::DbWeight::get().reads(4 as Weight))
+ .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))
+ .saturating_add(T::DbWeight::get().writes(4 as Weight))
+ .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:2 w:2)
+ // Storage: System Account (r:1 w:1)
+ // Storage: System AllExtrinsicsLen (r:1 w:1)
+ // Storage: System BlockWeight (r:1 w:1)
+ // Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_periodic_resolved(s: u32, ) -> Weight {
- (36_613_000 as Weight)
+ (35_352_000 as Weight)
// Standard Error: 3_000
- .saturating_add((31_895_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((32_309_000 as Weight).saturating_mul(s as Weight))
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
.saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))
}
+ // Storage: Scheduler Agenda (r:2 w:2)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_aborted(s: u32, ) -> Weight {
+ (11_267_000 as Weight)
+ // Standard Error: 1_000
+ .saturating_add((9_368_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(T::DbWeight::get().reads(2 as Weight))
+ .saturating_add(T::DbWeight::get().writes(2 as Weight))
+ .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:1 w:1)
+ // Storage: System Account (r:1 w:1)
+ // Storage: System AllExtrinsicsLen (r:1 w:1)
+ // Storage: System BlockWeight (r:1 w:1)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_named_aborted(s: u32, ) -> Weight {
+ (35_937_000 as Weight)
+ // Standard Error: 3_000
+ .saturating_add((23_037_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(T::DbWeight::get().reads(4 as Weight))
+ .saturating_add(T::DbWeight::get().writes(4 as Weight))
+ .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:2 w:2)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_named(s: u32, ) -> Weight {
+ (10_338_000 as Weight)
+ // Standard Error: 2_000
+ .saturating_add((9_422_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(T::DbWeight::get().reads(2 as Weight))
+ .saturating_add(T::DbWeight::get().writes(2 as Weight))
+ .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:1 w:1)
+ // Storage: System Account (r:1 w:1)
+ // Storage: System AllExtrinsicsLen (r:1 w:1)
+ // Storage: System BlockWeight (r:1 w:1)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize(s: u32, ) -> Weight {
+ (37_448_000 as Weight)
+ // Standard Error: 7_000
+ .saturating_add((22_907_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(T::DbWeight::get().reads(4 as Weight))
+ .saturating_add(T::DbWeight::get().writes(4 as Weight))
+ .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
// Storage: Scheduler Agenda (r:1 w:1)
// Storage: System Account (r:1 w:1)
// Storage: System AllExtrinsicsLen (r:1 w:1)
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_resolved(s: u32, ) -> Weight {
- (36_252_000 as Weight)
- // Standard Error: 3_000
- .saturating_add((22_662_000 as Weight).saturating_mul(s as Weight))
+ (34_841_000 as Weight)
+ // Standard Error: 7_000
+ .saturating_add((22_966_000 as Weight).saturating_mul(s as Weight))
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
.saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
@@ -101,18 +166,18 @@
// Storage: Scheduler Lookup (r:1 w:1)
// Storage: Scheduler Agenda (r:1 w:1)
fn schedule_named(s: u32, ) -> Weight {
- (34_561_000 as Weight)
+ (33_845_000 as Weight)
// Standard Error: 0
- .saturating_add((161_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((168_000 as Weight).saturating_mul(s as Weight))
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
// Storage: Scheduler Lookup (r:1 w:1)
// Storage: Scheduler Agenda (r:1 w:1)
fn cancel_named(s: u32, ) -> Weight {
- (30_932_000 as Weight)
+ (31_169_000 as Weight)
// Standard Error: 1_000
- .saturating_add((1_537_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((1_565_000 as Weight).saturating_mul(s as Weight))
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
@@ -126,9 +191,9 @@
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {
- (39_822_000 as Weight)
- // Standard Error: 4_000
- .saturating_add((31_823_000 as Weight).saturating_mul(s as Weight))
+ (35_999_000 as Weight)
+ // Standard Error: 3_000
+ .saturating_add((32_234_000 as Weight).saturating_mul(s as Weight))
.saturating_add(RocksDbWeight::get().reads(4 as Weight))
.saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))
.saturating_add(RocksDbWeight::get().writes(4 as Weight))
@@ -140,12 +205,26 @@
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_named_resolved(s: u32, ) -> Weight {
- (36_019_000 as Weight)
+ (34_874_000 as Weight)
+ // Standard Error: 2_000
+ .saturating_add((23_114_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(RocksDbWeight::get().reads(4 as Weight))
+ .saturating_add(RocksDbWeight::get().writes(4 as Weight))
+ .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:2 w:2)
+ // Storage: System Account (r:1 w:1)
+ // Storage: System AllExtrinsicsLen (r:1 w:1)
+ // Storage: System BlockWeight (r:1 w:1)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_periodic(s: u32, ) -> Weight {
+ (36_469_000 as Weight)
// Standard Error: 3_000
- .saturating_add((22_660_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((32_202_000 as Weight).saturating_mul(s as Weight))
.saturating_add(RocksDbWeight::get().reads(4 as Weight))
+ .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))
.saturating_add(RocksDbWeight::get().writes(4 as Weight))
- .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ .saturating_add(RocksDbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))
}
// Storage: Scheduler Agenda (r:2 w:2)
// Storage: System Account (r:1 w:1)
@@ -153,23 +232,69 @@
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_periodic_resolved(s: u32, ) -> Weight {
- (36_613_000 as Weight)
+ (35_352_000 as Weight)
// Standard Error: 3_000
- .saturating_add((31_895_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((32_309_000 as Weight).saturating_mul(s as Weight))
.saturating_add(RocksDbWeight::get().reads(4 as Weight))
.saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))
.saturating_add(RocksDbWeight::get().writes(4 as Weight))
.saturating_add(RocksDbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))
}
+ // Storage: Scheduler Agenda (r:2 w:2)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_aborted(s: u32, ) -> Weight {
+ (11_267_000 as Weight)
+ // Standard Error: 1_000
+ .saturating_add((9_368_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(RocksDbWeight::get().reads(2 as Weight))
+ .saturating_add(RocksDbWeight::get().writes(2 as Weight))
+ .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:1 w:1)
+ // Storage: System Account (r:1 w:1)
+ // Storage: System AllExtrinsicsLen (r:1 w:1)
+ // Storage: System BlockWeight (r:1 w:1)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_named_aborted(s: u32, ) -> Weight {
+ (35_937_000 as Weight)
+ // Standard Error: 3_000
+ .saturating_add((23_037_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(RocksDbWeight::get().reads(4 as Weight))
+ .saturating_add(RocksDbWeight::get().writes(4 as Weight))
+ .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:2 w:2)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize_named(s: u32, ) -> Weight {
+ (10_338_000 as Weight)
+ // Standard Error: 2_000
+ .saturating_add((9_422_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(RocksDbWeight::get().reads(2 as Weight))
+ .saturating_add(RocksDbWeight::get().writes(2 as Weight))
+ .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
+ // Storage: Scheduler Agenda (r:1 w:1)
+ // Storage: System Account (r:1 w:1)
+ // Storage: System AllExtrinsicsLen (r:1 w:1)
+ // Storage: System BlockWeight (r:1 w:1)
+ // Storage: Scheduler Lookup (r:0 w:1)
+ fn on_initialize(s: u32, ) -> Weight {
+ (37_448_000 as Weight)
+ // Standard Error: 7_000
+ .saturating_add((22_907_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add(RocksDbWeight::get().reads(4 as Weight))
+ .saturating_add(RocksDbWeight::get().writes(4 as Weight))
+ .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
+ }
// Storage: Scheduler Agenda (r:1 w:1)
// Storage: System Account (r:1 w:1)
// Storage: System AllExtrinsicsLen (r:1 w:1)
// Storage: System BlockWeight (r:1 w:1)
// Storage: Scheduler Lookup (r:0 w:1)
fn on_initialize_resolved(s: u32, ) -> Weight {
- (36_252_000 as Weight)
- // Standard Error: 3_000
- .saturating_add((22_662_000 as Weight).saturating_mul(s as Weight))
+ (34_841_000 as Weight)
+ // Standard Error: 7_000
+ .saturating_add((22_966_000 as Weight).saturating_mul(s as Weight))
.saturating_add(RocksDbWeight::get().reads(4 as Weight))
.saturating_add(RocksDbWeight::get().writes(4 as Weight))
.saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))
@@ -177,18 +302,18 @@
// Storage: Scheduler Lookup (r:1 w:1)
// Storage: Scheduler Agenda (r:1 w:1)
fn schedule_named(s: u32, ) -> Weight {
- (34_561_000 as Weight)
+ (33_845_000 as Weight)
// Standard Error: 0
- .saturating_add((161_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((168_000 as Weight).saturating_mul(s as Weight))
.saturating_add(RocksDbWeight::get().reads(2 as Weight))
.saturating_add(RocksDbWeight::get().writes(2 as Weight))
}
// Storage: Scheduler Lookup (r:1 w:1)
// Storage: Scheduler Agenda (r:1 w:1)
fn cancel_named(s: u32, ) -> Weight {
- (30_932_000 as Weight)
+ (31_169_000 as Weight)
// Standard Error: 1_000
- .saturating_add((1_537_000 as Weight).saturating_mul(s as Weight))
+ .saturating_add((1_565_000 as Weight).saturating_mul(s as Weight))
.saturating_add(RocksDbWeight::get().reads(2 as Weight))
.saturating_add(RocksDbWeight::get().writes(2 as Weight))
}
runtime/common/Cargo.tomldiffbeforeafterboth--- a/runtime/common/Cargo.toml
+++ b/runtime/common/Cargo.toml
@@ -89,7 +89,7 @@
default-features = false
path = "../../pallets/refungible"
-[dependencies.pallet-unq-scheduler]
+[dependencies.pallet-unique-scheduler]
default-features = false
path = "../../pallets/scheduler"
runtime/common/src/runtime_apis.rsdiffbeforeafterboth--- a/runtime/common/src/runtime_apis.rs
+++ b/runtime/common/src/runtime_apis.rs
@@ -774,7 +774,7 @@
list_benchmark!(list, extra, pallet_fungible, Fungible);
list_benchmark!(list, extra, pallet_refungible, Refungible);
list_benchmark!(list, extra, pallet_nonfungible, Nonfungible);
- list_benchmark!(list, extra, pallet_unq_scheduler, Scheduler);
+ list_benchmark!(list, extra, pallet_unique_scheduler, Scheduler);
// list_benchmark!(list, extra, pallet_evm_coder_substrate, EvmCoderSubstrate);
let storage_info = AllPalletsReversedWithSystemFirst::storage_info();
@@ -818,7 +818,7 @@
add_benchmark!(params, batches, pallet_fungible, Fungible);
add_benchmark!(params, batches, pallet_refungible, Refungible);
add_benchmark!(params, batches, pallet_nonfungible, Nonfungible);
- add_benchmark!(params, batches, pallet_unq_scheduler, Scheduler);
+ add_benchmark!(params, batches, pallet_unique_scheduler, Scheduler);
// add_benchmark!(params, batches, pallet_evm_coder_substrate, EvmCoderSubstrate);
runtime/opal/Cargo.tomldiffbeforeafterboth--- a/runtime/opal/Cargo.toml
+++ b/runtime/opal/Cargo.toml
@@ -36,7 +36,7 @@
'pallet-proxy-rmrk-core/runtime-benchmarks',
'pallet-unique/runtime-benchmarks',
'pallet-inflation/runtime-benchmarks',
- 'pallet-unq-scheduler/runtime-benchmarks',
+ 'pallet-unique-scheduler/runtime-benchmarks',
'pallet-xcm/runtime-benchmarks',
'sp-runtime/runtime-benchmarks',
'xcm-builder/runtime-benchmarks',
@@ -94,7 +94,7 @@
'pallet-proxy-rmrk-core/std',
'pallet-proxy-rmrk-equip/std',
'pallet-unique/std',
- 'pallet-unq-scheduler/std',
+ 'pallet-unique-scheduler/std',
'pallet-charge-transaction/std',
'up-data-structs/std',
'sp-api/std',
@@ -413,7 +413,7 @@
pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }
pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
-pallet-unq-scheduler = { path = '../../pallets/scheduler', default-features = false }
+pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.22", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
runtime/opal/src/lib.rsdiffbeforeafterboth--- a/runtime/opal/src/lib.rs
+++ b/runtime/opal/src/lib.rs
@@ -68,7 +68,7 @@
WeightToFeePolynomial, WeightToFeeCoefficient, WeightToFeeCoefficients, ConstantMultiplier,
},
};
-use pallet_unq_scheduler::DispatchCall;
+use pallet_unique_scheduler::DispatchCall;
use up_data_structs::{
CollectionId, TokenId, TokenData, Property, PropertyKeyPermission, CollectionLimits,
CollectionStats, RpcCollection,
@@ -966,7 +966,7 @@
}
pub struct SchedulerPaymentExecutor;
-impl<T: frame_system::Config + pallet_unq_scheduler::Config, SelfContainedSignedInfo>
+impl<T: frame_system::Config + pallet_unique_scheduler::Config, SelfContainedSignedInfo>
DispatchCall<T, SelfContainedSignedInfo> for SchedulerPaymentExecutor
where
<T as frame_system::Config>::Call: Member
@@ -976,13 +976,13 @@
+ From<frame_system::Call<Runtime>>,
SelfContainedSignedInfo: Send + Sync + 'static,
Call: From<<T as frame_system::Config>::Call>
- + From<<T as pallet_unq_scheduler::Config>::Call>
+ + From<<T as pallet_unique_scheduler::Config>::Call>
+ SelfContainedCall<SignedInfo = SelfContainedSignedInfo>,
sp_runtime::AccountId32: From<<T as frame_system::Config>::AccountId>,
{
fn dispatch_call(
signer: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
) -> Result<
Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>,
TransactionValidityError,
@@ -1008,7 +1008,7 @@
fn reserve_balance(
id: [u8; 16],
sponsor: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
count: u32,
) -> Result<(), DispatchError> {
let dispatch_info = call.get_dispatch_info();
@@ -1025,7 +1025,7 @@
fn pay_for_call(
id: [u8; 16],
sponsor: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
) -> Result<u128, DispatchError> {
let dispatch_info = call.get_dispatch_info();
let weight: Balance = ChargeTransactionPayment::traditional_fee(0, &dispatch_info, 0);
@@ -1066,7 +1066,7 @@
}
}
-impl pallet_unq_scheduler::Config for Runtime {
+impl pallet_unique_scheduler::Config for Runtime {
type Event = Event;
type Origin = Origin;
type Currency = Balances;
@@ -1155,7 +1155,7 @@
// Unique Pallets
Inflation: pallet_inflation::{Pallet, Call, Storage} = 60,
Unique: pallet_unique::{Pallet, Call, Storage, Event<T>} = 61,
- Scheduler: pallet_unq_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
+ Scheduler: pallet_unique_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
// free = 63
Charging: pallet_charge_transaction::{Pallet, Call, Storage } = 64,
// ContractHelpers: pallet_contract_helpers::{Pallet, Call, Storage} = 65,
runtime/quartz/Cargo.tomldiffbeforeafterboth--- a/runtime/quartz/Cargo.toml
+++ b/runtime/quartz/Cargo.toml
@@ -36,7 +36,7 @@
'pallet-proxy-rmrk-core/runtime-benchmarks',
'pallet-unique/runtime-benchmarks',
'pallet-inflation/runtime-benchmarks',
- 'pallet-unq-scheduler/runtime-benchmarks',
+ 'pallet-unique-scheduler/runtime-benchmarks',
'pallet-xcm/runtime-benchmarks',
'sp-runtime/runtime-benchmarks',
'xcm-builder/runtime-benchmarks',
@@ -93,7 +93,7 @@
'pallet-nonfungible/std',
'pallet-proxy-rmrk-core/std',
'pallet-unique/std',
- 'pallet-unq-scheduler/std',
+ 'pallet-unique-scheduler/std',
'pallet-charge-transaction/std',
'up-data-structs/std',
'sp-api/std',
@@ -417,7 +417,7 @@
pallet-refungible = { default-features = false, path = "../../pallets/refungible" }
pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }
-pallet-unq-scheduler = { path = '../../pallets/scheduler', default-features = false }
+pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.22", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
runtime/quartz/src/lib.rsdiffbeforeafterboth--- a/runtime/quartz/src/lib.rs
+++ b/runtime/quartz/src/lib.rs
@@ -68,7 +68,7 @@
WeightToFeePolynomial, WeightToFeeCoefficient, WeightToFeeCoefficients, ConstantMultiplier,
},
};
-use pallet_unq_scheduler::DispatchCall;
+use pallet_unique_scheduler::DispatchCall;
use up_data_structs::{
CollectionId, TokenId, TokenData, Property, PropertyKeyPermission, CollectionLimits,
CollectionStats, RpcCollection,
@@ -963,7 +963,7 @@
}
pub struct SchedulerPaymentExecutor;
-impl<T: frame_system::Config + pallet_unq_scheduler::Config, SelfContainedSignedInfo>
+impl<T: frame_system::Config + pallet_unique_scheduler::Config, SelfContainedSignedInfo>
DispatchCall<T, SelfContainedSignedInfo> for SchedulerPaymentExecutor
where
<T as frame_system::Config>::Call: Member
@@ -973,13 +973,13 @@
+ From<frame_system::Call<Runtime>>,
SelfContainedSignedInfo: Send + Sync + 'static,
Call: From<<T as frame_system::Config>::Call>
- + From<<T as pallet_unq_scheduler::Config>::Call>
+ + From<<T as pallet_unique_scheduler::Config>::Call>
+ SelfContainedCall<SignedInfo = SelfContainedSignedInfo>,
sp_runtime::AccountId32: From<<T as frame_system::Config>::AccountId>,
{
fn dispatch_call(
signer: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
) -> Result<
Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>,
TransactionValidityError,
@@ -1005,7 +1005,7 @@
fn reserve_balance(
id: [u8; 16],
sponsor: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
count: u32,
) -> Result<(), DispatchError> {
let dispatch_info = call.get_dispatch_info();
@@ -1022,7 +1022,7 @@
fn pay_for_call(
id: [u8; 16],
sponsor: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
) -> Result<u128, DispatchError> {
let dispatch_info = call.get_dispatch_info();
let weight: Balance = ChargeTransactionPayment::traditional_fee(0, &dispatch_info, 0);
@@ -1063,7 +1063,7 @@
}
}
-impl pallet_unq_scheduler::Config for Runtime {
+impl pallet_unique_scheduler::Config for Runtime {
type Event = Event;
type Origin = Origin;
type Currency = Balances;
@@ -1151,7 +1151,7 @@
// Unique Pallets
Inflation: pallet_inflation::{Pallet, Call, Storage} = 60,
Unique: pallet_unique::{Pallet, Call, Storage, Event<T>} = 61,
- Scheduler: pallet_unq_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
+ Scheduler: pallet_unique_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
// free = 63
Charging: pallet_charge_transaction::{Pallet, Call, Storage } = 64,
// ContractHelpers: pallet_contract_helpers::{Pallet, Call, Storage} = 65,
runtime/unique/Cargo.tomldiffbeforeafterboth--- a/runtime/unique/Cargo.toml
+++ b/runtime/unique/Cargo.toml
@@ -36,7 +36,7 @@
'pallet-proxy-rmrk-core/runtime-benchmarks',
'pallet-unique/runtime-benchmarks',
'pallet-inflation/runtime-benchmarks',
- 'pallet-unq-scheduler/runtime-benchmarks',
+ 'pallet-unique-scheduler/runtime-benchmarks',
'pallet-xcm/runtime-benchmarks',
'sp-runtime/runtime-benchmarks',
'xcm-builder/runtime-benchmarks',
@@ -94,7 +94,7 @@
'pallet-nonfungible/std',
'pallet-proxy-rmrk-core/std',
'pallet-unique/std',
- 'pallet-unq-scheduler/std',
+ 'pallet-unique-scheduler/std',
'pallet-charge-transaction/std',
'up-data-structs/std',
'sp-api/std',
@@ -410,7 +410,7 @@
pallet-refungible = { default-features = false, path = "../../pallets/refungible" }
pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
pallet-proxy-rmrk-core = { default-features = false, path = "../../pallets/proxy-rmrk-core", package = "pallet-rmrk-core" }
-pallet-unq-scheduler = { path = '../../pallets/scheduler', default-features = false }
+pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.22", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
runtime/unique/src/lib.rsdiffbeforeafterboth--- a/runtime/unique/src/lib.rs
+++ b/runtime/unique/src/lib.rs
@@ -68,7 +68,7 @@
WeightToFeePolynomial, WeightToFeeCoefficient, WeightToFeeCoefficients, ConstantMultiplier,
},
};
-use pallet_unq_scheduler::DispatchCall;
+use pallet_unique_scheduler::DispatchCall;
use up_data_structs::{
CollectionId, TokenId, TokenData, Property, PropertyKeyPermission, CollectionLimits,
CollectionStats, RpcCollection,
@@ -962,7 +962,7 @@
}
pub struct SchedulerPaymentExecutor;
-impl<T: frame_system::Config + pallet_unq_scheduler::Config, SelfContainedSignedInfo>
+impl<T: frame_system::Config + pallet_unique_scheduler::Config, SelfContainedSignedInfo>
DispatchCall<T, SelfContainedSignedInfo> for SchedulerPaymentExecutor
where
<T as frame_system::Config>::Call: Member
@@ -972,13 +972,13 @@
+ From<frame_system::Call<Runtime>>,
SelfContainedSignedInfo: Send + Sync + 'static,
Call: From<<T as frame_system::Config>::Call>
- + From<<T as pallet_unq_scheduler::Config>::Call>
+ + From<<T as pallet_unique_scheduler::Config>::Call>
+ SelfContainedCall<SignedInfo = SelfContainedSignedInfo>,
sp_runtime::AccountId32: From<<T as frame_system::Config>::AccountId>,
{
fn dispatch_call(
signer: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
) -> Result<
Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>,
TransactionValidityError,
@@ -1004,7 +1004,7 @@
fn reserve_balance(
id: [u8; 16],
sponsor: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
count: u32,
) -> Result<(), DispatchError> {
let dispatch_info = call.get_dispatch_info();
@@ -1021,7 +1021,7 @@
fn pay_for_call(
id: [u8; 16],
sponsor: <T as frame_system::Config>::AccountId,
- call: <T as pallet_unq_scheduler::Config>::Call,
+ call: <T as pallet_unique_scheduler::Config>::Call,
) -> Result<u128, DispatchError> {
let dispatch_info = call.get_dispatch_info();
let weight: Balance = ChargeTransactionPayment::traditional_fee(0, &dispatch_info, 0);
@@ -1062,7 +1062,7 @@
}
}
-impl pallet_unq_scheduler::Config for Runtime {
+impl pallet_unique_scheduler::Config for Runtime {
type Event = Event;
type Origin = Origin;
type Currency = Balances;
@@ -1150,7 +1150,7 @@
// Unique Pallets
Inflation: pallet_inflation::{Pallet, Call, Storage} = 60,
Unique: pallet_unique::{Pallet, Call, Storage, Event<T>} = 61,
- Scheduler: pallet_unq_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
+ Scheduler: pallet_unique_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
// free = 63
Charging: pallet_charge_transaction::{Pallet, Call, Storage } = 64,
// ContractHelpers: pallet_contract_helpers::{Pallet, Call, Storage} = 65,