1
// Copyright 2025 Moonbeam foundation
2
// This file is part of Moonbeam.
3

            
4
// Moonbeam is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8

            
9
// Moonbeam is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
// GNU General Public License for more details.
13

            
14
// You should have received a copy of the GNU General Public License
15
// along with Moonbeam.  If not, see <http://www.gnu.org/licenses/>.
16

            
17

            
18
//! Autogenerated weights for `pallet_bridge_messages`
19
//!
20
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 49.0.0
21
//! DATE: 2026-03-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
22
//! WORST CASE MAP SIZE: `1000000`
23
//! HOSTNAME: `ip-10-0-0-36`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz`
24
//! WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024
25

            
26
// Executed Command:
27
// ./frame-omni-bencher
28
// v1
29
// benchmark
30
// pallet
31
// --runtime=./target/production/wbuild/moonriver-runtime/moonriver_runtime.wasm
32
// --genesis-builder=runtime
33
// --genesis-builder-preset=development
34
// --steps=50
35
// --repeat=20
36
// --pallet=pallet_bridge_messages
37
// --extrinsic=*
38
// --wasm-execution=compiled
39
// --header=./file_header.txt
40
// --template=./benchmarking/frame-weight-template.hbs
41
// --disable-log-color
42
// --output=./runtime/moonriver/src/weights
43

            
44
#![cfg_attr(rustfmt, rustfmt_skip)]
45
#![allow(unused_parens)]
46
#![allow(unused_imports)]
47

            
48
use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}};
49
use sp_std::marker::PhantomData;
50

            
51
/// Weights for `pallet_bridge_messages`.
52
pub struct WeightInfo<T>(PhantomData<T>);
53
impl<T: frame_system::Config> pallet_bridge_messages::WeightInfo for WeightInfo<T> {
54
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
55
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
56
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
57
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
58
	/// Storage: `BridgePolkadotMessages::InboundLanes` (r:1 w:1)
59
	/// Proof: `BridgePolkadotMessages::InboundLanes` (`max_values`: None, `max_size`: Some(36920), added: 39395, mode: `MaxEncodedLen`)
60
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
61
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
62
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
63
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
64
	/// Storage: `MessageQueue::BookStateFor` (r:1 w:0)
65
	/// Proof: `MessageQueue::BookStateFor` (`max_values`: None, `max_size`: Some(52), added: 2527, mode: `MaxEncodedLen`)
66
	fn receive_single_message_proof() -> Weight {
67
		// Proof Size summary in bytes:
68
		//  Measured:  `900`
69
		//  Estimated: `40385`
70
		// Minimum execution time: 52_338_000 picoseconds.
71
		Weight::from_parts(54_113_000, 40385)
72
			.saturating_add(T::DbWeight::get().reads(6_u64))
73
			.saturating_add(T::DbWeight::get().writes(1_u64))
74
	}
75
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
76
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
77
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
78
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
79
	/// Storage: `BridgePolkadotMessages::InboundLanes` (r:1 w:1)
80
	/// Proof: `BridgePolkadotMessages::InboundLanes` (`max_values`: None, `max_size`: Some(36920), added: 39395, mode: `MaxEncodedLen`)
81
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
82
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
83
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
84
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
85
	/// Storage: `MessageQueue::BookStateFor` (r:1 w:0)
86
	/// Proof: `MessageQueue::BookStateFor` (`max_values`: None, `max_size`: Some(52), added: 2527, mode: `MaxEncodedLen`)
87
	/// The range of component `n` is `[1, 4076]`.
88
	fn receive_n_messages_proof(n: u32, ) -> Weight {
89
		// Proof Size summary in bytes:
90
		//  Measured:  `900`
91
		//  Estimated: `40385`
92
		// Minimum execution time: 52_130_000 picoseconds.
93
		Weight::from_parts(53_214_000, 40385)
94
			// Standard Error: 14_258
95
			.saturating_add(Weight::from_parts(9_265_833, 0).saturating_mul(n.into()))
96
			.saturating_add(T::DbWeight::get().reads(6_u64))
97
			.saturating_add(T::DbWeight::get().writes(1_u64))
98
	}
99
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
100
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
101
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
102
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
103
	/// Storage: `BridgePolkadotMessages::InboundLanes` (r:1 w:1)
104
	/// Proof: `BridgePolkadotMessages::InboundLanes` (`max_values`: None, `max_size`: Some(36920), added: 39395, mode: `MaxEncodedLen`)
105
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
106
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
107
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
108
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
109
	/// Storage: `MessageQueue::BookStateFor` (r:1 w:0)
110
	/// Proof: `MessageQueue::BookStateFor` (`max_values`: None, `max_size`: Some(52), added: 2527, mode: `MaxEncodedLen`)
111
	fn receive_single_message_proof_with_outbound_lane_state() -> Weight {
112
		// Proof Size summary in bytes:
113
		//  Measured:  `900`
114
		//  Estimated: `40385`
115
		// Minimum execution time: 57_684_000 picoseconds.
116
		Weight::from_parts(59_974_000, 40385)
117
			.saturating_add(T::DbWeight::get().reads(6_u64))
118
			.saturating_add(T::DbWeight::get().writes(1_u64))
119
	}
120
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
121
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
122
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
123
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
124
	/// Storage: `BridgePolkadotMessages::InboundLanes` (r:1 w:1)
125
	/// Proof: `BridgePolkadotMessages::InboundLanes` (`max_values`: None, `max_size`: Some(36920), added: 39395, mode: `MaxEncodedLen`)
126
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
127
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
128
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
129
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
130
	/// Storage: `MessageQueue::BookStateFor` (r:1 w:0)
131
	/// Proof: `MessageQueue::BookStateFor` (`max_values`: None, `max_size`: Some(52), added: 2527, mode: `MaxEncodedLen`)
132
	/// The range of component `n` is `[1, 16384]`.
133
	fn receive_single_n_bytes_message_proof(n: u32, ) -> Weight {
134
		// Proof Size summary in bytes:
135
		//  Measured:  `900`
136
		//  Estimated: `40385`
137
		// Minimum execution time: 50_525_000 picoseconds.
138
		Weight::from_parts(53_483_085, 40385)
139
			// Standard Error: 16
140
			.saturating_add(Weight::from_parts(1_913, 0).saturating_mul(n.into()))
141
			.saturating_add(T::DbWeight::get().reads(6_u64))
142
			.saturating_add(T::DbWeight::get().writes(1_u64))
143
	}
144
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
145
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
146
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
147
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
148
	/// Storage: `BridgePolkadotMessages::OutboundLanes` (r:1 w:1)
149
	/// Proof: `BridgePolkadotMessages::OutboundLanes` (`max_values`: None, `max_size`: Some(73), added: 2548, mode: `MaxEncodedLen`)
150
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
151
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
152
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
153
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
154
	/// Storage: `BridgePolkadotMessages::OutboundMessages` (r:0 w:1)
155
	/// Proof: `BridgePolkadotMessages::OutboundMessages` (`max_values`: None, `max_size`: Some(65596), added: 68071, mode: `MaxEncodedLen`)
156
	fn receive_delivery_proof_for_single_message() -> Weight {
157
		// Proof Size summary in bytes:
158
		//  Measured:  `904`
159
		//  Estimated: `5370`
160
		// Minimum execution time: 46_015_000 picoseconds.
161
		Weight::from_parts(48_123_000, 5370)
162
			.saturating_add(T::DbWeight::get().reads(5_u64))
163
			.saturating_add(T::DbWeight::get().writes(2_u64))
164
	}
165
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
166
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
167
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
168
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
169
	/// Storage: `BridgePolkadotMessages::OutboundLanes` (r:1 w:1)
170
	/// Proof: `BridgePolkadotMessages::OutboundLanes` (`max_values`: None, `max_size`: Some(73), added: 2548, mode: `MaxEncodedLen`)
171
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
172
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
173
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
174
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
175
	/// Storage: `BridgePolkadotMessages::OutboundMessages` (r:0 w:2)
176
	/// Proof: `BridgePolkadotMessages::OutboundMessages` (`max_values`: None, `max_size`: Some(65596), added: 68071, mode: `MaxEncodedLen`)
177
	fn receive_delivery_proof_for_two_messages_by_single_relayer() -> Weight {
178
		// Proof Size summary in bytes:
179
		//  Measured:  `904`
180
		//  Estimated: `5370`
181
		// Minimum execution time: 48_185_000 picoseconds.
182
		Weight::from_parts(49_956_000, 5370)
183
			.saturating_add(T::DbWeight::get().reads(5_u64))
184
			.saturating_add(T::DbWeight::get().writes(3_u64))
185
	}
186
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
187
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
188
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
189
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
190
	/// Storage: `BridgePolkadotMessages::OutboundLanes` (r:1 w:1)
191
	/// Proof: `BridgePolkadotMessages::OutboundLanes` (`max_values`: None, `max_size`: Some(73), added: 2548, mode: `MaxEncodedLen`)
192
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
193
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
194
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
195
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
196
	/// Storage: `BridgePolkadotMessages::OutboundMessages` (r:0 w:2)
197
	/// Proof: `BridgePolkadotMessages::OutboundMessages` (`max_values`: None, `max_size`: Some(65596), added: 68071, mode: `MaxEncodedLen`)
198
	fn receive_delivery_proof_for_two_messages_by_two_relayers() -> Weight {
199
		// Proof Size summary in bytes:
200
		//  Measured:  `904`
201
		//  Estimated: `5370`
202
		// Minimum execution time: 48_385_000 picoseconds.
203
		Weight::from_parts(50_189_000, 5370)
204
			.saturating_add(T::DbWeight::get().reads(5_u64))
205
			.saturating_add(T::DbWeight::get().writes(3_u64))
206
	}
207
	/// Storage: `BridgePolkadotMessages::PalletOperatingMode` (r:1 w:0)
208
	/// Proof: `BridgePolkadotMessages::PalletOperatingMode` (`max_values`: Some(1), `max_size`: Some(2), added: 497, mode: `MaxEncodedLen`)
209
	/// Storage: `BridgePolkadotParachains::ImportedParaHeads` (r:1 w:0)
210
	/// Proof: `BridgePolkadotParachains::ImportedParaHeads` (`max_values`: Some(64), `max_size`: Some(196), added: 1186, mode: `MaxEncodedLen`)
211
	/// Storage: `BridgePolkadotMessages::InboundLanes` (r:1 w:1)
212
	/// Proof: `BridgePolkadotMessages::InboundLanes` (`max_values`: None, `max_size`: Some(36920), added: 39395, mode: `MaxEncodedLen`)
213
	/// Storage: `BridgeXcmOverMoonbeam::LaneToBridge` (r:1 w:0)
214
	/// Proof: `BridgeXcmOverMoonbeam::LaneToBridge` (`max_values`: None, `max_size`: Some(64), added: 2539, mode: `MaxEncodedLen`)
215
	/// Storage: `BridgeXcmOverMoonbeam::Bridges` (r:1 w:0)
216
	/// Proof: `BridgeXcmOverMoonbeam::Bridges` (`max_values`: None, `max_size`: Some(1905), added: 4380, mode: `MaxEncodedLen`)
217
	/// Storage: `MessageQueue::BookStateFor` (r:1 w:1)
218
	/// Proof: `MessageQueue::BookStateFor` (`max_values`: None, `max_size`: Some(52), added: 2527, mode: `MaxEncodedLen`)
219
	/// Storage: `MessageQueue::ServiceHead` (r:1 w:1)
220
	/// Proof: `MessageQueue::ServiceHead` (`max_values`: Some(1), `max_size`: Some(5), added: 500, mode: `MaxEncodedLen`)
221
	/// Storage: `MessageQueue::Pages` (r:0 w:1)
222
	/// Proof: `MessageQueue::Pages` (`max_values`: None, `max_size`: Some(105521), added: 107996, mode: `MaxEncodedLen`)
223
	/// The range of component `n` is `[1, 16384]`.
224
	fn receive_single_n_bytes_message_proof_with_dispatch(n: u32, ) -> Weight {
225
		// Proof Size summary in bytes:
226
		//  Measured:  `900`
227
		//  Estimated: `40385`
228
		// Minimum execution time: 61_751_000 picoseconds.
229
		Weight::from_parts(64_515_012, 40385)
230
			// Standard Error: 11
231
			.saturating_add(Weight::from_parts(3_571, 0).saturating_mul(n.into()))
232
			.saturating_add(T::DbWeight::get().reads(7_u64))
233
			.saturating_add(T::DbWeight::get().writes(4_u64))
234
	}
235
}