pallet_validator_collators/weights.rs
1// Copyright (C) Parity Technologies (UK) Ltd.
2// SPDX-License-Identifier: Apache-2.0
3
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16//! Default weights for `pallet_validator_collators`.
17//!
18//! Runtimes should use their own benchmarked weights.
19
20#![allow(unused_parens)]
21#![allow(unused_imports)]
22
23use core::marker::PhantomData;
24use frame_support::{
25 traits::Get,
26 weights::{constants::RocksDbWeight, Weight},
27};
28
29/// Weight functions needed for `pallet_validator_collators`.
30pub trait WeightInfo {
31 fn set_validators(n: u32) -> Weight;
32 fn set_max_collators() -> Weight;
33 fn on_relay_state_proof() -> Weight;
34}
35
36/// Default weights for `pallet_validator_collators`, see the module doc for their source.
37pub struct SubstrateWeight<T>(PhantomData<T>);
38impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
39 /// Storage: `ValidatorCollators::ValidatorSet` (r:1 w:1)
40 /// Proof: `ValidatorCollators::ValidatorSet` (`max_values`: Some(1), `max_size`: Some(32006),
41 /// added: 32501, mode: `MaxEncodedLen`)
42 /// Storage: `ValidatorCollators::PendingRotation` (r:0 w:1)
43 /// Proof: `ValidatorCollators::PendingRotation` (`max_values`: Some(1), `max_size`: Some(1),
44 /// added: 496, mode: `MaxEncodedLen`)
45 /// The range of component `n` is `[1, 1000]`.
46 fn set_validators(n: u32) -> Weight {
47 Weight::from_parts(21_223_720, 33_491)
48 .saturating_add(Weight::from_parts(134_848, 0).saturating_mul(n.into()))
49 .saturating_add(T::DbWeight::get().reads(1_u64))
50 .saturating_add(T::DbWeight::get().writes(2_u64))
51 }
52 /// Storage: `ValidatorCollators::ValidatorSet` (r:1 w:0)
53 /// Proof: `ValidatorCollators::ValidatorSet` (`max_values`: Some(1), `max_size`: Some(32006),
54 /// added: 32501, mode: `MaxEncodedLen`)
55 /// Storage: `ValidatorCollators::MaxCollators` (r:0 w:1)
56 /// Proof: `ValidatorCollators::MaxCollators` (`max_values`: Some(1), `max_size`: Some(4),
57 /// added: 499, mode: `MaxEncodedLen`)
58 /// Storage: `ValidatorCollators::PendingRotation` (r:0 w:1)
59 /// Proof: `ValidatorCollators::PendingRotation` (`max_values`: Some(1), `max_size`: Some(1),
60 /// added: 496, mode: `MaxEncodedLen`)
61 /// Storage: `ValidatorCollators::Collators` (r:0 w:1)
62 /// Proof: `ValidatorCollators::Collators` (`max_values`: Some(1), `max_size`: Some(32038),
63 /// added: 32533, mode: `MaxEncodedLen`)
64 fn set_max_collators() -> Weight {
65 Weight::from_parts(10_935_000, 33_491)
66 .saturating_add(T::DbWeight::get().reads(1_u64))
67 .saturating_add(T::DbWeight::get().writes(3_u64))
68 }
69 /// Storage: `ValidatorCollators::EpochRandomness` (r:1 w:1)
70 /// Proof: `ValidatorCollators::EpochRandomness` (`max_values`: Some(1), `max_size`: Some(32),
71 /// added: 527, mode: `MaxEncodedLen`)
72 fn on_relay_state_proof() -> Weight {
73 Weight::from_parts(4_748_000, 1_517)
74 .saturating_add(T::DbWeight::get().reads(1_u64))
75 .saturating_add(T::DbWeight::get().writes(1_u64))
76 }
77}
78
79// For backwards compatibility and tests.
80impl WeightInfo for () {
81 /// Storage: `ValidatorCollators::ValidatorSet` (r:1 w:1)
82 /// Proof: `ValidatorCollators::ValidatorSet` (`max_values`: Some(1), `max_size`: Some(32006),
83 /// added: 32501, mode: `MaxEncodedLen`)
84 /// Storage: `ValidatorCollators::PendingRotation` (r:0 w:1)
85 /// Proof: `ValidatorCollators::PendingRotation` (`max_values`: Some(1), `max_size`: Some(1),
86 /// added: 496, mode: `MaxEncodedLen`)
87 /// The range of component `n` is `[1, 1000]`.
88 fn set_validators(n: u32) -> Weight {
89 Weight::from_parts(21_223_720, 33_491)
90 .saturating_add(Weight::from_parts(134_848, 0).saturating_mul(n.into()))
91 .saturating_add(RocksDbWeight::get().reads(1_u64))
92 .saturating_add(RocksDbWeight::get().writes(2_u64))
93 }
94 /// Storage: `ValidatorCollators::ValidatorSet` (r:1 w:0)
95 /// Proof: `ValidatorCollators::ValidatorSet` (`max_values`: Some(1), `max_size`: Some(32006),
96 /// added: 32501, mode: `MaxEncodedLen`)
97 /// Storage: `ValidatorCollators::MaxCollators` (r:0 w:1)
98 /// Proof: `ValidatorCollators::MaxCollators` (`max_values`: Some(1), `max_size`: Some(4),
99 /// added: 499, mode: `MaxEncodedLen`)
100 /// Storage: `ValidatorCollators::PendingRotation` (r:0 w:1)
101 /// Proof: `ValidatorCollators::PendingRotation` (`max_values`: Some(1), `max_size`: Some(1),
102 /// added: 496, mode: `MaxEncodedLen`)
103 /// Storage: `ValidatorCollators::Collators` (r:0 w:1)
104 /// Proof: `ValidatorCollators::Collators` (`max_values`: Some(1), `max_size`: Some(32038),
105 /// added: 32533, mode: `MaxEncodedLen`)
106 fn set_max_collators() -> Weight {
107 Weight::from_parts(10_935_000, 33_491)
108 .saturating_add(RocksDbWeight::get().reads(1_u64))
109 .saturating_add(RocksDbWeight::get().writes(3_u64))
110 }
111 /// Storage: `ValidatorCollators::EpochRandomness` (r:1 w:1)
112 /// Proof: `ValidatorCollators::EpochRandomness` (`max_values`: Some(1), `max_size`: Some(32),
113 /// added: 527, mode: `MaxEncodedLen`)
114 fn on_relay_state_proof() -> Weight {
115 Weight::from_parts(4_748_000, 1_517)
116 .saturating_add(RocksDbWeight::get().reads(1_u64))
117 .saturating_add(RocksDbWeight::get().writes(1_u64))
118 }
119}