diff --git a/Cargo.lock b/Cargo.lock index 0cbb8d3e2b12a..cde0d44adb98f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11219,12 +11219,14 @@ dependencies = [ name = "pallet-assets" version = "29.1.0" dependencies = [ + "ethereum-standards", "frame-benchmarking", "frame-support", "frame-system", "impl-trait-for-tuples", "log", "pallet-balances", + "pallet-revive", "parity-scale-codec", "scale-info", "sp-core 28.0.0", diff --git a/cumulus/parachains/common/Cargo.toml b/cumulus/parachains/common/Cargo.toml index 1ee39bd7a2535..8f75c0de91f35 100644 --- a/cumulus/parachains/common/Cargo.toml +++ b/cumulus/parachains/common/Cargo.toml @@ -86,3 +86,17 @@ runtime-benchmarks = [ "xcm-executor/runtime-benchmarks", "xcm/runtime-benchmarks", ] + +try-runtime = [ + "frame-support/try-runtime", + "frame-system/try-runtime", + "pallet-asset-tx-payment/try-runtime", + "pallet-assets/try-runtime", + "pallet-authorship/try-runtime", + "pallet-balances/try-runtime", + "pallet-collator-selection/try-runtime", + "pallet-message-queue/try-runtime", + "pallet-xcm/try-runtime", + "parachain-info/try-runtime", + "sp-runtime/try-runtime", +] diff --git a/cumulus/parachains/runtimes/assets/asset-hub-rococo/Cargo.toml b/cumulus/parachains/runtimes/assets/asset-hub-rococo/Cargo.toml index bc84e439cea43..666c53cee373f 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-rococo/Cargo.toml +++ b/cumulus/parachains/runtimes/assets/asset-hub-rococo/Cargo.toml @@ -183,6 +183,7 @@ try-runtime = [ "pallet-xcm-bridge-hub-router/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_foreign.rs b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_foreign.rs index eaa831b810b8c..8475c3ac34da8 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_foreign.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_foreign.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `ef4134d66388`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: @@ -62,8 +62,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `139` // Estimated: `4273` - // Minimum execution time: 30_246_000 picoseconds. - Weight::from_parts(31_156_000, 0) + // Minimum execution time: 29_713_000 picoseconds. + Weight::from_parts(30_405_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) @@ -76,8 +76,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `4` // Estimated: `4273` - // Minimum execution time: 11_637_000 picoseconds. - Weight::from_parts(12_068_000, 0) + // Minimum execution time: 11_430_000 picoseconds. + Weight::from_parts(11_825_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -90,8 +90,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `324` // Estimated: `4273` - // Minimum execution time: 17_070_000 picoseconds. - Weight::from_parts(18_146_000, 0) + // Minimum execution time: 16_882_000 picoseconds. + Weight::from_parts(17_360_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -113,11 +113,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `4273 + c * (3207 ±0)` - // Minimum execution time: 16_224_000 picoseconds. - Weight::from_parts(16_754_000, 0) + // Minimum execution time: 15_990_000 picoseconds. + Weight::from_parts(16_161_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 23_871 - .saturating_add(Weight::from_parts(26_177_483, 0).saturating_mul(c.into())) + // Standard Error: 16_995 + .saturating_add(Weight::from_parts(25_624_471, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -135,11 +135,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `413 + a * (86 ±0)` // Estimated: `4273 + a * (3221 ±0)` - // Minimum execution time: 17_258_000 picoseconds. - Weight::from_parts(17_625_000, 0) + // Minimum execution time: 16_532_000 picoseconds. + Weight::from_parts(16_865_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 14_612 - .saturating_add(Weight::from_parts(16_083_771, 0).saturating_mul(a.into())) + // Standard Error: 4_823 + .saturating_add(Weight::from_parts(15_353_976, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -154,8 +154,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 13_734_000 picoseconds. - Weight::from_parts(14_417_000, 0) + // Minimum execution time: 13_451_000 picoseconds. + Weight::from_parts(14_019_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -168,8 +168,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 23_611_000 picoseconds. - Weight::from_parts(24_501_000, 0) + // Minimum execution time: 22_965_000 picoseconds. + Weight::from_parts(23_855_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -186,8 +186,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `4273` - // Minimum execution time: 49_376_000 picoseconds. - Weight::from_parts(50_141_000, 0) + // Minimum execution time: 47_536_000 picoseconds. + Weight::from_parts(49_071_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -206,8 +206,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 60_761_000 picoseconds. - Weight::from_parts(62_200_000, 0) + // Minimum execution time: 59_854_000 picoseconds. + Weight::from_parts(61_262_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -224,8 +224,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 46_370_000 picoseconds. - Weight::from_parts(47_956_000, 0) + // Minimum execution time: 45_638_000 picoseconds. + Weight::from_parts(46_477_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) @@ -244,8 +244,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 60_815_000 picoseconds. - Weight::from_parts(62_582_000, 0) + // Minimum execution time: 59_607_000 picoseconds. + Weight::from_parts(61_405_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -258,8 +258,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 16_880_000 picoseconds. - Weight::from_parts(17_827_000, 0) + // Minimum execution time: 16_524_000 picoseconds. + Weight::from_parts(17_268_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -272,8 +272,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 17_171_000 picoseconds. - Weight::from_parts(17_756_000, 0) + // Minimum execution time: 16_618_000 picoseconds. + Weight::from_parts(17_201_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -284,8 +284,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 11_878_000 picoseconds. - Weight::from_parts(12_566_000, 0) + // Minimum execution time: 11_755_000 picoseconds. + Weight::from_parts(12_366_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -296,8 +296,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 12_164_000 picoseconds. - Weight::from_parts(12_518_000, 0) + // Minimum execution time: 11_872_000 picoseconds. + Weight::from_parts(12_490_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -310,8 +310,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 14_110_000 picoseconds. - Weight::from_parts(14_657_000, 0) + // Minimum execution time: 13_752_000 picoseconds. + Weight::from_parts(14_440_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -322,8 +322,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 12_027_000 picoseconds. - Weight::from_parts(12_614_000, 0) + // Minimum execution time: 11_860_000 picoseconds. + Weight::from_parts(12_186_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -338,13 +338,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(_n: u32, _s: u32, ) -> Weight { + fn set_metadata(_n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 27_342_000 picoseconds. - Weight::from_parts(29_133_541, 0) + // Minimum execution time: 27_274_000 picoseconds. + Weight::from_parts(28_578_070, 0) .saturating_add(Weight::from_parts(0, 4273)) + // Standard Error: 776 + .saturating_add(Weight::from_parts(1_087, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -356,8 +358,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `406` // Estimated: `4273` - // Minimum execution time: 28_284_000 picoseconds. - Weight::from_parts(29_024_000, 0) + // Minimum execution time: 27_414_000 picoseconds. + Weight::from_parts(28_274_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -376,13 +378,13 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `81` // Estimated: `4273` - // Minimum execution time: 12_413_000 picoseconds. - Weight::from_parts(12_976_191, 0) + // Minimum execution time: 12_087_000 picoseconds. + Weight::from_parts(12_745_826, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 364 - .saturating_add(Weight::from_parts(2_252, 0).saturating_mul(n.into())) - // Standard Error: 364 - .saturating_add(Weight::from_parts(1_100, 0).saturating_mul(s.into())) + // Standard Error: 440 + .saturating_add(Weight::from_parts(1_010, 0).saturating_mul(n.into())) + // Standard Error: 440 + .saturating_add(Weight::from_parts(1_303, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -394,8 +396,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `406` // Estimated: `4273` - // Minimum execution time: 27_314_000 picoseconds. - Weight::from_parts(28_197_000, 0) + // Minimum execution time: 26_528_000 picoseconds. + Weight::from_parts(27_478_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -406,8 +408,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 11_156_000 picoseconds. - Weight::from_parts(11_810_000, 0) + // Minimum execution time: 10_881_000 picoseconds. + Weight::from_parts(11_268_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -420,8 +422,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 31_643_000 picoseconds. - Weight::from_parts(32_896_000, 0) + // Minimum execution time: 31_216_000 picoseconds. + Weight::from_parts(32_411_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -442,8 +444,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `526` // Estimated: `7404` - // Minimum execution time: 82_050_000 picoseconds. - Weight::from_parts(83_534_000, 0) + // Minimum execution time: 79_133_000 picoseconds. + Weight::from_parts(81_252_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(7)) @@ -456,8 +458,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `446` // Estimated: `4273` - // Minimum execution time: 34_026_000 picoseconds. - Weight::from_parts(35_141_000, 0) + // Minimum execution time: 33_529_000 picoseconds. + Weight::from_parts(34_768_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -470,8 +472,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `446` // Estimated: `4273` - // Minimum execution time: 34_552_000 picoseconds. - Weight::from_parts(35_270_000, 0) + // Minimum execution time: 33_558_000 picoseconds. + Weight::from_parts(34_197_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -482,8 +484,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 12_814_000 picoseconds. - Weight::from_parts(13_387_000, 0) + // Minimum execution time: 12_533_000 picoseconds. + Weight::from_parts(12_956_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -498,8 +500,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `345` // Estimated: `4273` - // Minimum execution time: 33_402_000 picoseconds. - Weight::from_parts(34_342_000, 0) + // Minimum execution time: 32_643_000 picoseconds. + Weight::from_parts(33_899_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) @@ -512,8 +514,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 31_253_000 picoseconds. - Weight::from_parts(32_341_000, 0) + // Minimum execution time: 31_276_000 picoseconds. + Weight::from_parts(32_155_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -532,8 +534,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `477` // Estimated: `4273` - // Minimum execution time: 44_555_000 picoseconds. - Weight::from_parts(45_738_000, 0) + // Minimum execution time: 43_426_000 picoseconds. + Weight::from_parts(45_064_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) @@ -550,8 +552,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `407` // Estimated: `4273` - // Minimum execution time: 42_140_000 picoseconds. - Weight::from_parts(43_882_000, 0) + // Minimum execution time: 41_885_000 picoseconds. + Weight::from_parts(43_300_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -564,8 +566,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 16_905_000 picoseconds. - Weight::from_parts(17_780_000, 0) + // Minimum execution time: 16_833_000 picoseconds. + Weight::from_parts(17_265_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -584,10 +586,43 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 76_194_000 picoseconds. - Weight::from_parts(77_219_000, 0) + // Minimum execution time: 72_880_000 picoseconds. + Weight::from_parts(74_426_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } + /// Storage: `ForeignAssets::Asset` (r:1 w:0) + /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `276` + // Estimated: `4273` + // Minimum execution time: 5_454_000 picoseconds. + Weight::from_parts(5_742_000, 0) + .saturating_add(Weight::from_parts(0, 4273)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `ForeignAssets::Account` (r:1 w:0) + /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `150` + // Estimated: `4197` + // Minimum execution time: 6_480_000 picoseconds. + Weight::from_parts(6_813_000, 0) + .saturating_add(Weight::from_parts(0, 4197)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `ForeignAssets::Approvals` (r:1 w:0) + /// Proof: `ForeignAssets::Approvals` (`max_values`: None, `max_size`: Some(746), added: 3221, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `245` + // Estimated: `4211` + // Minimum execution time: 8_685_000 picoseconds. + Weight::from_parts(9_177_000, 0) + .saturating_add(Weight::from_parts(0, 4211)) + .saturating_add(T::DbWeight::get().reads(1)) + } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_local.rs b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_local.rs index c720cd55abdf1..802f246c26357 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_local.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_local.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `ef4134d66388`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: @@ -60,8 +60,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `145` // Estimated: `3675` - // Minimum execution time: 27_053_000 picoseconds. - Weight::from_parts(28_062_000, 0) + // Minimum execution time: 26_482_000 picoseconds. + Weight::from_parts(27_179_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) @@ -74,8 +74,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 11_612_000 picoseconds. - Weight::from_parts(12_184_000, 0) + // Minimum execution time: 11_224_000 picoseconds. + Weight::from_parts(11_615_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -88,8 +88,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `324` // Estimated: `3675` - // Minimum execution time: 17_158_000 picoseconds. - Weight::from_parts(17_958_000, 0) + // Minimum execution time: 16_018_000 picoseconds. + Weight::from_parts(16_859_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -111,11 +111,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 15_728_000 picoseconds. - Weight::from_parts(16_165_000, 0) + // Minimum execution time: 15_347_000 picoseconds. + Weight::from_parts(15_681_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 13_616 - .saturating_add(Weight::from_parts(25_043_308, 0).saturating_mul(c.into())) + // Standard Error: 26_239 + .saturating_add(Weight::from_parts(25_531_130, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -133,11 +133,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `451 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 16_873_000 picoseconds. - Weight::from_parts(17_432_000, 0) + // Minimum execution time: 16_411_000 picoseconds. + Weight::from_parts(16_761_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 5_507 - .saturating_add(Weight::from_parts(15_610_110, 0).saturating_mul(a.into())) + // Standard Error: 12_049 + .saturating_add(Weight::from_parts(15_632_794, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -152,8 +152,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_205_000 picoseconds. - Weight::from_parts(14_082_000, 0) + // Minimum execution time: 12_979_000 picoseconds. + Weight::from_parts(13_512_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -166,8 +166,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 22_893_000 picoseconds. - Weight::from_parts(23_480_000, 0) + // Minimum execution time: 22_629_000 picoseconds. + Weight::from_parts(23_429_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -184,8 +184,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `392` // Estimated: `3675` - // Minimum execution time: 46_351_000 picoseconds. - Weight::from_parts(47_418_000, 0) + // Minimum execution time: 45_871_000 picoseconds. + Weight::from_parts(46_802_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -204,8 +204,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `392` // Estimated: `6208` - // Minimum execution time: 57_281_000 picoseconds. - Weight::from_parts(59_830_000, 0) + // Minimum execution time: 56_609_000 picoseconds. + Weight::from_parts(58_229_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -222,8 +222,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `392` // Estimated: `6208` - // Minimum execution time: 43_893_000 picoseconds. - Weight::from_parts(45_219_000, 0) + // Minimum execution time: 42_947_000 picoseconds. + Weight::from_parts(43_748_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) @@ -242,8 +242,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `392` // Estimated: `6208` - // Minimum execution time: 57_213_000 picoseconds. - Weight::from_parts(59_097_000, 0) + // Minimum execution time: 56_609_000 picoseconds. + Weight::from_parts(58_589_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -256,8 +256,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_760_000 picoseconds. - Weight::from_parts(17_477_000, 0) + // Minimum execution time: 16_199_000 picoseconds. + Weight::from_parts(16_994_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -270,8 +270,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_632_000 picoseconds. - Weight::from_parts(17_241_000, 0) + // Minimum execution time: 16_107_000 picoseconds. + Weight::from_parts(17_102_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -282,8 +282,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_003_000 picoseconds. - Weight::from_parts(12_787_000, 0) + // Minimum execution time: 11_414_000 picoseconds. + Weight::from_parts(12_053_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -294,8 +294,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_226_000 picoseconds. - Weight::from_parts(12_689_000, 0) + // Minimum execution time: 11_710_000 picoseconds. + Weight::from_parts(12_122_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -308,8 +308,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_923_000 picoseconds. - Weight::from_parts(14_426_000, 0) + // Minimum execution time: 13_447_000 picoseconds. + Weight::from_parts(13_861_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -320,8 +320,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 11_938_000 picoseconds. - Weight::from_parts(12_519_000, 0) + // Minimum execution time: 11_569_000 picoseconds. + Weight::from_parts(12_049_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -336,17 +336,13 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(_n: u32, _s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 27_465_000 picoseconds. - Weight::from_parts(28_954_819, 0) + // Minimum execution time: 26_983_000 picoseconds. + Weight::from_parts(28_703_529, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 805 - .saturating_add(Weight::from_parts(317, 0).saturating_mul(n.into())) - // Standard Error: 805 - .saturating_add(Weight::from_parts(13, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -358,8 +354,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 28_215_000 picoseconds. - Weight::from_parts(28_930_000, 0) + // Minimum execution time: 27_171_000 picoseconds. + Weight::from_parts(28_200_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -378,13 +374,13 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `119` // Estimated: `3675` - // Minimum execution time: 12_542_000 picoseconds. - Weight::from_parts(13_088_363, 0) + // Minimum execution time: 12_271_000 picoseconds. + Weight::from_parts(12_658_518, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 523 - .saturating_add(Weight::from_parts(3_687, 0).saturating_mul(n.into())) - // Standard Error: 523 - .saturating_add(Weight::from_parts(3_344, 0).saturating_mul(s.into())) + // Standard Error: 438 + .saturating_add(Weight::from_parts(3_068, 0).saturating_mul(n.into())) + // Standard Error: 438 + .saturating_add(Weight::from_parts(4_338, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -396,8 +392,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 27_879_000 picoseconds. - Weight::from_parts(28_681_000, 0) + // Minimum execution time: 26_574_000 picoseconds. + Weight::from_parts(27_538_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -408,8 +404,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 11_563_000 picoseconds. - Weight::from_parts(12_057_000, 0) + // Minimum execution time: 11_164_000 picoseconds. + Weight::from_parts(11_592_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -422,8 +418,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 31_809_000 picoseconds. - Weight::from_parts(32_724_000, 0) + // Minimum execution time: 30_723_000 picoseconds. + Weight::from_parts(32_100_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -444,8 +440,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `562` // Estimated: `6208` - // Minimum execution time: 81_974_000 picoseconds. - Weight::from_parts(83_937_000, 0) + // Minimum execution time: 79_016_000 picoseconds. + Weight::from_parts(80_828_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(7)) @@ -458,8 +454,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 33_484_000 picoseconds. - Weight::from_parts(34_485_000, 0) + // Minimum execution time: 33_078_000 picoseconds. + Weight::from_parts(34_121_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -472,8 +468,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 34_093_000 picoseconds. - Weight::from_parts(34_486_000, 0) + // Minimum execution time: 32_674_000 picoseconds. + Weight::from_parts(33_256_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -484,8 +480,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_637_000 picoseconds. - Weight::from_parts(13_075_000, 0) + // Minimum execution time: 12_075_000 picoseconds. + Weight::from_parts(12_615_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -500,8 +496,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `383` // Estimated: `3675` - // Minimum execution time: 32_983_000 picoseconds. - Weight::from_parts(33_735_000, 0) + // Minimum execution time: 31_734_000 picoseconds. + Weight::from_parts(32_991_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) @@ -514,8 +510,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 30_946_000 picoseconds. - Weight::from_parts(32_157_000, 0) + // Minimum execution time: 30_207_000 picoseconds. + Weight::from_parts(31_152_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -534,8 +530,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `513` // Estimated: `3675` - // Minimum execution time: 46_816_000 picoseconds. - Weight::from_parts(47_776_000, 0) + // Minimum execution time: 43_677_000 picoseconds. + Weight::from_parts(45_244_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) @@ -552,8 +548,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `443` // Estimated: `3675` - // Minimum execution time: 44_723_000 picoseconds. - Weight::from_parts(46_367_000, 0) + // Minimum execution time: 41_707_000 picoseconds. + Weight::from_parts(43_356_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -566,8 +562,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_930_000 picoseconds. - Weight::from_parts(17_769_000, 0) + // Minimum execution time: 16_127_000 picoseconds. + Weight::from_parts(16_872_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -586,10 +582,43 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `392` // Estimated: `6208` - // Minimum execution time: 70_437_000 picoseconds. - Weight::from_parts(72_895_000, 0) + // Minimum execution time: 69_690_000 picoseconds. + Weight::from_parts(72_135_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } + /// Storage: `Assets::Asset` (r:1 w:0) + /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `3675` + // Minimum execution time: 5_735_000 picoseconds. + Weight::from_parts(5_937_000, 0) + .saturating_add(Weight::from_parts(0, 3675)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Assets::Account` (r:1 w:0) + /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `188` + // Estimated: `3599` + // Minimum execution time: 6_622_000 picoseconds. + Weight::from_parts(6_995_000, 0) + .saturating_add(Weight::from_parts(0, 3599)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Assets::Approvals` (r:1 w:0) + /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `283` + // Estimated: `3613` + // Minimum execution time: 9_066_000 picoseconds. + Weight::from_parts(9_393_000, 0) + .saturating_add(Weight::from_parts(0, 3613)) + .saturating_add(T::DbWeight::get().reads(1)) + } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_pool.rs b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_pool.rs index e93fc5ecfa62b..f315798a40f2e 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_pool.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights/pallet_assets_pool.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `ef4134d66388`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: @@ -58,8 +58,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 11_547_000 picoseconds. - Weight::from_parts(12_096_000, 0) + // Minimum execution time: 11_176_000 picoseconds. + Weight::from_parts(11_708_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -72,8 +72,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 11_194_000 picoseconds. - Weight::from_parts(11_656_000, 0) + // Minimum execution time: 11_139_000 picoseconds. + Weight::from_parts(11_425_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -86,8 +86,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `465` // Estimated: `3675` - // Minimum execution time: 17_914_000 picoseconds. - Weight::from_parts(18_501_000, 0) + // Minimum execution time: 16_818_000 picoseconds. + Weight::from_parts(17_574_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -109,11 +109,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 15_789_000 picoseconds. - Weight::from_parts(16_084_000, 0) + // Minimum execution time: 15_399_000 picoseconds. + Weight::from_parts(15_922_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 22_937 - .saturating_add(Weight::from_parts(26_582_378, 0).saturating_mul(c.into())) + // Standard Error: 20_120 + .saturating_add(Weight::from_parts(24_799_452, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -131,11 +131,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `451 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 16_668_000 picoseconds. - Weight::from_parts(16_927_000, 0) + // Minimum execution time: 16_199_000 picoseconds. + Weight::from_parts(16_470_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 8_819 - .saturating_add(Weight::from_parts(15_849_663, 0).saturating_mul(a.into())) + // Standard Error: 4_361 + .saturating_add(Weight::from_parts(15_336_713, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -150,8 +150,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_553_000 picoseconds. - Weight::from_parts(13_986_000, 0) + // Minimum execution time: 12_959_000 picoseconds. + Weight::from_parts(13_382_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -164,8 +164,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 22_877_000 picoseconds. - Weight::from_parts(23_846_000, 0) + // Minimum execution time: 22_225_000 picoseconds. + Weight::from_parts(23_117_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -182,8 +182,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `430` // Estimated: `3675` - // Minimum execution time: 50_770_000 picoseconds. - Weight::from_parts(52_504_000, 0) + // Minimum execution time: 47_719_000 picoseconds. + Weight::from_parts(49_655_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -202,8 +202,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `430` // Estimated: `6208` - // Minimum execution time: 62_125_000 picoseconds. - Weight::from_parts(63_860_000, 0) + // Minimum execution time: 59_349_000 picoseconds. + Weight::from_parts(60_869_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -220,8 +220,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `430` // Estimated: `6208` - // Minimum execution time: 49_077_000 picoseconds. - Weight::from_parts(52_343_000, 0) + // Minimum execution time: 45_905_000 picoseconds. + Weight::from_parts(47_017_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) @@ -240,8 +240,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `430` // Estimated: `6208` - // Minimum execution time: 62_560_000 picoseconds. - Weight::from_parts(64_211_000, 0) + // Minimum execution time: 59_187_000 picoseconds. + Weight::from_parts(60_814_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -254,8 +254,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_692_000 picoseconds. - Weight::from_parts(17_363_000, 0) + // Minimum execution time: 16_306_000 picoseconds. + Weight::from_parts(16_893_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -268,8 +268,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_750_000 picoseconds. - Weight::from_parts(17_518_000, 0) + // Minimum execution time: 16_090_000 picoseconds. + Weight::from_parts(16_832_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -280,8 +280,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_021_000 picoseconds. - Weight::from_parts(12_644_000, 0) + // Minimum execution time: 11_493_000 picoseconds. + Weight::from_parts(12_065_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -292,8 +292,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_154_000 picoseconds. - Weight::from_parts(12_681_000, 0) + // Minimum execution time: 11_673_000 picoseconds. + Weight::from_parts(12_059_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -306,8 +306,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_667_000 picoseconds. - Weight::from_parts(14_265_000, 0) + // Minimum execution time: 13_512_000 picoseconds. + Weight::from_parts(13_977_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -318,8 +318,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 11_923_000 picoseconds. - Weight::from_parts(12_566_000, 0) + // Minimum execution time: 11_669_000 picoseconds. + Weight::from_parts(11_898_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -334,17 +334,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(n: u32, _s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 14_401_000 picoseconds. - Weight::from_parts(15_355_048, 0) + // Minimum execution time: 13_910_000 picoseconds. + Weight::from_parts(14_908_493, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 887 - .saturating_add(Weight::from_parts(2_676, 0).saturating_mul(n.into())) - // Standard Error: 887 - .saturating_add(Weight::from_parts(660, 0).saturating_mul(s.into())) + // Standard Error: 931 + .saturating_add(Weight::from_parts(409, 0).saturating_mul(n.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -356,8 +354,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 15_459_000 picoseconds. - Weight::from_parts(16_182_000, 0) + // Minimum execution time: 15_016_000 picoseconds. + Weight::from_parts(15_808_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -372,17 +370,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn force_set_metadata(n: u32, s: u32, ) -> Weight { + fn force_set_metadata(_n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `119` // Estimated: `3675` - // Minimum execution time: 12_615_000 picoseconds. - Weight::from_parts(13_114_212, 0) + // Minimum execution time: 12_162_000 picoseconds. + Weight::from_parts(12_966_962, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 783 - .saturating_add(Weight::from_parts(2_984, 0).saturating_mul(n.into())) - // Standard Error: 783 - .saturating_add(Weight::from_parts(4_072, 0).saturating_mul(s.into())) + // Standard Error: 397 + .saturating_add(Weight::from_parts(289, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -394,8 +390,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 15_606_000 picoseconds. - Weight::from_parts(16_153_000, 0) + // Minimum execution time: 14_885_000 picoseconds. + Weight::from_parts(15_220_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -406,8 +402,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 11_720_000 picoseconds. - Weight::from_parts(12_055_000, 0) + // Minimum execution time: 11_115_000 picoseconds. + Weight::from_parts(11_652_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -420,8 +416,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 31_960_000 picoseconds. - Weight::from_parts(32_873_000, 0) + // Minimum execution time: 30_537_000 picoseconds. + Weight::from_parts(31_792_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -442,8 +438,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `600` // Estimated: `6208` - // Minimum execution time: 81_618_000 picoseconds. - Weight::from_parts(84_984_000, 0) + // Minimum execution time: 79_178_000 picoseconds. + Weight::from_parts(83_473_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(7)) @@ -456,8 +452,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 33_414_000 picoseconds. - Weight::from_parts(34_574_000, 0) + // Minimum execution time: 33_185_000 picoseconds. + Weight::from_parts(33_940_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -470,8 +466,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 33_877_000 picoseconds. - Weight::from_parts(35_058_000, 0) + // Minimum execution time: 32_692_000 picoseconds. + Weight::from_parts(33_486_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -482,8 +478,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_567_000 picoseconds. - Weight::from_parts(13_155_000, 0) + // Minimum execution time: 12_301_000 picoseconds. + Weight::from_parts(12_727_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -496,8 +492,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 17_467_000 picoseconds. - Weight::from_parts(18_559_000, 0) + // Minimum execution time: 17_321_000 picoseconds. + Weight::from_parts(17_943_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -510,8 +506,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 17_675_000 picoseconds. - Weight::from_parts(18_543_000, 0) + // Minimum execution time: 17_306_000 picoseconds. + Weight::from_parts(17_911_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -528,8 +524,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `448` // Estimated: `3675` - // Minimum execution time: 28_339_000 picoseconds. - Weight::from_parts(29_166_000, 0) + // Minimum execution time: 27_522_000 picoseconds. + Weight::from_parts(28_593_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -546,8 +542,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `481` // Estimated: `3675` - // Minimum execution time: 31_422_000 picoseconds. - Weight::from_parts(32_992_000, 0) + // Minimum execution time: 29_602_000 picoseconds. + Weight::from_parts(30_397_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -560,8 +556,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_518_000 picoseconds. - Weight::from_parts(17_489_000, 0) + // Minimum execution time: 16_076_000 picoseconds. + Weight::from_parts(16_614_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -580,10 +576,43 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `430` // Estimated: `6208` - // Minimum execution time: 75_603_000 picoseconds. - Weight::from_parts(77_765_000, 0) + // Minimum execution time: 71_751_000 picoseconds. + Weight::from_parts(74_070_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } + /// Storage: `PoolAssets::Asset` (r:1 w:0) + /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `3675` + // Minimum execution time: 5_676_000 picoseconds. + Weight::from_parts(5_922_000, 0) + .saturating_add(Weight::from_parts(0, 3675)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `PoolAssets::Account` (r:1 w:0) + /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `188` + // Estimated: `3599` + // Minimum execution time: 6_525_000 picoseconds. + Weight::from_parts(6_982_000, 0) + .saturating_add(Weight::from_parts(0, 3599)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `PoolAssets::Approvals` (r:1 w:0) + /// Proof: `PoolAssets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `283` + // Estimated: `3613` + // Minimum execution time: 9_208_000 picoseconds. + Weight::from_parts(9_558_000, 0) + .saturating_add(Weight::from_parts(0, 3613)) + .saturating_add(T::DbWeight::get().reads(1)) + } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-westend/Cargo.toml b/cumulus/parachains/runtimes/assets/asset-hub-westend/Cargo.toml index 818942b3e83a3..9896d79ab6965 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-westend/Cargo.toml +++ b/cumulus/parachains/runtimes/assets/asset-hub-westend/Cargo.toml @@ -201,6 +201,7 @@ try-runtime = [ "pallet-xcm-bridge-hub-router/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "snowbridge-pallet-system-frontend/try-runtime", "snowbridge-runtime-common/try-runtime", diff --git a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs index 6faf0fcd74ddd..0093058ad2c37 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs @@ -61,6 +61,7 @@ use frame_system::{ EnsureRoot, EnsureSigned, EnsureSignedBy, }; use pallet_asset_conversion_tx_payment::SwapAssetAdapter; +use pallet_assets::precompiles::{InlineIdConfig, ERC20}; use pallet_nfts::{DestroyWitness, PalletFeatures}; use pallet_revive::evm::runtime::EthExtra; use pallet_xcm::EnsureXcm; @@ -1077,7 +1078,10 @@ impl pallet_revive::Config for Runtime { type DepositPerByte = DepositPerByte; type WeightPrice = pallet_transaction_payment::Pallet; type WeightInfo = pallet_revive::weights::SubstrateWeight; - type Precompiles = (); + type Precompiles = ( + ERC20, TrustBackedAssetsInstance>, + ERC20, PoolAssetsInstance>, + ); type AddressMapper = pallet_revive::AccountId32Mapper; type RuntimeMemory = ConstU32<{ 128 * 1024 * 1024 }>; type PVFMemory = ConstU32<{ 512 * 1024 * 1024 }>; diff --git a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_foreign.rs b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_foreign.rs index 0e92a7679b1aa..a507422977260 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_foreign.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_foreign.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `73b9817d6032`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: @@ -62,8 +62,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `176` // Estimated: `4273` - // Minimum execution time: 31_134_000 picoseconds. - Weight::from_parts(31_972_000, 0) + // Minimum execution time: 30_845_000 picoseconds. + Weight::from_parts(31_476_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) @@ -76,8 +76,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `4` // Estimated: `4273` - // Minimum execution time: 11_555_000 picoseconds. - Weight::from_parts(11_941_000, 0) + // Minimum execution time: 11_187_000 picoseconds. + Weight::from_parts(11_701_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -90,8 +90,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `324` // Estimated: `4273` - // Minimum execution time: 17_275_000 picoseconds. - Weight::from_parts(17_940_000, 0) + // Minimum execution time: 17_073_000 picoseconds. + Weight::from_parts(17_558_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -113,11 +113,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `4273 + c * (3207 ±0)` - // Minimum execution time: 16_257_000 picoseconds. - Weight::from_parts(16_544_000, 0) + // Minimum execution time: 15_958_000 picoseconds. + Weight::from_parts(16_230_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 44_223 - .saturating_add(Weight::from_parts(28_326_460, 0).saturating_mul(c.into())) + // Standard Error: 41_431 + .saturating_add(Weight::from_parts(28_378_939, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -135,11 +135,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `413 + a * (86 ±0)` // Estimated: `4273 + a * (3221 ±0)` - // Minimum execution time: 17_118_000 picoseconds. - Weight::from_parts(17_373_000, 0) + // Minimum execution time: 16_607_000 picoseconds. + Weight::from_parts(16_830_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 7_697 - .saturating_add(Weight::from_parts(16_674_246, 0).saturating_mul(a.into())) + // Standard Error: 8_249 + .saturating_add(Weight::from_parts(16_576_446, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -154,8 +154,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 13_784_000 picoseconds. - Weight::from_parts(14_363_000, 0) + // Minimum execution time: 13_239_000 picoseconds. + Weight::from_parts(13_810_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -168,8 +168,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 23_549_000 picoseconds. - Weight::from_parts(24_293_000, 0) + // Minimum execution time: 23_376_000 picoseconds. + Weight::from_parts(24_247_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -186,8 +186,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `4273` - // Minimum execution time: 48_465_000 picoseconds. - Weight::from_parts(49_862_000, 0) + // Minimum execution time: 48_245_000 picoseconds. + Weight::from_parts(49_442_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -206,8 +206,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 59_905_000 picoseconds. - Weight::from_parts(61_874_000, 0) + // Minimum execution time: 60_321_000 picoseconds. + Weight::from_parts(61_984_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -224,8 +224,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 45_868_000 picoseconds. - Weight::from_parts(47_239_000, 0) + // Minimum execution time: 45_691_000 picoseconds. + Weight::from_parts(46_756_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) @@ -244,8 +244,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 60_020_000 picoseconds. - Weight::from_parts(62_424_000, 0) + // Minimum execution time: 61_133_000 picoseconds. + Weight::from_parts(62_538_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -258,8 +258,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 17_255_000 picoseconds. - Weight::from_parts(18_437_000, 0) + // Minimum execution time: 16_683_000 picoseconds. + Weight::from_parts(17_324_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -272,8 +272,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 17_301_000 picoseconds. - Weight::from_parts(18_140_000, 0) + // Minimum execution time: 16_213_000 picoseconds. + Weight::from_parts(17_375_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -284,8 +284,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 12_175_000 picoseconds. - Weight::from_parts(13_035_000, 0) + // Minimum execution time: 11_888_000 picoseconds. + Weight::from_parts(12_347_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -296,8 +296,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 12_004_000 picoseconds. - Weight::from_parts(12_769_000, 0) + // Minimum execution time: 11_827_000 picoseconds. + Weight::from_parts(12_358_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -310,8 +310,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 14_008_000 picoseconds. - Weight::from_parts(14_531_000, 0) + // Minimum execution time: 13_607_000 picoseconds. + Weight::from_parts(14_130_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -322,8 +322,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 12_017_000 picoseconds. - Weight::from_parts(12_627_000, 0) + // Minimum execution time: 11_744_000 picoseconds. + Weight::from_parts(12_012_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -338,13 +338,17 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(_n: u32, _s: u32, ) -> Weight { + fn set_metadata(n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 27_801_000 picoseconds. - Weight::from_parts(29_861_465, 0) + // Minimum execution time: 27_696_000 picoseconds. + Weight::from_parts(28_935_866, 0) .saturating_add(Weight::from_parts(0, 4273)) + // Standard Error: 1_512 + .saturating_add(Weight::from_parts(1_552, 0).saturating_mul(n.into())) + // Standard Error: 1_512 + .saturating_add(Weight::from_parts(5_379, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -356,8 +360,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `406` // Estimated: `4273` - // Minimum execution time: 28_106_000 picoseconds. - Weight::from_parts(28_835_000, 0) + // Minimum execution time: 27_908_000 picoseconds. + Weight::from_parts(28_871_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -372,15 +376,17 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn force_set_metadata(n: u32, _s: u32, ) -> Weight { + fn force_set_metadata(n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `81` // Estimated: `4273` - // Minimum execution time: 12_233_000 picoseconds. - Weight::from_parts(13_163_730, 0) + // Minimum execution time: 12_021_000 picoseconds. + Weight::from_parts(12_717_451, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 469 - .saturating_add(Weight::from_parts(444, 0).saturating_mul(n.into())) + // Standard Error: 357 + .saturating_add(Weight::from_parts(1_478, 0).saturating_mul(n.into())) + // Standard Error: 357 + .saturating_add(Weight::from_parts(1_237, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -392,8 +398,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `406` // Estimated: `4273` - // Minimum execution time: 27_247_000 picoseconds. - Weight::from_parts(28_219_000, 0) + // Minimum execution time: 27_025_000 picoseconds. + Weight::from_parts(28_182_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -404,8 +410,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 11_057_000 picoseconds. - Weight::from_parts(11_811_000, 0) + // Minimum execution time: 10_973_000 picoseconds. + Weight::from_parts(11_522_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -418,8 +424,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 31_763_000 picoseconds. - Weight::from_parts(33_283_000, 0) + // Minimum execution time: 31_873_000 picoseconds. + Weight::from_parts(32_908_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -440,8 +446,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `526` // Estimated: `7404` - // Minimum execution time: 80_737_000 picoseconds. - Weight::from_parts(82_408_000, 0) + // Minimum execution time: 83_300_000 picoseconds. + Weight::from_parts(85_969_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(7)) @@ -454,8 +460,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `446` // Estimated: `4273` - // Minimum execution time: 34_241_000 picoseconds. - Weight::from_parts(34_846_000, 0) + // Minimum execution time: 33_826_000 picoseconds. + Weight::from_parts(34_740_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -468,8 +474,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `446` // Estimated: `4273` - // Minimum execution time: 33_719_000 picoseconds. - Weight::from_parts(34_770_000, 0) + // Minimum execution time: 33_361_000 picoseconds. + Weight::from_parts(34_518_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -480,8 +486,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 12_500_000 picoseconds. - Weight::from_parts(13_175_000, 0) + // Minimum execution time: 12_297_000 picoseconds. + Weight::from_parts(12_693_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -496,8 +502,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `345` // Estimated: `4273` - // Minimum execution time: 33_356_000 picoseconds. - Weight::from_parts(34_214_000, 0) + // Minimum execution time: 33_281_000 picoseconds. + Weight::from_parts(34_312_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) @@ -510,8 +516,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 31_594_000 picoseconds. - Weight::from_parts(32_665_000, 0) + // Minimum execution time: 31_275_000 picoseconds. + Weight::from_parts(32_435_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -530,8 +536,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `477` // Estimated: `4273` - // Minimum execution time: 44_372_000 picoseconds. - Weight::from_parts(45_810_000, 0) + // Minimum execution time: 43_974_000 picoseconds. + Weight::from_parts(44_843_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) @@ -548,8 +554,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `407` // Estimated: `4273` - // Minimum execution time: 42_378_000 picoseconds. - Weight::from_parts(43_628_000, 0) + // Minimum execution time: 42_604_000 picoseconds. + Weight::from_parts(43_385_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -562,8 +568,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 16_831_000 picoseconds. - Weight::from_parts(17_455_000, 0) + // Minimum execution time: 16_456_000 picoseconds. + Weight::from_parts(17_099_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -582,10 +588,43 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `356` // Estimated: `7404` - // Minimum execution time: 74_949_000 picoseconds. - Weight::from_parts(75_726_000, 0) + // Minimum execution time: 74_954_000 picoseconds. + Weight::from_parts(76_564_000, 0) .saturating_add(Weight::from_parts(0, 7404)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } + /// Storage: `ForeignAssets::Asset` (r:1 w:0) + /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `276` + // Estimated: `4273` + // Minimum execution time: 5_493_000 picoseconds. + Weight::from_parts(5_775_000, 0) + .saturating_add(Weight::from_parts(0, 4273)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `ForeignAssets::Account` (r:1 w:0) + /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `150` + // Estimated: `4197` + // Minimum execution time: 6_455_000 picoseconds. + Weight::from_parts(6_750_000, 0) + .saturating_add(Weight::from_parts(0, 4197)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `ForeignAssets::Approvals` (r:1 w:0) + /// Proof: `ForeignAssets::Approvals` (`max_values`: None, `max_size`: Some(746), added: 3221, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `245` + // Estimated: `4211` + // Minimum execution time: 8_796_000 picoseconds. + Weight::from_parts(9_236_000, 0) + .saturating_add(Weight::from_parts(0, 4211)) + .saturating_add(T::DbWeight::get().reads(1)) + } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_local.rs b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_local.rs index 9d696a41e9f69..c5c81a051c9cb 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_local.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_local.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `73b9817d6032`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: @@ -60,8 +60,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `179` // Estimated: `3675` - // Minimum execution time: 27_182_000 picoseconds. - Weight::from_parts(27_926_000, 0) + // Minimum execution time: 27_345_000 picoseconds. + Weight::from_parts(28_052_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) @@ -74,8 +74,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `76` // Estimated: `3675` - // Minimum execution time: 11_684_000 picoseconds. - Weight::from_parts(12_206_000, 0) + // Minimum execution time: 11_316_000 picoseconds. + Weight::from_parts(11_738_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -88,8 +88,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `358` // Estimated: `3675` - // Minimum execution time: 17_345_000 picoseconds. - Weight::from_parts(17_902_000, 0) + // Minimum execution time: 16_120_000 picoseconds. + Weight::from_parts(16_917_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -111,11 +111,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 16_027_000 picoseconds. - Weight::from_parts(16_400_000, 0) + // Minimum execution time: 15_510_000 picoseconds. + Weight::from_parts(16_008_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 64_931 - .saturating_add(Weight::from_parts(28_334_934, 0).saturating_mul(c.into())) + // Standard Error: 44_611 + .saturating_add(Weight::from_parts(27_430_638, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -133,11 +133,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `485 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 16_903_000 picoseconds. - Weight::from_parts(17_488_000, 0) + // Minimum execution time: 16_281_000 picoseconds. + Weight::from_parts(16_941_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 9_291 - .saturating_add(Weight::from_parts(16_474_115, 0).saturating_mul(a.into())) + // Standard Error: 12_278 + .saturating_add(Weight::from_parts(16_641_458, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -152,8 +152,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 13_563_000 picoseconds. - Weight::from_parts(14_003_000, 0) + // Minimum execution time: 13_250_000 picoseconds. + Weight::from_parts(13_714_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -166,8 +166,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 23_249_000 picoseconds. - Weight::from_parts(23_947_000, 0) + // Minimum execution time: 23_015_000 picoseconds. + Weight::from_parts(23_984_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -184,8 +184,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `426` // Estimated: `3675` - // Minimum execution time: 46_572_000 picoseconds. - Weight::from_parts(47_817_000, 0) + // Minimum execution time: 46_060_000 picoseconds. + Weight::from_parts(47_290_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -204,8 +204,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `426` // Estimated: `6208` - // Minimum execution time: 57_647_000 picoseconds. - Weight::from_parts(58_786_000, 0) + // Minimum execution time: 58_298_000 picoseconds. + Weight::from_parts(59_602_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -222,8 +222,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `426` // Estimated: `6208` - // Minimum execution time: 43_959_000 picoseconds. - Weight::from_parts(45_092_000, 0) + // Minimum execution time: 44_043_000 picoseconds. + Weight::from_parts(45_167_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) @@ -242,8 +242,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `426` // Estimated: `6208` - // Minimum execution time: 58_167_000 picoseconds. - Weight::from_parts(60_723_000, 0) + // Minimum execution time: 58_292_000 picoseconds. + Weight::from_parts(59_096_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -256,8 +256,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `422` // Estimated: `3675` - // Minimum execution time: 16_885_000 picoseconds. - Weight::from_parts(17_421_000, 0) + // Minimum execution time: 16_308_000 picoseconds. + Weight::from_parts(16_850_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -270,8 +270,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `422` // Estimated: `3675` - // Minimum execution time: 16_730_000 picoseconds. - Weight::from_parts(17_283_000, 0) + // Minimum execution time: 16_168_000 picoseconds. + Weight::from_parts(17_087_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -282,8 +282,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `348` // Estimated: `3675` - // Minimum execution time: 12_077_000 picoseconds. - Weight::from_parts(12_863_000, 0) + // Minimum execution time: 11_649_000 picoseconds. + Weight::from_parts(12_205_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -294,8 +294,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `348` // Estimated: `3675` - // Minimum execution time: 11_861_000 picoseconds. - Weight::from_parts(12_458_000, 0) + // Minimum execution time: 11_581_000 picoseconds. + Weight::from_parts(12_144_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -308,8 +308,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 13_964_000 picoseconds. - Weight::from_parts(14_476_000, 0) + // Minimum execution time: 13_659_000 picoseconds. + Weight::from_parts(14_063_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -320,8 +320,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_067_000 picoseconds. - Weight::from_parts(12_518_000, 0) + // Minimum execution time: 11_773_000 picoseconds. + Weight::from_parts(12_318_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -336,17 +336,13 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(_n: u32, _s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 27_534_000 picoseconds. - Weight::from_parts(28_553_946, 0) + // Minimum execution time: 27_666_000 picoseconds. + Weight::from_parts(29_418_576, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 1_422 - .saturating_add(Weight::from_parts(6_980, 0).saturating_mul(n.into())) - // Standard Error: 1_422 - .saturating_add(Weight::from_parts(9_116, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -358,8 +354,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `478` // Estimated: `3675` - // Minimum execution time: 28_363_000 picoseconds. - Weight::from_parts(28_871_000, 0) + // Minimum execution time: 27_696_000 picoseconds. + Weight::from_parts(28_581_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -378,13 +374,13 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `153` // Estimated: `3675` - // Minimum execution time: 12_567_000 picoseconds. - Weight::from_parts(13_159_122, 0) + // Minimum execution time: 12_322_000 picoseconds. + Weight::from_parts(12_988_255, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 547 - .saturating_add(Weight::from_parts(1_543, 0).saturating_mul(n.into())) - // Standard Error: 547 - .saturating_add(Weight::from_parts(4_320, 0).saturating_mul(s.into())) + // Standard Error: 1_012 + .saturating_add(Weight::from_parts(1_936, 0).saturating_mul(n.into())) + // Standard Error: 1_012 + .saturating_add(Weight::from_parts(2_627, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -396,8 +392,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `478` // Estimated: `3675` - // Minimum execution time: 27_693_000 picoseconds. - Weight::from_parts(28_430_000, 0) + // Minimum execution time: 27_303_000 picoseconds. + Weight::from_parts(28_116_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -408,8 +404,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 11_613_000 picoseconds. - Weight::from_parts(11_887_000, 0) + // Minimum execution time: 11_193_000 picoseconds. + Weight::from_parts(11_800_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -422,8 +418,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `348` // Estimated: `3675` - // Minimum execution time: 32_033_000 picoseconds. - Weight::from_parts(33_000_000, 0) + // Minimum execution time: 31_558_000 picoseconds. + Weight::from_parts(32_461_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -444,8 +440,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `596` // Estimated: `6208` - // Minimum execution time: 78_369_000 picoseconds. - Weight::from_parts(80_805_000, 0) + // Minimum execution time: 78_672_000 picoseconds. + Weight::from_parts(80_184_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(7)) @@ -458,8 +454,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `518` // Estimated: `3675` - // Minimum execution time: 33_623_000 picoseconds. - Weight::from_parts(34_584_000, 0) + // Minimum execution time: 33_378_000 picoseconds. + Weight::from_parts(34_054_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -472,8 +468,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `518` // Estimated: `3675` - // Minimum execution time: 33_417_000 picoseconds. - Weight::from_parts(34_959_000, 0) + // Minimum execution time: 32_932_000 picoseconds. + Weight::from_parts(33_994_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -484,8 +480,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_404_000 picoseconds. - Weight::from_parts(13_145_000, 0) + // Minimum execution time: 12_319_000 picoseconds. + Weight::from_parts(12_843_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -500,8 +496,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `417` // Estimated: `3675` - // Minimum execution time: 32_707_000 picoseconds. - Weight::from_parts(33_774_000, 0) + // Minimum execution time: 33_017_000 picoseconds. + Weight::from_parts(33_654_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) @@ -514,8 +510,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 31_407_000 picoseconds. - Weight::from_parts(31_998_000, 0) + // Minimum execution time: 31_352_000 picoseconds. + Weight::from_parts(32_145_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -534,8 +530,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `547` // Estimated: `3675` - // Minimum execution time: 43_501_000 picoseconds. - Weight::from_parts(44_981_000, 0) + // Minimum execution time: 42_926_000 picoseconds. + Weight::from_parts(44_322_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) @@ -552,8 +548,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `477` // Estimated: `3675` - // Minimum execution time: 41_981_000 picoseconds. - Weight::from_parts(45_208_000, 0) + // Minimum execution time: 41_094_000 picoseconds. + Weight::from_parts(41_955_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -566,8 +562,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `422` // Estimated: `3675` - // Minimum execution time: 17_149_000 picoseconds. - Weight::from_parts(17_863_000, 0) + // Minimum execution time: 16_295_000 picoseconds. + Weight::from_parts(16_900_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -586,10 +582,43 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `426` // Estimated: `6208` - // Minimum execution time: 71_146_000 picoseconds. - Weight::from_parts(72_446_000, 0) + // Minimum execution time: 71_441_000 picoseconds. + Weight::from_parts(72_377_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } + /// Storage: `Assets::Asset` (r:1 w:0) + /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `348` + // Estimated: `3675` + // Minimum execution time: 5_821_000 picoseconds. + Weight::from_parts(6_163_000, 0) + .saturating_add(Weight::from_parts(0, 3675)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Assets::Account` (r:1 w:0) + /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `222` + // Estimated: `3599` + // Minimum execution time: 6_840_000 picoseconds. + Weight::from_parts(7_154_000, 0) + .saturating_add(Weight::from_parts(0, 3599)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Assets::Approvals` (r:1 w:0) + /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `317` + // Estimated: `3613` + // Minimum execution time: 9_336_000 picoseconds. + Weight::from_parts(9_839_000, 0) + .saturating_add(Weight::from_parts(0, 3613)) + .saturating_add(T::DbWeight::get().reads(1)) + } } diff --git a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_pool.rs b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_pool.rs index 83b4486eb49d1..7c0d113417191 100644 --- a/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_pool.rs +++ b/cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/pallet_assets_pool.rs @@ -16,9 +16,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `73b9817d6032`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: @@ -58,8 +58,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 11_449_000 picoseconds. - Weight::from_parts(12_119_000, 0) + // Minimum execution time: 11_569_000 picoseconds. + Weight::from_parts(11_889_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -72,8 +72,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 11_268_000 picoseconds. - Weight::from_parts(11_798_000, 0) + // Minimum execution time: 11_004_000 picoseconds. + Weight::from_parts(11_358_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -86,8 +86,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `499` // Estimated: `3675` - // Minimum execution time: 18_002_000 picoseconds. - Weight::from_parts(18_512_000, 0) + // Minimum execution time: 16_849_000 picoseconds. + Weight::from_parts(17_412_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -109,11 +109,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 16_317_000 picoseconds. - Weight::from_parts(16_638_000, 0) + // Minimum execution time: 15_443_000 picoseconds. + Weight::from_parts(15_900_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 23_047 - .saturating_add(Weight::from_parts(25_902_940, 0).saturating_mul(c.into())) + // Standard Error: 42_899 + .saturating_add(Weight::from_parts(26_918_528, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -131,11 +131,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `451 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 17_037_000 picoseconds. - Weight::from_parts(17_184_000, 0) + // Minimum execution time: 15_852_000 picoseconds. + Weight::from_parts(16_324_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 4_968 - .saturating_add(Weight::from_parts(6_168_952, 0).saturating_mul(a.into())) + // Standard Error: 7_240 + .saturating_add(Weight::from_parts(6_025_177, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -150,8 +150,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_547_000 picoseconds. - Weight::from_parts(13_889_000, 0) + // Minimum execution time: 13_087_000 picoseconds. + Weight::from_parts(13_717_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -164,8 +164,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 22_935_000 picoseconds. - Weight::from_parts(23_509_000, 0) + // Minimum execution time: 22_607_000 picoseconds. + Weight::from_parts(23_394_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -182,8 +182,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `464` // Estimated: `3675` - // Minimum execution time: 47_315_000 picoseconds. - Weight::from_parts(48_784_000, 0) + // Minimum execution time: 47_055_000 picoseconds. + Weight::from_parts(48_623_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -202,8 +202,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `464` // Estimated: `6208` - // Minimum execution time: 58_538_000 picoseconds. - Weight::from_parts(60_004_000, 0) + // Minimum execution time: 59_079_000 picoseconds. + Weight::from_parts(61_112_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -220,8 +220,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `464` // Estimated: `6208` - // Minimum execution time: 45_058_000 picoseconds. - Weight::from_parts(46_367_000, 0) + // Minimum execution time: 45_022_000 picoseconds. + Weight::from_parts(45_867_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) @@ -240,8 +240,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `464` // Estimated: `6208` - // Minimum execution time: 59_358_000 picoseconds. - Weight::from_parts(60_726_000, 0) + // Minimum execution time: 58_841_000 picoseconds. + Weight::from_parts(60_287_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) @@ -254,8 +254,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_840_000 picoseconds. - Weight::from_parts(17_552_000, 0) + // Minimum execution time: 16_231_000 picoseconds. + Weight::from_parts(16_669_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -268,8 +268,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_495_000 picoseconds. - Weight::from_parts(17_055_000, 0) + // Minimum execution time: 16_306_000 picoseconds. + Weight::from_parts(16_822_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -280,8 +280,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_024_000 picoseconds. - Weight::from_parts(12_473_000, 0) + // Minimum execution time: 11_570_000 picoseconds. + Weight::from_parts(12_166_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -292,8 +292,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 11_771_000 picoseconds. - Weight::from_parts(12_583_000, 0) + // Minimum execution time: 11_566_000 picoseconds. + Weight::from_parts(11_968_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -306,8 +306,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_850_000 picoseconds. - Weight::from_parts(14_227_000, 0) + // Minimum execution time: 13_350_000 picoseconds. + Weight::from_parts(13_761_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -318,8 +318,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_098_000 picoseconds. - Weight::from_parts(12_490_000, 0) + // Minimum execution time: 11_563_000 picoseconds. + Weight::from_parts(12_002_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -334,15 +334,17 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, _s: u32, ) -> Weight { + fn set_metadata(n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 14_376_000 picoseconds. - Weight::from_parts(15_338_765, 0) + // Minimum execution time: 13_982_000 picoseconds. + Weight::from_parts(14_938_292, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 664 - .saturating_add(Weight::from_parts(1_523, 0).saturating_mul(n.into())) + // Standard Error: 793 + .saturating_add(Weight::from_parts(347, 0).saturating_mul(n.into())) + // Standard Error: 793 + .saturating_add(Weight::from_parts(303, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -354,8 +356,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 15_875_000 picoseconds. - Weight::from_parts(16_435_000, 0) + // Minimum execution time: 15_150_000 picoseconds. + Weight::from_parts(15_734_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -374,13 +376,13 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `119` // Estimated: `3675` - // Minimum execution time: 12_590_000 picoseconds. - Weight::from_parts(13_306_615, 0) + // Minimum execution time: 12_294_000 picoseconds. + Weight::from_parts(12_892_214, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 462 - .saturating_add(Weight::from_parts(320, 0).saturating_mul(n.into())) - // Standard Error: 462 - .saturating_add(Weight::from_parts(161, 0).saturating_mul(s.into())) + // Standard Error: 363 + .saturating_add(Weight::from_parts(1_449, 0).saturating_mul(n.into())) + // Standard Error: 363 + .saturating_add(Weight::from_parts(949, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -392,8 +394,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 15_355_000 picoseconds. - Weight::from_parts(16_118_000, 0) + // Minimum execution time: 14_637_000 picoseconds. + Weight::from_parts(15_381_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -404,8 +406,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 11_617_000 picoseconds. - Weight::from_parts(12_076_000, 0) + // Minimum execution time: 11_326_000 picoseconds. + Weight::from_parts(11_597_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -418,8 +420,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 18_711_000 picoseconds. - Weight::from_parts(19_255_000, 0) + // Minimum execution time: 17_983_000 picoseconds. + Weight::from_parts(18_855_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -440,8 +442,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `634` // Estimated: `6208` - // Minimum execution time: 71_616_000 picoseconds. - Weight::from_parts(73_811_000, 0) + // Minimum execution time: 69_752_000 picoseconds. + Weight::from_parts(71_877_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(7)) @@ -454,8 +456,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 21_285_000 picoseconds. - Weight::from_parts(22_104_000, 0) + // Minimum execution time: 20_653_000 picoseconds. + Weight::from_parts(21_557_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -468,8 +470,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 21_495_000 picoseconds. - Weight::from_parts(22_126_000, 0) + // Minimum execution time: 20_561_000 picoseconds. + Weight::from_parts(21_348_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -480,8 +482,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_559_000 picoseconds. - Weight::from_parts(13_047_000, 0) + // Minimum execution time: 12_113_000 picoseconds. + Weight::from_parts(12_644_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -494,8 +496,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 17_455_000 picoseconds. - Weight::from_parts(18_164_000, 0) + // Minimum execution time: 17_074_000 picoseconds. + Weight::from_parts(17_729_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -508,8 +510,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 18_076_000 picoseconds. - Weight::from_parts(18_738_000, 0) + // Minimum execution time: 17_410_000 picoseconds. + Weight::from_parts(17_968_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -526,8 +528,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `482` // Estimated: `3675` - // Minimum execution time: 28_319_000 picoseconds. - Weight::from_parts(29_121_000, 0) + // Minimum execution time: 28_130_000 picoseconds. + Weight::from_parts(28_908_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -544,8 +546,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `515` // Estimated: `3675` - // Minimum execution time: 31_937_000 picoseconds. - Weight::from_parts(32_906_000, 0) + // Minimum execution time: 29_928_000 picoseconds. + Weight::from_parts(30_744_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) @@ -558,8 +560,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_575_000 picoseconds. - Weight::from_parts(17_361_000, 0) + // Minimum execution time: 15_931_000 picoseconds. + Weight::from_parts(16_907_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -578,10 +580,43 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `464` // Estimated: `6208` - // Minimum execution time: 72_414_000 picoseconds. - Weight::from_parts(74_124_000, 0) + // Minimum execution time: 71_790_000 picoseconds. + Weight::from_parts(73_457_000, 0) .saturating_add(Weight::from_parts(0, 6208)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } + /// Storage: `PoolAssets::Asset` (r:1 w:0) + /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `3675` + // Minimum execution time: 5_673_000 picoseconds. + Weight::from_parts(6_032_000, 0) + .saturating_add(Weight::from_parts(0, 3675)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `PoolAssets::Account` (r:1 w:0) + /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `188` + // Estimated: `3599` + // Minimum execution time: 6_746_000 picoseconds. + Weight::from_parts(7_190_000, 0) + .saturating_add(Weight::from_parts(0, 3599)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `PoolAssets::Approvals` (r:1 w:0) + /// Proof: `PoolAssets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `283` + // Estimated: `3613` + // Minimum execution time: 9_311_000 picoseconds. + Weight::from_parts(9_602_000, 0) + .saturating_add(Weight::from_parts(0, 3613)) + .saturating_add(T::DbWeight::get().reads(1)) + } } diff --git a/cumulus/parachains/runtimes/assets/common/Cargo.toml b/cumulus/parachains/runtimes/assets/common/Cargo.toml index c64a9c1875b7f..69ccfca9da961 100644 --- a/cumulus/parachains/runtimes/assets/common/Cargo.toml +++ b/cumulus/parachains/runtimes/assets/common/Cargo.toml @@ -81,5 +81,6 @@ try-runtime = [ "pallet-assets/try-runtime", "pallet-revive/try-runtime", "pallet-xcm/try-runtime", + "parachains-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml index 209f39910e128..339506642b595 100644 --- a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml +++ b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml @@ -297,6 +297,7 @@ try-runtime = [ "pallet-xcm-bridge-hub/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "snowbridge-pallet-ethereum-client/try-runtime", "snowbridge-pallet-inbound-queue/try-runtime", diff --git a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/Cargo.toml b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/Cargo.toml index e513def3164c4..be4788005f136 100644 --- a/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/Cargo.toml +++ b/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/Cargo.toml @@ -310,6 +310,7 @@ try-runtime = [ "pallet-xcm-bridge-hub/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "snowbridge-pallet-ethereum-client/try-runtime", "snowbridge-pallet-inbound-queue-v2/try-runtime", diff --git a/cumulus/parachains/runtimes/collectives/collectives-westend/Cargo.toml b/cumulus/parachains/runtimes/collectives/collectives-westend/Cargo.toml index 0b03a8b16a774..23a79deb598c2 100644 --- a/cumulus/parachains/runtimes/collectives/collectives-westend/Cargo.toml +++ b/cumulus/parachains/runtimes/collectives/collectives-westend/Cargo.toml @@ -178,6 +178,7 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/coretime/coretime-rococo/Cargo.toml b/cumulus/parachains/runtimes/coretime/coretime-rococo/Cargo.toml index f6aa5cfb57ead..796e4cee03284 100644 --- a/cumulus/parachains/runtimes/coretime/coretime-rococo/Cargo.toml +++ b/cumulus/parachains/runtimes/coretime/coretime-rococo/Cargo.toml @@ -210,6 +210,7 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/coretime/coretime-westend/Cargo.toml b/cumulus/parachains/runtimes/coretime/coretime-westend/Cargo.toml index 1a5a9d67f9e61..a2f178b043495 100644 --- a/cumulus/parachains/runtimes/coretime/coretime-westend/Cargo.toml +++ b/cumulus/parachains/runtimes/coretime/coretime-westend/Cargo.toml @@ -210,6 +210,7 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/glutton/glutton-westend/Cargo.toml b/cumulus/parachains/runtimes/glutton/glutton-westend/Cargo.toml index f39f45f635cdf..5fa923c889260 100644 --- a/cumulus/parachains/runtimes/glutton/glutton-westend/Cargo.toml +++ b/cumulus/parachains/runtimes/glutton/glutton-westend/Cargo.toml @@ -135,6 +135,7 @@ try-runtime = [ "pallet-sudo/try-runtime", "pallet-timestamp/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/people/people-rococo/Cargo.toml b/cumulus/parachains/runtimes/people/people-rococo/Cargo.toml index fd707e20b32d9..fe97d06f10303 100644 --- a/cumulus/parachains/runtimes/people/people-rococo/Cargo.toml +++ b/cumulus/parachains/runtimes/people/people-rococo/Cargo.toml @@ -209,6 +209,7 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/people/people-westend/Cargo.toml b/cumulus/parachains/runtimes/people/people-westend/Cargo.toml index 26fdf7816b2f4..5a7604b5297c1 100644 --- a/cumulus/parachains/runtimes/people/people-westend/Cargo.toml +++ b/cumulus/parachains/runtimes/people/people-westend/Cargo.toml @@ -209,6 +209,7 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/parachains/runtimes/testing/penpal/Cargo.toml b/cumulus/parachains/runtimes/testing/penpal/Cargo.toml index 95a68b3864577..c37a3d9486f0f 100644 --- a/cumulus/parachains/runtimes/testing/penpal/Cargo.toml +++ b/cumulus/parachains/runtimes/testing/penpal/Cargo.toml @@ -209,6 +209,7 @@ try-runtime = [ "pallet-transaction-payment/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/polkadot-omni-node/lib/Cargo.toml b/cumulus/polkadot-omni-node/lib/Cargo.toml index fb5d006f0d187..d0e421318ae5b 100644 --- a/cumulus/polkadot-omni-node/lib/Cargo.toml +++ b/cumulus/polkadot-omni-node/lib/Cargo.toml @@ -128,6 +128,7 @@ try-runtime = [ "frame-support/try-runtime", "frame-try-runtime/try-runtime", "pallet-transaction-payment/try-runtime", + "parachains-common/try-runtime", "polkadot-cli/try-runtime", "sp-runtime/try-runtime", ] diff --git a/cumulus/polkadot-parachain/Cargo.toml b/cumulus/polkadot-parachain/Cargo.toml index ee218b1fa72d6..62e6c21b6d343 100644 --- a/cumulus/polkadot-parachain/Cargo.toml +++ b/cumulus/polkadot-parachain/Cargo.toml @@ -98,6 +98,7 @@ try-runtime = [ "coretime-rococo-runtime/try-runtime", "coretime-westend-runtime/try-runtime", "glutton-westend-runtime/try-runtime", + "parachains-common/try-runtime", "penpal-runtime/try-runtime", "people-rococo-runtime/try-runtime", "people-westend-runtime/try-runtime", diff --git a/prdoc/pr_8554.prdoc b/prdoc/pr_8554.prdoc new file mode 100644 index 0000000000000..693c22db8d24f --- /dev/null +++ b/prdoc/pr_8554.prdoc @@ -0,0 +1,62 @@ +title: pallet-assets ERC20 precompile +doc: +- audience: Runtime Dev + description: |- + Add ERC20 precompile for pallet-asset. + + Since there can be multiple instances of `pallet-assets`, the Precompile is implemented for an `AssetPrecompileConfig` that defines both the address range to match and how to extract the asset_id from the address. + + For now I have only created one `AssetIdExtractor` that pulls an u32 asset id encoded in the address. + + Follow up PR will define stateful extractor to extract the id from storage for foreign assets. + + Other solidity traits will be added in follow up PRs +crates: +- name: pallet-assets + bump: minor +- name: pallet-revive + bump: minor +- name: snowbridge-pallet-inbound-queue + bump: minor +- name: snowbridge-inbound-queue-primitives + bump: minor +- name: snowbridge-outbound-queue-primitives + bump: minor +- name: pallet-revive-mock-network + bump: minor +- name: parachains-common + bump: minor +- name: asset-hub-rococo-runtime + bump: minor +- name: asset-hub-westend-runtime + bump: minor +- name: bridge-hub-rococo-runtime + bump: minor +- name: bridge-hub-westend-runtime + bump: minor +- name: collectives-westend-runtime + bump: minor +- name: coretime-rococo-runtime + bump: minor +- name: coretime-westend-runtime + bump: minor +- name: glutton-westend-runtime + bump: minor +- name: people-rococo-runtime + bump: minor +- name: people-westend-runtime + bump: minor +- name: penpal-runtime + bump: minor +- name: polkadot-omni-node-lib + bump: minor +- name: polkadot-parachain-bin + bump: minor +- name: pallet-staking-async-parachain-runtime + bump: minor +- name: polkadot-sdk + bump: minor +- name: yet-another-parachain-runtime + bump: minor +- name: ethereum-standards + bump: minor diff --git a/substrate/bin/node/runtime/src/lib.rs b/substrate/bin/node/runtime/src/lib.rs index c7b59bf4e1144..600f28f71062d 100644 --- a/substrate/bin/node/runtime/src/lib.rs +++ b/substrate/bin/node/runtime/src/lib.rs @@ -78,6 +78,7 @@ pub use node_primitives::{AccountId, Signature}; use node_primitives::{AccountIndex, Balance, BlockNumber, Hash, Moment, Nonce}; use pallet_asset_conversion::{AccountIdConverter, Ascending, Chain, WithFirstAsset}; use pallet_asset_conversion_tx_payment::SwapAssetAdapter; +use pallet_assets::precompiles::{InlineIdConfig, ERC20}; use pallet_broker::{CoreAssignment, CoreIndex, CoretimeInterface, PartsOf57600}; use pallet_election_provider_multi_phase::{GeometricDepositBase, SolutionAccuracyOf}; use pallet_identity::legacy::IdentityInfo; @@ -1473,7 +1474,8 @@ impl pallet_revive::Config for Runtime { type DepositPerByte = DepositPerByte; type WeightPrice = pallet_transaction_payment::Pallet; type WeightInfo = pallet_revive::weights::SubstrateWeight; - type Precompiles = (); + type Precompiles = + (ERC20, Instance1>, ERC20, Instance2>); type AddressMapper = pallet_revive::AccountId32Mapper; type RuntimeMemory = ConstU32<{ 128 * 1024 * 1024 }>; type PVFMemory = ConstU32<{ 512 * 1024 * 1024 }>; diff --git a/substrate/frame/assets/Cargo.toml b/substrate/frame/assets/Cargo.toml index 8d4b8c6a93545..d893e7ad11fa1 100644 --- a/substrate/frame/assets/Cargo.toml +++ b/substrate/frame/assets/Cargo.toml @@ -17,6 +17,7 @@ targets = ["x86_64-unknown-linux-gnu"] [dependencies] codec = { workspace = true } +ethereum-standards = { workspace = true } impl-trait-for-tuples = { workspace = true } log = { workspace = true } scale-info = { features = ["derive"], workspace = true } @@ -27,6 +28,7 @@ frame-support = { workspace = true } # `system` module provides us with all sorts of useful stuff and macros depend on it being around. frame-benchmarking = { optional = true, workspace = true } frame-system = { workspace = true } +pallet-revive = { workspace = true } sp-core = { workspace = true } [dev-dependencies] @@ -42,6 +44,7 @@ std = [ "frame-system/std", "log/std", "pallet-balances/std", + "pallet-revive/std", "scale-info/std", "sp-core/std", "sp-io/std", @@ -52,11 +55,13 @@ runtime-benchmarks = [ "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", "pallet-balances/runtime-benchmarks", + "pallet-revive/runtime-benchmarks", "sp-runtime/runtime-benchmarks", ] try-runtime = [ "frame-support/try-runtime", "frame-system/try-runtime", "pallet-balances/try-runtime", + "pallet-revive/try-runtime", "sp-runtime/try-runtime", ] diff --git a/substrate/frame/assets/src/benchmarking.rs b/substrate/frame/assets/src/benchmarking.rs index 8988323c19851..1e6a286bf4bfd 100644 --- a/substrate/frame/assets/src/benchmarking.rs +++ b/substrate/frame/assets/src/benchmarking.rs @@ -564,5 +564,36 @@ benchmarks_instance_pallet! { assert_last_event::(Event::Transferred { asset_id: asset_id.into(), from: caller, to: target, amount }.into()); } + total_issuance { + use frame_support::traits::fungibles::Inspect; + let (asset_id, _, _) = create_default_minted_asset::(true, 100u32.into()); + let amount; + }: { + amount = Pallet::::total_issuance(asset_id.into()); + } verify { + assert_eq!(amount, 100u32.into()); + } + + balance { + let (asset_id, caller, _) = create_default_minted_asset::(true, 100u32.into()); + let amount; + }: { + amount = Pallet::::balance(asset_id.into(), caller); + } verify { + assert_eq!(amount, 100u32.into()); + } + + allowance { + use frame_support::traits::fungibles::approvals::Inspect; + let (asset_id, caller, _) = create_default_minted_asset::(true, 100u32.into()); + add_approvals::(caller.clone(), 1); + let delegate: T::AccountId = account("approval", 0, SEED); + let amount; + }: { + amount = Pallet::::allowance(asset_id.into(), &caller, &delegate); + } verify { + assert_eq!(amount, 100u32.into()); + } + impl_benchmark_test_suite!(Assets, crate::mock::new_test_ext(), crate::mock::Test) } diff --git a/substrate/frame/assets/src/lib.rs b/substrate/frame/assets/src/lib.rs index 79434f924b1e7..40275f0916759 100644 --- a/substrate/frame/assets/src/lib.rs +++ b/substrate/frame/assets/src/lib.rs @@ -155,6 +155,7 @@ pub mod benchmarking; pub mod migration; #[cfg(test)] pub mod mock; +pub mod precompiles; #[cfg(test)] mod tests; pub mod weights; diff --git a/substrate/frame/assets/src/mock.rs b/substrate/frame/assets/src/mock.rs index 9803f929a566f..78fb2b78e4f47 100644 --- a/substrate/frame/assets/src/mock.rs +++ b/substrate/frame/assets/src/mock.rs @@ -20,6 +20,7 @@ use super::*; use crate as pallet_assets; +use crate::precompiles::{InlineIdConfig, ERC20}; use codec::Encode; use frame_support::{ assert_ok, construct_runtime, derive_impl, parameter_types, @@ -36,6 +37,7 @@ construct_runtime!( System: frame_system, Balances: pallet_balances, Assets: pallet_assets, + Revive: pallet_revive, } ); @@ -54,6 +56,13 @@ impl pallet_balances::Config for Test { type AccountStore = System; } +#[derive_impl(pallet_revive::config_preludes::TestDefaultConfig)] +impl pallet_revive::Config for Test { + type AddressMapper = pallet_revive::TestAccountMapper; + type Currency = Balances; + type Precompiles = (ERC20>,); +} + pub struct AssetsCallbackHandle; impl AssetsCallback for AssetsCallbackHandle { fn created(_id: &AssetId, _owner: &AccountId) -> Result<(), ()> { diff --git a/substrate/frame/assets/src/precompiles.rs b/substrate/frame/assets/src/precompiles.rs new file mode 100644 index 0000000000000..6d0c08ba3eecb --- /dev/null +++ b/substrate/frame/assets/src/precompiles.rs @@ -0,0 +1,550 @@ +// This file is part of Substrate. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +use crate::{weights::WeightInfo, Call, Config, PhantomData, TransferFlags}; +use alloc::vec::Vec; +use ethereum_standards::{ + IERC20, + IERC20::{IERC20Calls, IERC20Events}, +}; +use pallet_revive::precompiles::{ + alloy::{ + self, + primitives::IntoLogData, + sol_types::{Revert, SolCall}, + }, + AddressMapper, AddressMatcher, Error, Ext, Precompile, RuntimeCosts, H160, H256, +}; + +/// Mean of extracting the asset id from the precompile address. +pub trait AssetIdExtractor { + type AssetId; + /// Extracts the asset id from the address. + fn asset_id_from_address(address: &[u8; 20]) -> Result; +} + +/// The configuration of a pallet-assets precompile. +pub trait AssetPrecompileConfig { + /// The Address matcher used by the precompile. + const MATCHER: AddressMatcher; + + /// The [`AssetIdExtractor`] used by the precompile. + type AssetIdExtractor: AssetIdExtractor; +} + +/// An `AssetIdExtractor` that stores the asset id directly inside the address. +pub struct InlineAssetIdExtractor; + +impl AssetIdExtractor for InlineAssetIdExtractor { + type AssetId = u32; + fn asset_id_from_address(addr: &[u8; 20]) -> Result { + let bytes: [u8; 4] = addr[0..4].try_into().expect("slice is 4 bytes; qed"); + let index = u32::from_be_bytes(bytes); + return Ok(index.into()); + } +} + +/// A precompile configuration that uses a prefix [`AddressMatcher`]. +pub struct InlineIdConfig; + +impl AssetPrecompileConfig for InlineIdConfig

{ + const MATCHER: AddressMatcher = AddressMatcher::Prefix(core::num::NonZero::new(P).unwrap()); + type AssetIdExtractor = InlineAssetIdExtractor; +} + +/// An ERC20 precompile. +pub struct ERC20 { + _phantom: PhantomData<(Runtime, PrecompileConfig, Instance)>, +} + +impl Precompile + for ERC20 +where + PrecompileConfig: AssetPrecompileConfig, + Runtime: crate::Config + pallet_revive::Config, + <::AssetIdExtractor as AssetIdExtractor>::AssetId: + Into<>::AssetId>, + Call: Into<::RuntimeCall>, + alloy::primitives::U256: TryInto<>::Balance>, + + // Note can't use From as it's not implemented for alloy::primitives::U256 for unsigned types + alloy::primitives::U256: TryFrom<>::Balance>, +{ + type T = Runtime; + type Interface = IERC20::IERC20Calls; + const MATCHER: AddressMatcher = PrecompileConfig::MATCHER; + const HAS_CONTRACT_INFO: bool = false; + + fn call( + address: &[u8; 20], + input: &Self::Interface, + env: &mut impl Ext, + ) -> Result, Error> { + let asset_id = PrecompileConfig::AssetIdExtractor::asset_id_from_address(address)?.into(); + + match input { + IERC20Calls::transfer(call) => Self::transfer(asset_id, call, env), + IERC20Calls::totalSupply(_) => Self::total_supply(asset_id, env), + IERC20Calls::balanceOf(call) => Self::balance_of(asset_id, call, env), + IERC20Calls::allowance(call) => Self::allowance(asset_id, call, env), + IERC20Calls::approve(call) => Self::approve(asset_id, call, env), + IERC20Calls::transferFrom(call) => Self::transfer_from(asset_id, call, env), + } + } +} + +const ERR_INVALID_CALLER: &str = "Invalid caller"; +const ERR_BALANCE_CONVERSION_FAILED: &str = "Balance conversion failed"; + +impl ERC20 +where + PrecompileConfig: AssetPrecompileConfig, + Runtime: crate::Config + pallet_revive::Config, + <::AssetIdExtractor as AssetIdExtractor>::AssetId: + Into<>::AssetId>, + Call: Into<::RuntimeCall>, + alloy::primitives::U256: TryInto<>::Balance>, + + // Note can't use From as it's not implemented for alloy::primitives::U256 for unsigned types + alloy::primitives::U256: TryFrom<>::Balance>, +{ + /// Get the caller as an `H160` address. + fn caller(env: &mut impl Ext) -> Result { + env.caller() + .account_id() + .map(::AddressMapper::to_address) + .map_err(|_| Error::Revert(Revert { reason: ERR_INVALID_CALLER.into() })) + } + + /// Convert a `U256` value to the balance type of the pallet. + fn to_balance( + value: alloy::primitives::U256, + ) -> Result<>::Balance, Error> { + value + .try_into() + .map_err(|_| Error::Revert(Revert { reason: ERR_BALANCE_CONVERSION_FAILED.into() })) + } + + /// Convert a balance to a `U256` value. + /// Note this is needed cause From is not implemented for unsigned integer types + fn to_u256( + value: >::Balance, + ) -> Result { + alloy::primitives::U256::try_from(value) + .map_err(|_| Error::Revert(Revert { reason: ERR_BALANCE_CONVERSION_FAILED.into() })) + } + + /// Deposit an event to the runtime. + fn deposit_event(env: &mut impl Ext, event: IERC20Events) -> Result<(), Error> { + let (topics, data) = event.into_log_data().split(); + let topics = topics.into_iter().map(|v| H256(v.0)).collect::>(); + env.gas_meter_mut().charge(RuntimeCosts::DepositEvent { + num_topic: topics.len() as u32, + len: topics.len() as u32, + })?; + env.deposit_event(topics, data.to_vec()); + Ok(()) + } + + /// Execute the transfer call. + fn transfer( + asset_id: >::AssetId, + call: &IERC20::transferCall, + env: &mut impl Ext, + ) -> Result, Error> { + env.charge(>::WeightInfo::transfer())?; + + let from = Self::caller(env)?; + let dest = ::AddressMapper::to_account_id( + &call.to.into_array().into(), + ); + + let f = TransferFlags { keep_alive: false, best_effort: false, burn_dust: false }; + crate::Pallet::::do_transfer( + asset_id, + &::AddressMapper::to_account_id(&from), + &dest, + Self::to_balance(call.value)?, + None, + f, + )?; + + Self::deposit_event( + env, + IERC20Events::Transfer(IERC20::Transfer { + from: from.0.into(), + to: call.to, + value: call.value, + }), + )?; + + return Ok(IERC20::transferCall::abi_encode_returns(&true)); + } + + /// Execute the total supply call. + fn total_supply( + asset_id: >::AssetId, + env: &mut impl Ext, + ) -> Result, Error> { + use frame_support::traits::fungibles::Inspect; + env.charge(>::WeightInfo::total_issuance())?; + + let value = Self::to_u256(crate::Pallet::::total_issuance(asset_id))?; + return Ok(IERC20::totalSupplyCall::abi_encode_returns(&value)); + } + + /// Execute the balance_of call. + fn balance_of( + asset_id: >::AssetId, + call: &IERC20::balanceOfCall, + env: &mut impl Ext, + ) -> Result, Error> { + env.charge(>::WeightInfo::balance())?; + let account = call.account.into_array().into(); + let account = ::AddressMapper::to_account_id(&account); + let value = Self::to_u256(crate::Pallet::::balance(asset_id, account))?; + return Ok(IERC20::balanceOfCall::abi_encode_returns(&value)); + } + + /// Execute the allowance call. + fn allowance( + asset_id: >::AssetId, + call: &IERC20::allowanceCall, + env: &mut impl Ext, + ) -> Result, Error> { + env.charge(>::WeightInfo::allowance())?; + use frame_support::traits::fungibles::approvals::Inspect; + let owner = call.owner.into_array().into(); + let owner = ::AddressMapper::to_account_id(&owner); + + let spender = call.spender.into_array().into(); + let spender = ::AddressMapper::to_account_id(&spender); + let value = Self::to_u256(crate::Pallet::::allowance( + asset_id, &owner, &spender, + ))?; + + return Ok(IERC20::balanceOfCall::abi_encode_returns(&value)); + } + + /// Execute the approve call. + fn approve( + asset_id: >::AssetId, + call: &IERC20::approveCall, + env: &mut impl Ext, + ) -> Result, Error> { + env.charge(>::WeightInfo::approve_transfer())?; + let owner = Self::caller(env)?; + let spender = call.spender.into_array().into(); + let spender = ::AddressMapper::to_account_id(&spender); + + crate::Pallet::::do_approve_transfer( + asset_id, + &::AddressMapper::to_account_id(&owner), + &spender, + Self::to_balance(call.value)?, + )?; + + Self::deposit_event( + env, + IERC20Events::Approval(IERC20::Approval { + owner: owner.0.into(), + spender: call.spender, + value: call.value, + }), + )?; + + return Ok(IERC20::approveCall::abi_encode_returns(&true)); + } + + /// Execute the transfer_from call. + fn transfer_from( + asset_id: >::AssetId, + call: &IERC20::transferFromCall, + env: &mut impl Ext, + ) -> Result, Error> { + env.charge(>::WeightInfo::transfer_approved())?; + let spender = Self::caller(env)?; + let spender = ::AddressMapper::to_account_id(&spender); + + let from = call.from.into_array().into(); + let from = ::AddressMapper::to_account_id(&from); + + let to = call.to.into_array().into(); + let to = ::AddressMapper::to_account_id(&to); + + crate::Pallet::::do_transfer_approved( + asset_id, + &from, + &spender, + &to, + Self::to_balance(call.value)?, + )?; + + Self::deposit_event( + env, + IERC20Events::Transfer(IERC20::Transfer { + from: call.from, + to: call.to, + value: call.value, + }), + )?; + + return Ok(IERC20::transferFromCall::abi_encode_returns(&true)); + } +} + +#[cfg(test)] +mod test { + use super::*; + use crate::{ + mock::{new_test_ext, Assets, Balances, RuntimeEvent, RuntimeOrigin, System, Test}, + precompiles::alloy::hex, + }; + use alloy::primitives::U256; + use frame_support::{assert_ok, traits::Currency}; + use pallet_revive::DepositLimit; + use sp_core::H160; + use sp_runtime::Weight; + + fn assert_contract_event(contract: H160, event: IERC20Events) { + let (topics, data) = event.into_log_data().split(); + let topics = topics.into_iter().map(|v| H256(v.0)).collect::>(); + System::assert_has_event(RuntimeEvent::Revive(pallet_revive::Event::ContractEmitted { + contract, + data: data.to_vec(), + topics, + })); + } + + #[test] + fn asset_id_extractor_works() { + let address: [u8; 20] = + hex::const_decode_to_array(b"0000053900000000000000000000000001200000").unwrap(); + assert!(InlineIdConfig::<0x0120>::MATCHER.matches(&address)); + assert_eq!( + as AssetPrecompileConfig>::AssetIdExtractor::asset_id_from_address( + &address + ) + .unwrap(), + 1337u32 + ); + } + + #[test] + fn precompile_transfer_works() { + new_test_ext().execute_with(|| { + let asset_id = 0u32; + let asset_addr = H160::from( + hex::const_decode_to_array(b"0000000000000000000000000000000001200000").unwrap(), + ); + + let from = 1; + let to = 2; + + Balances::make_free_balance_be(&from, 100); + Balances::make_free_balance_be(&to, 100); + + let from_addr = ::AddressMapper::to_address(&from); + let to_addr = ::AddressMapper::to_address(&to); + assert_ok!(Assets::force_create(RuntimeOrigin::root(), asset_id, from, true, 1)); + assert_ok!(Assets::mint(RuntimeOrigin::signed(from), asset_id, from, 100)); + + let data = + IERC20::transferCall { to: to_addr.0.into(), value: U256::from(10) }.abi_encode(); + + pallet_revive::Pallet::::bare_call( + RuntimeOrigin::signed(1), + H160::from(asset_addr), + 0u64, + Weight::MAX, + DepositLimit::UnsafeOnlyForDryRun, + data, + ); + + assert_contract_event( + asset_addr, + IERC20Events::Transfer(IERC20::Transfer { + from: from_addr.0.into(), + to: to_addr.0.into(), + value: U256::from(10), + }), + ); + + assert_eq!(Assets::balance(asset_id, from), 90); + assert_eq!(Assets::balance(asset_id, to), 10); + }); + } + + #[test] + fn total_supply_works() { + new_test_ext().execute_with(|| { + let asset_id = 0u32; + let asset_addr = + hex::const_decode_to_array(b"0000000000000000000000000000000001200000").unwrap(); + + Balances::make_free_balance_be(&1, 100); + assert_ok!(Assets::force_create(RuntimeOrigin::root(), asset_id, 1, true, 1)); + assert_ok!(Assets::mint(RuntimeOrigin::signed(1), asset_id, 1, 1000)); + + let data = IERC20::totalSupplyCall {}.abi_encode(); + + let data = pallet_revive::Pallet::::bare_call( + RuntimeOrigin::signed(1), + H160::from(asset_addr), + 0u64, + Weight::MAX, + DepositLimit::UnsafeOnlyForDryRun, + data, + ) + .result + .unwrap() + .data; + + let ret = IERC20::totalSupplyCall::abi_decode_returns(&data).unwrap(); + assert_eq!(ret, U256::from(1000)); + }); + } + + #[test] + fn balance_of_works() { + new_test_ext().execute_with(|| { + let asset_id = 0u32; + let asset_addr = + hex::const_decode_to_array(b"0000000000000000000000000000000001200000").unwrap(); + + Balances::make_free_balance_be(&1, 100); + assert_ok!(Assets::force_create(RuntimeOrigin::root(), asset_id, 1, true, 1)); + assert_ok!(Assets::mint(RuntimeOrigin::signed(1), asset_id, 1, 1000)); + + let account = ::AddressMapper::to_address(&1).0.into(); + let data = IERC20::balanceOfCall { account }.abi_encode(); + + let data = pallet_revive::Pallet::::bare_call( + RuntimeOrigin::signed(1), + H160::from(asset_addr), + 0u64, + Weight::MAX, + DepositLimit::UnsafeOnlyForDryRun, + data, + ) + .result + .unwrap() + .data; + + let ret = IERC20::balanceOfCall::abi_decode_returns(&data).unwrap(); + assert_eq!(ret, U256::from(1000)); + }); + } + + #[test] + fn approval_works() { + use frame_support::traits::fungibles::approvals::Inspect; + + new_test_ext().execute_with(|| { + let asset_id = 0u32; + let asset_addr = H160::from( + hex::const_decode_to_array(b"0000000000000000000000000000000001200000").unwrap(), + ); + + let owner = 1; + let spender = 2; + let other = 3; + + Balances::make_free_balance_be(&owner, 100); + Balances::make_free_balance_be(&spender, 100); + Balances::make_free_balance_be(&other, 100); + + let owner_addr = ::AddressMapper::to_address(&owner); + let spender_addr = ::AddressMapper::to_address(&spender); + let other_addr = ::AddressMapper::to_address(&other); + + assert_ok!(Assets::force_create(RuntimeOrigin::root(), asset_id, owner, true, 1)); + assert_ok!(Assets::mint(RuntimeOrigin::signed(owner), asset_id, owner, 100)); + + let data = + IERC20::approveCall { spender: spender_addr.0.into(), value: U256::from(25) } + .abi_encode(); + + pallet_revive::Pallet::::bare_call( + RuntimeOrigin::signed(owner), + H160::from(asset_addr), + 0u64, + Weight::MAX, + DepositLimit::UnsafeOnlyForDryRun, + data, + ); + + assert_contract_event( + asset_addr, + IERC20Events::Approval(IERC20::Approval { + owner: owner_addr.0.into(), + spender: spender_addr.0.into(), + value: U256::from(25), + }), + ); + + let data = IERC20::allowanceCall { + owner: owner_addr.0.into(), + spender: spender_addr.0.into(), + } + .abi_encode(); + + let data = pallet_revive::Pallet::::bare_call( + RuntimeOrigin::signed(owner), + H160::from(asset_addr), + 0u64, + Weight::MAX, + DepositLimit::UnsafeOnlyForDryRun, + data, + ) + .result + .unwrap() + .data; + + let ret = IERC20::allowanceCall::abi_decode_returns(&data).unwrap(); + assert_eq!(ret, U256::from(25)); + + let data = IERC20::transferFromCall { + from: owner_addr.0.into(), + to: other_addr.0.into(), + value: U256::from(10), + } + .abi_encode(); + + pallet_revive::Pallet::::bare_call( + RuntimeOrigin::signed(spender), + H160::from(asset_addr), + 0u64, + Weight::MAX, + DepositLimit::UnsafeOnlyForDryRun, + data, + ); + assert_eq!(Assets::balance(asset_id, owner), 90); + assert_eq!(Assets::allowance(asset_id, &owner, &spender), 15); + assert_eq!(Assets::balance(asset_id, other), 10); + + assert_contract_event( + asset_addr, + IERC20Events::Transfer(IERC20::Transfer { + from: owner_addr.0.into(), + to: other_addr.0.into(), + value: U256::from(10), + }), + ); + }); + } +} diff --git a/substrate/frame/assets/src/weights.rs b/substrate/frame/assets/src/weights.rs index 3b77821f7dadb..5ceab268e127f 100644 --- a/substrate/frame/assets/src/weights.rs +++ b/substrate/frame/assets/src/weights.rs @@ -35,9 +35,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2025-02-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `4563561839a5`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` //! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: `1024` // Executed Command: @@ -58,8 +58,7 @@ // --no-storage-info // --no-min-squares // --no-median-slopes -// --genesis-builder-policy=none -// --exclude-pallets=pallet_xcm,pallet_xcm_benchmarks::fungible,pallet_xcm_benchmarks::generic,pallet_nomination_pools,pallet_remark,pallet_transaction_storage,pallet_election_provider_multi_block,pallet_election_provider_multi_block::signed,pallet_election_provider_multi_block::unsigned,pallet_election_provider_multi_block::verifier +// --exclude-pallets=pallet_xcm,pallet_xcm_benchmarks::fungible,pallet_xcm_benchmarks::generic,pallet_nomination_pools,pallet_remark,pallet_transaction_storage #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -105,6 +104,9 @@ pub trait WeightInfo { fn refund_other() -> Weight; fn block() -> Weight; fn transfer_all() -> Weight; + fn total_issuance() -> Weight; + fn balance() -> Weight; + fn allowance() -> Weight; } /// Weights for `pallet_assets` using the Substrate node and recommended hardware. @@ -118,10 +120,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn create() -> Weight { // Proof Size summary in bytes: - // Measured: `52` + // Measured: `326` // Estimated: `3675` - // Minimum execution time: 22_322_000 picoseconds. - Weight::from_parts(22_636_000, 3675) + // Minimum execution time: 30_517_000 picoseconds. + Weight::from_parts(31_518_000, 3675) .saturating_add(T::DbWeight::get().reads(3_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -131,10 +133,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) fn force_create() -> Weight { // Proof Size summary in bytes: - // Measured: `0` + // Measured: `186` // Estimated: `3675` - // Minimum execution time: 7_493_000 picoseconds. - Weight::from_parts(7_920_000, 3675) + // Minimum execution time: 12_469_000 picoseconds. + Weight::from_parts(13_002_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -142,10 +144,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn start_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 9_650_000 picoseconds. - Weight::from_parts(10_108_000, 3675) + // Minimum execution time: 14_767_000 picoseconds. + Weight::from_parts(15_425_000, 3675) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -158,12 +160,12 @@ impl WeightInfo for SubstrateWeight { /// The range of component `c` is `[0, 1000]`. fn destroy_accounts(c: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `0 + c * (208 ±0)` + // Measured: `104 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 11_811_000 picoseconds. - Weight::from_parts(12_285_000, 3675) - // Standard Error: 8_837 - .saturating_add(Weight::from_parts(14_469_922, 0).saturating_mul(c.into())) + // Minimum execution time: 18_900_000 picoseconds. + Weight::from_parts(19_222_000, 3675) + // Standard Error: 25_984 + .saturating_add(Weight::from_parts(15_436_025, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1_u64)) @@ -177,12 +179,12 @@ impl WeightInfo for SubstrateWeight { /// The range of component `a` is `[0, 1000]`. fn destroy_approvals(a: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `469 + a * (86 ±0)` + // Measured: `555 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 14_861_000 picoseconds. - Weight::from_parts(15_009_000, 3675) - // Standard Error: 4_545 - .saturating_add(Weight::from_parts(15_566_242, 0).saturating_mul(a.into())) + // Minimum execution time: 19_685_000 picoseconds. + Weight::from_parts(20_138_000, 3675) + // Standard Error: 10_401 + .saturating_add(Weight::from_parts(15_779_729, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1_u64)) @@ -195,10 +197,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn finish_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 10_306_000 picoseconds. - Weight::from_parts(10_763_000, 3675) + // Minimum execution time: 15_652_000 picoseconds. + Weight::from_parts(16_159_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -208,10 +210,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn mint() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 19_364_000 picoseconds. - Weight::from_parts(19_954_000, 3675) + // Minimum execution time: 25_446_000 picoseconds. + Weight::from_parts(26_623_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -221,10 +223,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn burn() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 29_138_000 picoseconds. - Weight::from_parts(29_702_000, 3675) + // Minimum execution time: 33_608_000 picoseconds. + Weight::from_parts(34_662_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -236,10 +238,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 40_145_000 picoseconds. - Weight::from_parts(40_920_000, 6208) + // Minimum execution time: 46_426_000 picoseconds. + Weight::from_parts(47_772_000, 6208) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().writes(4_u64)) } @@ -251,10 +253,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_keep_alive() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 36_083_000 picoseconds. - Weight::from_parts(36_804_000, 6208) + // Minimum execution time: 42_162_000 picoseconds. + Weight::from_parts(42_964_000, 6208) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().writes(4_u64)) } @@ -266,10 +268,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn force_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 39_945_000 picoseconds. - Weight::from_parts(40_933_000, 6208) + // Minimum execution time: 46_399_000 picoseconds. + Weight::from_parts(47_580_000, 6208) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().writes(4_u64)) } @@ -279,10 +281,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn freeze() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 14_764_000 picoseconds. - Weight::from_parts(15_135_000, 3675) + // Minimum execution time: 19_369_000 picoseconds. + Weight::from_parts(19_799_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -292,10 +294,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn thaw() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 14_563_000 picoseconds. - Weight::from_parts(15_262_000, 3675) + // Minimum execution time: 19_145_000 picoseconds. + Weight::from_parts(19_873_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -303,10 +305,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn freeze_asset() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 9_511_000 picoseconds. - Weight::from_parts(9_822_000, 3675) + // Minimum execution time: 14_728_000 picoseconds. + Weight::from_parts(15_405_000, 3675) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -314,10 +316,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn thaw_asset() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 9_601_000 picoseconds. - Weight::from_parts(9_823_000, 3675) + // Minimum execution time: 14_730_000 picoseconds. + Weight::from_parts(15_284_000, 3675) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -327,10 +329,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn transfer_ownership() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 10_822_000 picoseconds. - Weight::from_parts(11_355_000, 3675) + // Minimum execution time: 16_247_000 picoseconds. + Weight::from_parts(16_890_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -338,10 +340,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn set_team() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 8_918_000 picoseconds. - Weight::from_parts(9_276_000, 3675) + // Minimum execution time: 14_206_000 picoseconds. + Weight::from_parts(14_856_000, 3675) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -351,16 +353,14 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(_n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 23_560_000 picoseconds. - Weight::from_parts(24_344_158, 3675) - // Standard Error: 532 - .saturating_add(Weight::from_parts(6_585, 0).saturating_mul(n.into())) - // Standard Error: 532 - .saturating_add(Weight::from_parts(4_755, 0).saturating_mul(s.into())) + // Minimum execution time: 30_217_000 picoseconds. + Weight::from_parts(31_869_256, 3675) + // Standard Error: 1_165 + .saturating_add(Weight::from_parts(826, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -370,10 +370,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn clear_metadata() -> Weight { // Proof Size summary in bytes: - // Measured: `386` + // Measured: `548` // Estimated: `3675` - // Minimum execution time: 25_139_000 picoseconds. - Weight::from_parts(25_763_000, 3675) + // Minimum execution time: 29_914_000 picoseconds. + Weight::from_parts(30_680_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -385,14 +385,14 @@ impl WeightInfo for SubstrateWeight { /// The range of component `s` is `[0, 50]`. fn force_set_metadata(n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `56` + // Measured: `223` // Estimated: `3675` - // Minimum execution time: 9_212_000 picoseconds. - Weight::from_parts(9_752_745, 3675) - // Standard Error: 308 - .saturating_add(Weight::from_parts(665, 0).saturating_mul(n.into())) - // Standard Error: 308 - .saturating_add(Weight::from_parts(1_680, 0).saturating_mul(s.into())) + // Minimum execution time: 13_045_000 picoseconds. + Weight::from_parts(13_680_991, 3675) + // Standard Error: 528 + .saturating_add(Weight::from_parts(3_162, 0).saturating_mul(n.into())) + // Standard Error: 528 + .saturating_add(Weight::from_parts(2_931, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -402,10 +402,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn force_clear_metadata() -> Weight { // Proof Size summary in bytes: - // Measured: `386` + // Measured: `548` // Estimated: `3675` - // Minimum execution time: 25_100_000 picoseconds. - Weight::from_parts(25_471_000, 3675) + // Minimum execution time: 29_440_000 picoseconds. + Weight::from_parts(30_302_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -413,10 +413,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn force_asset_status() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 8_834_000 picoseconds. - Weight::from_parts(9_282_000, 3675) + // Minimum execution time: 14_175_000 picoseconds. + Weight::from_parts(14_802_000, 3675) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -426,10 +426,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn approve_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 29_392_000 picoseconds. - Weight::from_parts(30_210_000, 3675) + // Minimum execution time: 34_027_000 picoseconds. + Weight::from_parts(34_976_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -443,10 +443,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_approved() -> Weight { // Proof Size summary in bytes: - // Measured: `500` + // Measured: `701` // Estimated: `6208` - // Minimum execution time: 59_493_000 picoseconds. - Weight::from_parts(60_467_000, 6208) + // Minimum execution time: 66_073_000 picoseconds. + Weight::from_parts(69_478_000, 6208) .saturating_add(T::DbWeight::get().reads(5_u64)) .saturating_add(T::DbWeight::get().writes(5_u64)) } @@ -456,10 +456,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn cancel_approval() -> Weight { // Proof Size summary in bytes: - // Measured: `425` + // Measured: `588` // Estimated: `3675` - // Minimum execution time: 30_429_000 picoseconds. - Weight::from_parts(31_332_000, 3675) + // Minimum execution time: 35_452_000 picoseconds. + Weight::from_parts(36_883_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -469,10 +469,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn force_cancel_approval() -> Weight { // Proof Size summary in bytes: - // Measured: `425` + // Measured: `588` // Estimated: `3675` - // Minimum execution time: 30_628_000 picoseconds. - Weight::from_parts(31_361_000, 3675) + // Minimum execution time: 35_154_000 picoseconds. + Weight::from_parts(36_578_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -480,10 +480,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn set_min_balance() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 9_657_000 picoseconds. - Weight::from_parts(9_994_000, 3675) + // Minimum execution time: 14_904_000 picoseconds. + Weight::from_parts(15_505_000, 3675) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -495,10 +495,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn touch() -> Weight { // Proof Size summary in bytes: - // Measured: `269` + // Measured: `486` // Estimated: `3675` - // Minimum execution time: 27_740_000 picoseconds. - Weight::from_parts(28_250_000, 3675) + // Minimum execution time: 35_434_000 picoseconds. + Weight::from_parts(36_636_000, 3675) .saturating_add(T::DbWeight::get().reads(3_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } @@ -508,10 +508,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn touch_other() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 26_874_000 picoseconds. - Weight::from_parts(27_348_000, 3675) + // Minimum execution time: 33_361_000 picoseconds. + Weight::from_parts(34_522_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -523,10 +523,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn refund() -> Weight { // Proof Size summary in bytes: - // Measured: `400` + // Measured: `612` // Estimated: `3675` - // Minimum execution time: 28_474_000 picoseconds. - Weight::from_parts(29_396_000, 3675) + // Minimum execution time: 33_977_000 picoseconds. + Weight::from_parts(34_979_000, 3675) .saturating_add(T::DbWeight::get().reads(3_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } @@ -536,10 +536,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn refund_other() -> Weight { // Proof Size summary in bytes: - // Measured: `381` + // Measured: `543` // Estimated: `3675` - // Minimum execution time: 27_646_000 picoseconds. - Weight::from_parts(28_249_000, 3675) + // Minimum execution time: 31_928_000 picoseconds. + Weight::from_parts(33_214_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } @@ -549,10 +549,10 @@ impl WeightInfo for SubstrateWeight { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn block() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 14_437_000 picoseconds. - Weight::from_parts(15_127_000, 3675) + // Minimum execution time: 19_186_000 picoseconds. + Weight::from_parts(20_104_000, 3675) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } @@ -564,13 +564,43 @@ impl WeightInfo for SubstrateWeight { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_all() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 49_370_000 picoseconds. - Weight::from_parts(50_734_000, 6208) + // Minimum execution time: 55_413_000 picoseconds. + Weight::from_parts(56_798_000, 6208) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().writes(4_u64)) } + /// Storage: `Assets::Asset` (r:1 w:0) + /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `418` + // Estimated: `3675` + // Minimum execution time: 8_792_000 picoseconds. + Weight::from_parts(9_095_000, 3675) + .saturating_add(T::DbWeight::get().reads(1_u64)) + } + /// Storage: `Assets::Account` (r:1 w:0) + /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `255` + // Estimated: `3599` + // Minimum execution time: 8_924_000 picoseconds. + Weight::from_parts(9_407_000, 3599) + .saturating_add(T::DbWeight::get().reads(1_u64)) + } + /// Storage: `Assets::Approvals` (r:1 w:0) + /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `350` + // Estimated: `3613` + // Minimum execution time: 11_348_000 picoseconds. + Weight::from_parts(11_882_000, 3613) + .saturating_add(T::DbWeight::get().reads(1_u64)) + } } // For backwards compatibility and tests. @@ -583,10 +613,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn create() -> Weight { // Proof Size summary in bytes: - // Measured: `52` + // Measured: `326` // Estimated: `3675` - // Minimum execution time: 22_322_000 picoseconds. - Weight::from_parts(22_636_000, 3675) + // Minimum execution time: 30_517_000 picoseconds. + Weight::from_parts(31_518_000, 3675) .saturating_add(RocksDbWeight::get().reads(3_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -596,10 +626,10 @@ impl WeightInfo for () { /// Proof: `Assets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) fn force_create() -> Weight { // Proof Size summary in bytes: - // Measured: `0` + // Measured: `186` // Estimated: `3675` - // Minimum execution time: 7_493_000 picoseconds. - Weight::from_parts(7_920_000, 3675) + // Minimum execution time: 12_469_000 picoseconds. + Weight::from_parts(13_002_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -607,10 +637,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn start_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 9_650_000 picoseconds. - Weight::from_parts(10_108_000, 3675) + // Minimum execution time: 14_767_000 picoseconds. + Weight::from_parts(15_425_000, 3675) .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -623,12 +653,12 @@ impl WeightInfo for () { /// The range of component `c` is `[0, 1000]`. fn destroy_accounts(c: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `0 + c * (208 ±0)` + // Measured: `104 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 11_811_000 picoseconds. - Weight::from_parts(12_285_000, 3675) - // Standard Error: 8_837 - .saturating_add(Weight::from_parts(14_469_922, 0).saturating_mul(c.into())) + // Minimum execution time: 18_900_000 picoseconds. + Weight::from_parts(19_222_000, 3675) + // Standard Error: 25_984 + .saturating_add(Weight::from_parts(15_436_025, 0).saturating_mul(c.into())) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(c.into()))) .saturating_add(RocksDbWeight::get().writes(1_u64)) @@ -642,12 +672,12 @@ impl WeightInfo for () { /// The range of component `a` is `[0, 1000]`. fn destroy_approvals(a: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `469 + a * (86 ±0)` + // Measured: `555 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 14_861_000 picoseconds. - Weight::from_parts(15_009_000, 3675) - // Standard Error: 4_545 - .saturating_add(Weight::from_parts(15_566_242, 0).saturating_mul(a.into())) + // Minimum execution time: 19_685_000 picoseconds. + Weight::from_parts(20_138_000, 3675) + // Standard Error: 10_401 + .saturating_add(Weight::from_parts(15_779_729, 0).saturating_mul(a.into())) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(RocksDbWeight::get().writes(1_u64)) @@ -660,10 +690,10 @@ impl WeightInfo for () { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn finish_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 10_306_000 picoseconds. - Weight::from_parts(10_763_000, 3675) + // Minimum execution time: 15_652_000 picoseconds. + Weight::from_parts(16_159_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -673,10 +703,10 @@ impl WeightInfo for () { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn mint() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 19_364_000 picoseconds. - Weight::from_parts(19_954_000, 3675) + // Minimum execution time: 25_446_000 picoseconds. + Weight::from_parts(26_623_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -686,10 +716,10 @@ impl WeightInfo for () { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn burn() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 29_138_000 picoseconds. - Weight::from_parts(29_702_000, 3675) + // Minimum execution time: 33_608_000 picoseconds. + Weight::from_parts(34_662_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -701,10 +731,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 40_145_000 picoseconds. - Weight::from_parts(40_920_000, 6208) + // Minimum execution time: 46_426_000 picoseconds. + Weight::from_parts(47_772_000, 6208) .saturating_add(RocksDbWeight::get().reads(4_u64)) .saturating_add(RocksDbWeight::get().writes(4_u64)) } @@ -716,10 +746,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_keep_alive() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 36_083_000 picoseconds. - Weight::from_parts(36_804_000, 6208) + // Minimum execution time: 42_162_000 picoseconds. + Weight::from_parts(42_964_000, 6208) .saturating_add(RocksDbWeight::get().reads(4_u64)) .saturating_add(RocksDbWeight::get().writes(4_u64)) } @@ -731,10 +761,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn force_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 39_945_000 picoseconds. - Weight::from_parts(40_933_000, 6208) + // Minimum execution time: 46_399_000 picoseconds. + Weight::from_parts(47_580_000, 6208) .saturating_add(RocksDbWeight::get().reads(4_u64)) .saturating_add(RocksDbWeight::get().writes(4_u64)) } @@ -744,10 +774,10 @@ impl WeightInfo for () { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn freeze() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 14_764_000 picoseconds. - Weight::from_parts(15_135_000, 3675) + // Minimum execution time: 19_369_000 picoseconds. + Weight::from_parts(19_799_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -757,10 +787,10 @@ impl WeightInfo for () { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn thaw() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 14_563_000 picoseconds. - Weight::from_parts(15_262_000, 3675) + // Minimum execution time: 19_145_000 picoseconds. + Weight::from_parts(19_873_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -768,10 +798,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn freeze_asset() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 9_511_000 picoseconds. - Weight::from_parts(9_822_000, 3675) + // Minimum execution time: 14_728_000 picoseconds. + Weight::from_parts(15_405_000, 3675) .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -779,10 +809,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn thaw_asset() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 9_601_000 picoseconds. - Weight::from_parts(9_823_000, 3675) + // Minimum execution time: 14_730_000 picoseconds. + Weight::from_parts(15_284_000, 3675) .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -792,10 +822,10 @@ impl WeightInfo for () { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn transfer_ownership() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 10_822_000 picoseconds. - Weight::from_parts(11_355_000, 3675) + // Minimum execution time: 16_247_000 picoseconds. + Weight::from_parts(16_890_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -803,10 +833,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn set_team() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 8_918_000 picoseconds. - Weight::from_parts(9_276_000, 3675) + // Minimum execution time: 14_206_000 picoseconds. + Weight::from_parts(14_856_000, 3675) .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -816,16 +846,14 @@ impl WeightInfo for () { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(_n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 23_560_000 picoseconds. - Weight::from_parts(24_344_158, 3675) - // Standard Error: 532 - .saturating_add(Weight::from_parts(6_585, 0).saturating_mul(n.into())) - // Standard Error: 532 - .saturating_add(Weight::from_parts(4_755, 0).saturating_mul(s.into())) + // Minimum execution time: 30_217_000 picoseconds. + Weight::from_parts(31_869_256, 3675) + // Standard Error: 1_165 + .saturating_add(Weight::from_parts(826, 0).saturating_mul(s.into())) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -835,10 +863,10 @@ impl WeightInfo for () { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn clear_metadata() -> Weight { // Proof Size summary in bytes: - // Measured: `386` + // Measured: `548` // Estimated: `3675` - // Minimum execution time: 25_139_000 picoseconds. - Weight::from_parts(25_763_000, 3675) + // Minimum execution time: 29_914_000 picoseconds. + Weight::from_parts(30_680_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -850,14 +878,14 @@ impl WeightInfo for () { /// The range of component `s` is `[0, 50]`. fn force_set_metadata(n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `56` + // Measured: `223` // Estimated: `3675` - // Minimum execution time: 9_212_000 picoseconds. - Weight::from_parts(9_752_745, 3675) - // Standard Error: 308 - .saturating_add(Weight::from_parts(665, 0).saturating_mul(n.into())) - // Standard Error: 308 - .saturating_add(Weight::from_parts(1_680, 0).saturating_mul(s.into())) + // Minimum execution time: 13_045_000 picoseconds. + Weight::from_parts(13_680_991, 3675) + // Standard Error: 528 + .saturating_add(Weight::from_parts(3_162, 0).saturating_mul(n.into())) + // Standard Error: 528 + .saturating_add(Weight::from_parts(2_931, 0).saturating_mul(s.into())) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -867,10 +895,10 @@ impl WeightInfo for () { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn force_clear_metadata() -> Weight { // Proof Size summary in bytes: - // Measured: `386` + // Measured: `548` // Estimated: `3675` - // Minimum execution time: 25_100_000 picoseconds. - Weight::from_parts(25_471_000, 3675) + // Minimum execution time: 29_440_000 picoseconds. + Weight::from_parts(30_302_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -878,10 +906,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn force_asset_status() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 8_834_000 picoseconds. - Weight::from_parts(9_282_000, 3675) + // Minimum execution time: 14_175_000 picoseconds. + Weight::from_parts(14_802_000, 3675) .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -891,10 +919,10 @@ impl WeightInfo for () { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn approve_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `255` + // Measured: `418` // Estimated: `3675` - // Minimum execution time: 29_392_000 picoseconds. - Weight::from_parts(30_210_000, 3675) + // Minimum execution time: 34_027_000 picoseconds. + Weight::from_parts(34_976_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -908,10 +936,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_approved() -> Weight { // Proof Size summary in bytes: - // Measured: `500` + // Measured: `701` // Estimated: `6208` - // Minimum execution time: 59_493_000 picoseconds. - Weight::from_parts(60_467_000, 6208) + // Minimum execution time: 66_073_000 picoseconds. + Weight::from_parts(69_478_000, 6208) .saturating_add(RocksDbWeight::get().reads(5_u64)) .saturating_add(RocksDbWeight::get().writes(5_u64)) } @@ -921,10 +949,10 @@ impl WeightInfo for () { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn cancel_approval() -> Weight { // Proof Size summary in bytes: - // Measured: `425` + // Measured: `588` // Estimated: `3675` - // Minimum execution time: 30_429_000 picoseconds. - Weight::from_parts(31_332_000, 3675) + // Minimum execution time: 35_452_000 picoseconds. + Weight::from_parts(36_883_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -934,10 +962,10 @@ impl WeightInfo for () { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn force_cancel_approval() -> Weight { // Proof Size summary in bytes: - // Measured: `425` + // Measured: `588` // Estimated: `3675` - // Minimum execution time: 30_628_000 picoseconds. - Weight::from_parts(31_361_000, 3675) + // Minimum execution time: 35_154_000 picoseconds. + Weight::from_parts(36_578_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -945,10 +973,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn set_min_balance() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 9_657_000 picoseconds. - Weight::from_parts(9_994_000, 3675) + // Minimum execution time: 14_904_000 picoseconds. + Weight::from_parts(15_505_000, 3675) .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -960,10 +988,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn touch() -> Weight { // Proof Size summary in bytes: - // Measured: `269` + // Measured: `486` // Estimated: `3675` - // Minimum execution time: 27_740_000 picoseconds. - Weight::from_parts(28_250_000, 3675) + // Minimum execution time: 35_434_000 picoseconds. + Weight::from_parts(36_636_000, 3675) .saturating_add(RocksDbWeight::get().reads(3_u64)) .saturating_add(RocksDbWeight::get().writes(3_u64)) } @@ -973,10 +1001,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn touch_other() -> Weight { // Proof Size summary in bytes: - // Measured: `217` + // Measured: `384` // Estimated: `3675` - // Minimum execution time: 26_874_000 picoseconds. - Weight::from_parts(27_348_000, 3675) + // Minimum execution time: 33_361_000 picoseconds. + Weight::from_parts(34_522_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -988,10 +1016,10 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn refund() -> Weight { // Proof Size summary in bytes: - // Measured: `400` + // Measured: `612` // Estimated: `3675` - // Minimum execution time: 28_474_000 picoseconds. - Weight::from_parts(29_396_000, 3675) + // Minimum execution time: 33_977_000 picoseconds. + Weight::from_parts(34_979_000, 3675) .saturating_add(RocksDbWeight::get().reads(3_u64)) .saturating_add(RocksDbWeight::get().writes(3_u64)) } @@ -1001,10 +1029,10 @@ impl WeightInfo for () { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn refund_other() -> Weight { // Proof Size summary in bytes: - // Measured: `381` + // Measured: `543` // Estimated: `3675` - // Minimum execution time: 27_646_000 picoseconds. - Weight::from_parts(28_249_000, 3675) + // Minimum execution time: 31_928_000 picoseconds. + Weight::from_parts(33_214_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(2_u64)) } @@ -1014,10 +1042,10 @@ impl WeightInfo for () { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn block() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `492` // Estimated: `3675` - // Minimum execution time: 14_437_000 picoseconds. - Weight::from_parts(15_127_000, 3675) + // Minimum execution time: 19_186_000 picoseconds. + Weight::from_parts(20_104_000, 3675) .saturating_add(RocksDbWeight::get().reads(2_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } @@ -1029,11 +1057,41 @@ impl WeightInfo for () { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_all() -> Weight { // Proof Size summary in bytes: - // Measured: `330` + // Measured: `531` // Estimated: `6208` - // Minimum execution time: 49_370_000 picoseconds. - Weight::from_parts(50_734_000, 6208) + // Minimum execution time: 55_413_000 picoseconds. + Weight::from_parts(56_798_000, 6208) .saturating_add(RocksDbWeight::get().reads(4_u64)) .saturating_add(RocksDbWeight::get().writes(4_u64)) } + /// Storage: `Assets::Asset` (r:1 w:0) + /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `418` + // Estimated: `3675` + // Minimum execution time: 8_792_000 picoseconds. + Weight::from_parts(9_095_000, 3675) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + } + /// Storage: `Assets::Account` (r:1 w:0) + /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `255` + // Estimated: `3599` + // Minimum execution time: 8_924_000 picoseconds. + Weight::from_parts(9_407_000, 3599) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + } + /// Storage: `Assets::Approvals` (r:1 w:0) + /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `350` + // Estimated: `3613` + // Minimum execution time: 11_348_000 picoseconds. + Weight::from_parts(11_882_000, 3613) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + } } diff --git a/substrate/frame/revive/mock-network/src/parachain/contracts_config.rs b/substrate/frame/revive/mock-network/src/parachain/contracts_config.rs index c2ddb8fb750fe..49567a6d87a7d 100644 --- a/substrate/frame/revive/mock-network/src/parachain/contracts_config.rs +++ b/substrate/frame/revive/mock-network/src/parachain/contracts_config.rs @@ -14,14 +14,17 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use super::{Balances, Runtime, RuntimeCall, RuntimeEvent}; +use super::{AccountId, Balances, Runtime, RuntimeCall, RuntimeEvent}; use crate::parachain::RuntimeHoldReason; use frame_support::derive_impl; +use frame_system::EnsureSigned; #[derive_impl(pallet_revive::config_preludes::TestDefaultConfig)] impl pallet_revive::Config for Runtime { type AddressMapper = pallet_revive::AccountId32Mapper; type Currency = Balances; + type UploadOrigin = EnsureSigned; + type InstantiateOrigin = EnsureSigned; type Time = super::Timestamp; type Xcm = pallet_xcm::Pallet; } diff --git a/substrate/frame/revive/src/address.rs b/substrate/frame/revive/src/address.rs index 3765fc1c7c512..928397ec63635 100644 --- a/substrate/frame/revive/src/address.rs +++ b/substrate/frame/revive/src/address.rs @@ -42,7 +42,7 @@ use sp_runtime::{AccountId32, DispatchResult, Saturating}; /// different sizes one direction of the mapping is necessarily lossy. This requires the mapping to /// make use of the [`OriginalAccount`] storage item to reverse the mapping. pub trait AddressMapper: private::Sealed { - /// Convert an account id to an ethereum adress. + /// Convert an account id to an ethereum address. fn to_address(account_id: &T::AccountId) -> H160; /// Convert an ethereum address to a native account id. @@ -68,7 +68,7 @@ pub trait AddressMapper: private::Sealed { /// for reclaiming the deposit. fn unmap(account_id: &T::AccountId) -> DispatchResult; - /// Returns true if the `account_id` is useable as an origin. + /// Returns true if the `account_id` is usable as an origin. /// /// This means either the `account_id` doesn't require a stateful mapping /// or a stateful mapping exists. @@ -79,6 +79,7 @@ mod private { pub trait Sealed {} impl Sealed for super::AccountId32Mapper {} impl Sealed for super::H160Mapper {} + impl Sealed for super::TestAccountMapper {} } /// The mapper to be used if the account id is `AccountId32`. @@ -94,6 +95,9 @@ pub struct AccountId32Mapper(PhantomData); /// It just trivially returns its inputs and doesn't make use of any state. pub struct H160Mapper(PhantomData); +/// An account mapper that can be used for testing u64 account ids. +pub struct TestAccountMapper(PhantomData); + impl AddressMapper for AccountId32Mapper where T: Config, @@ -153,6 +157,37 @@ where } } +impl AddressMapper for TestAccountMapper +where + T: Config, +{ + fn to_address(account_id: &T::AccountId) -> H160 { + let mut bytes = [0u8; 20]; + bytes[12..].copy_from_slice(&account_id.to_be_bytes()); + H160::from(bytes) + } + + fn to_account_id(address: &H160) -> T::AccountId { + Self::to_fallback_account_id(address) + } + + fn to_fallback_account_id(address: &H160) -> T::AccountId { + u64::from_be_bytes(address.as_ref()[12..].try_into().unwrap()) + } + + fn map(_account_id: &T::AccountId) -> DispatchResult { + Ok(()) + } + + fn unmap(_account_id: &T::AccountId) -> DispatchResult { + Ok(()) + } + + fn is_mapped(_account_id: &T::AccountId) -> bool { + true + } +} + /// Returns true if the passed account id is controlled by an eth key. /// /// This is a stateless check that just compares the last 12 bytes. Please note that it is diff --git a/substrate/frame/revive/src/exec.rs b/substrate/frame/revive/src/exec.rs index 9161d7f39013d..7797b7b2e475b 100644 --- a/substrate/frame/revive/src/exec.rs +++ b/substrate/frame/revive/src/exec.rs @@ -280,6 +280,11 @@ pub trait PrecompileWithInfoExt: PrecompileExt { pub trait PrecompileExt: sealing::Sealed { type T: Config; + /// Charges the gas meter with the given weight. + fn charge(&mut self, weight: Weight) -> Result { + self.gas_meter_mut().charge(crate::RuntimeCosts::Precompile(weight)) + } + /// Call (possibly transferring some amount of funds) into the specified account. /// /// Returns the code size of the called contract. diff --git a/substrate/frame/revive/src/lib.rs b/substrate/frame/revive/src/lib.rs index d19d464831ea8..c3a3b1ad81741 100644 --- a/substrate/frame/revive/src/lib.rs +++ b/substrate/frame/revive/src/lib.rs @@ -82,7 +82,9 @@ use sp_runtime::{ }; pub use crate::{ - address::{create1, create2, is_eth_derived, AccountId32Mapper, AddressMapper}, + address::{ + create1, create2, is_eth_derived, AccountId32Mapper, AddressMapper, TestAccountMapper, + }, exec::{MomentOf, Origin}, pallet::*, }; @@ -315,7 +317,6 @@ pub mod pallet { use frame_system::EnsureSigned; use sp_core::parameter_types; - type AccountId = sp_runtime::AccountId32; type Balance = u64; const UNITS: Balance = 10_000_000_000; const CENTS: Balance = UNITS / 100; @@ -336,7 +337,7 @@ pub mod pallet { impl Time for TestDefaultConfig { type Moment = u64; fn now() -> Self::Moment { - unimplemented!("No default `now` implementation in `TestDefaultConfig` provide a custom `T::Time` type.") + 0u64 } } @@ -366,8 +367,8 @@ pub mod pallet { type DepositPerItem = DepositPerItem; type Time = Self; type UnsafeUnstableInterface = ConstBool; - type UploadOrigin = EnsureSigned; - type InstantiateOrigin = EnsureSigned; + type UploadOrigin = EnsureSigned; + type InstantiateOrigin = EnsureSigned; type WeightInfo = (); type WeightPrice = Self; type Xcm = (); diff --git a/substrate/frame/revive/src/precompiles.rs b/substrate/frame/revive/src/precompiles.rs index ddaa2710d78da..c51e60cf23adc 100644 --- a/substrate/frame/revive/src/precompiles.rs +++ b/substrate/frame/revive/src/precompiles.rs @@ -140,9 +140,7 @@ impl From> for Error { /// # Warning /// /// Pre-compiles are unmetered code. Hence they have to charge an appropriate amount of weight -/// themselves. Generally, their first line of code should be a call to -/// `env.gas_meter_mut().charge()`. For that you need to implement [`Token`] on a type of your -/// choosing. +/// themselves. Generally, their first line of code should be a call to `env.charge(weight)`. pub trait Precompile { /// Your runtime. type T: Config; diff --git a/substrate/frame/revive/src/wasm/runtime.rs b/substrate/frame/revive/src/wasm/runtime.rs index 1586a0e9c1b2f..9b858acd52549 100644 --- a/substrate/frame/revive/src/wasm/runtime.rs +++ b/substrate/frame/revive/src/wasm/runtime.rs @@ -396,6 +396,8 @@ pub enum RuntimeCosts { Sr25519Verify(u32), /// Weight charged for calling into the runtime. CallRuntime(Weight), + /// Weight charged by a precompile. + Precompile(Weight), /// Weight charged for calling xcm_execute. CallXcmExecute(Weight), /// Weight of calling `seal_set_code_hash` @@ -545,7 +547,7 @@ impl Token for RuntimeCosts { HashBlake128(len) => T::WeightInfo::seal_hash_blake2_128(len), EcdsaRecovery => T::WeightInfo::ecdsa_recover(), Sr25519Verify(len) => T::WeightInfo::seal_sr25519_verify(len), - CallRuntime(weight) | CallXcmExecute(weight) => weight, + Precompile(weight) | CallRuntime(weight) | CallXcmExecute(weight) => weight, SetCodeHash => T::WeightInfo::seal_set_code_hash(), EcdsaToEthAddress => T::WeightInfo::seal_ecdsa_to_eth_address(), GetImmutableData(len) => T::WeightInfo::seal_get_immutable_data(len), diff --git a/substrate/frame/staking-async/runtimes/parachain/Cargo.toml b/substrate/frame/staking-async/runtimes/parachain/Cargo.toml index a4df251d7c63e..d5a6af6c1243e 100644 --- a/substrate/frame/staking-async/runtimes/parachain/Cargo.toml +++ b/substrate/frame/staking-async/runtimes/parachain/Cargo.toml @@ -250,6 +250,7 @@ try-runtime = [ "pallet-xcm-bridge-hub-router/try-runtime", "pallet-xcm/try-runtime", "parachain-info/try-runtime", + "parachains-common/try-runtime", "polkadot-runtime-common/try-runtime", "sp-runtime/try-runtime", ] diff --git a/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_foreign.rs b/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_foreign.rs index 483794c8cc6ea..8475c3ac34da8 100644 --- a/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_foreign.rs +++ b/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_foreign.rs @@ -1,5 +1,3 @@ -// This file is part of Substrate. - // Copyright (C) Parity Technologies (UK) Ltd. // SPDX-License-Identifier: Apache-2.0 @@ -17,28 +15,29 @@ //! Autogenerated weights for `pallet_assets` //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! EXECUTION: ``, WASM-EXECUTION: `Compiled`, CHAIN: `Some("asset-hub-next-westend-dev")`, DB CACHE: 1024 +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: -// ./target/production/polkadot-parachain +// frame-omni-bencher +// v1 // benchmark // pallet -// --chain=asset-hub-next-westend-dev -// --wasm-execution=compiled -// --pallet=pallet_assets -// --no-storage-info -// --no-median-slopes -// --no-min-squares // --extrinsic=* +// --runtime=target/production/wbuild/asset-hub-rococo-runtime/asset_hub_rococo_runtime.wasm +// --pallet=pallet_assets +// --header=/__w/polkadot-sdk/polkadot-sdk/cumulus/file_header.txt +// --output=./cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights +// --wasm-execution=compiled // --steps=50 // --repeat=20 -// --json -// --header=./file_header.txt -// --output=./parachains/runtimes/assets/asset-hub-next-westend/src/weights/ +// --heap-pages=4096 +// --no-storage-info +// --no-min-squares +// --no-median-slopes #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -55,48 +54,58 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssets::NextAssetId` (r:1 w:0) + /// Proof: `ForeignAssets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(602), added: 1097, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn create() -> Weight { // Proof Size summary in bytes: - // Measured: `107` + // Measured: `139` // Estimated: `4273` - // Minimum execution time: 29_123_000 picoseconds. - Weight::from_parts(30_025_000, 0) + // Minimum execution time: 29_713_000 picoseconds. + Weight::from_parts(30_405_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssets::NextAssetId` (r:1 w:0) + /// Proof: `ForeignAssets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(602), added: 1097, mode: `MaxEncodedLen`) fn force_create() -> Weight { // Proof Size summary in bytes: // Measured: `4` // Estimated: `4273` - // Minimum execution time: 11_857_000 picoseconds. - Weight::from_parts(12_256_000, 0) + // Minimum execution time: 11_430_000 picoseconds. + Weight::from_parts(11_825_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:0) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn start_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `276` + // Measured: `324` // Estimated: `4273` - // Minimum execution time: 14_513_000 picoseconds. - Weight::from_parts(15_110_000, 0) + // Minimum execution time: 16_882_000 picoseconds. + Weight::from_parts(17_360_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Account` (r:1001 w:1000) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1000 w:1000) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1000 w:1000) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1000 w:1000) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) /// The range of component `c` is `[0, 1000]`. /// The range of component `c` is `[0, 1000]`. /// The range of component `c` is `[0, 1000]`. @@ -104,15 +113,15 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `4273 + c * (3207 ±0)` - // Minimum execution time: 17_168_000 picoseconds. - Weight::from_parts(17_732_000, 0) + // Minimum execution time: 15_990_000 picoseconds. + Weight::from_parts(16_161_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 8_406 - .saturating_add(Weight::from_parts(15_274_700, 0).saturating_mul(c.into())) + // Standard Error: 16_995 + .saturating_add(Weight::from_parts(25_624_471, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(c.into()))) .saturating_add(Weight::from_parts(0, 3207).saturating_mul(c.into())) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) @@ -126,11 +135,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `413 + a * (86 ±0)` // Estimated: `4273 + a * (3221 ±0)` - // Minimum execution time: 18_111_000 picoseconds. - Weight::from_parts(18_573_000, 0) + // Minimum execution time: 16_532_000 picoseconds. + Weight::from_parts(16_865_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 3_988 - .saturating_add(Weight::from_parts(15_270_030, 0).saturating_mul(a.into())) + // Standard Error: 4_823 + .saturating_add(Weight::from_parts(15_353_976, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -145,8 +154,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 14_768_000 picoseconds. - Weight::from_parts(15_323_000, 0) + // Minimum execution time: 13_451_000 picoseconds. + Weight::from_parts(14_019_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -159,8 +168,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 25_855_000 picoseconds. - Weight::from_parts(26_592_000, 0) + // Minimum execution time: 22_965_000 picoseconds. + Weight::from_parts(23_855_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -169,63 +178,77 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Account` (r:1 w:1) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn burn() -> Weight { // Proof Size summary in bytes: - // Measured: `350` + // Measured: `356` // Estimated: `4273` - // Minimum execution time: 33_065_000 picoseconds. - Weight::from_parts(34_113_000, 0) + // Minimum execution time: 47_536_000 picoseconds. + Weight::from_parts(49_071_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Account` (r:2 w:2) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `350` + // Measured: `356` // Estimated: `7404` - // Minimum execution time: 45_409_000 picoseconds. - Weight::from_parts(46_176_000, 0) + // Minimum execution time: 59_854_000 picoseconds. + Weight::from_parts(61_262_000, 0) .saturating_add(Weight::from_parts(0, 7404)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Account` (r:2 w:2) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:0) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_keep_alive() -> Weight { // Proof Size summary in bytes: - // Measured: `350` + // Measured: `356` // Estimated: `7404` - // Minimum execution time: 40_017_000 picoseconds. - Weight::from_parts(41_081_000, 0) + // Minimum execution time: 45_638_000 picoseconds. + Weight::from_parts(46_477_000, 0) .saturating_add(Weight::from_parts(0, 7404)) - .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Account` (r:2 w:2) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn force_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `350` + // Measured: `356` // Estimated: `7404` - // Minimum execution time: 45_189_000 picoseconds. - Weight::from_parts(46_133_000, 0) + // Minimum execution time: 59_607_000 picoseconds. + Weight::from_parts(61_405_000, 0) .saturating_add(Weight::from_parts(0, 7404)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) } /// Storage: `ForeignAssets::Asset` (r:1 w:0) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) @@ -235,8 +258,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 18_147_000 picoseconds. - Weight::from_parts(18_923_000, 0) + // Minimum execution time: 16_524_000 picoseconds. + Weight::from_parts(17_268_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -249,8 +272,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 17_801_000 picoseconds. - Weight::from_parts(18_472_000, 0) + // Minimum execution time: 16_618_000 picoseconds. + Weight::from_parts(17_201_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -261,8 +284,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 14_204_000 picoseconds. - Weight::from_parts(14_671_000, 0) + // Minimum execution time: 11_755_000 picoseconds. + Weight::from_parts(12_366_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -273,8 +296,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 13_752_000 picoseconds. - Weight::from_parts(14_380_000, 0) + // Minimum execution time: 11_872_000 picoseconds. + Weight::from_parts(12_490_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -287,8 +310,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 15_310_000 picoseconds. - Weight::from_parts(15_761_000, 0) + // Minimum execution time: 13_752_000 picoseconds. + Weight::from_parts(14_440_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -299,8 +322,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 13_656_000 picoseconds. - Weight::from_parts(14_121_000, 0) + // Minimum execution time: 11_860_000 picoseconds. + Weight::from_parts(12_186_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -315,17 +338,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(_n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 28_413_000 picoseconds. - Weight::from_parts(29_399_881, 0) + // Minimum execution time: 27_274_000 picoseconds. + Weight::from_parts(28_578_070, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 369 - .saturating_add(Weight::from_parts(5_400, 0).saturating_mul(n.into())) - // Standard Error: 369 - .saturating_add(Weight::from_parts(3_525, 0).saturating_mul(s.into())) + // Standard Error: 776 + .saturating_add(Weight::from_parts(1_087, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -337,8 +358,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `406` // Estimated: `4273` - // Minimum execution time: 29_660_000 picoseconds. - Weight::from_parts(30_281_000, 0) + // Minimum execution time: 27_414_000 picoseconds. + Weight::from_parts(28_274_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -357,13 +378,13 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `81` // Estimated: `4273` - // Minimum execution time: 12_949_000 picoseconds. - Weight::from_parts(13_813_061, 0) + // Minimum execution time: 12_087_000 picoseconds. + Weight::from_parts(12_745_826, 0) .saturating_add(Weight::from_parts(0, 4273)) - // Standard Error: 229 - .saturating_add(Weight::from_parts(480, 0).saturating_mul(n.into())) - // Standard Error: 229 - .saturating_add(Weight::from_parts(94, 0).saturating_mul(s.into())) + // Standard Error: 440 + .saturating_add(Weight::from_parts(1_010, 0).saturating_mul(n.into())) + // Standard Error: 440 + .saturating_add(Weight::from_parts(1_303, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -375,8 +396,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `406` // Estimated: `4273` - // Minimum execution time: 29_002_000 picoseconds. - Weight::from_parts(29_772_000, 0) + // Minimum execution time: 26_528_000 picoseconds. + Weight::from_parts(27_478_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -387,8 +408,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 13_023_000 picoseconds. - Weight::from_parts(13_528_000, 0) + // Minimum execution time: 10_881_000 picoseconds. + Weight::from_parts(11_268_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -401,8 +422,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `276` // Estimated: `4273` - // Minimum execution time: 32_393_000 picoseconds. - Weight::from_parts(33_164_000, 0) + // Minimum execution time: 31_216_000 picoseconds. + Weight::from_parts(32_411_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -413,17 +434,21 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `ForeignAssets::Approvals` (`max_values`: None, `max_size`: Some(746), added: 3221, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Account` (r:2 w:2) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn transfer_approved() -> Weight { // Proof Size summary in bytes: - // Measured: `520` + // Measured: `526` // Estimated: `7404` - // Minimum execution time: 64_647_000 picoseconds. - Weight::from_parts(65_669_000, 0) + // Minimum execution time: 79_133_000 picoseconds. + Weight::from_parts(81_252_000, 0) .saturating_add(Weight::from_parts(0, 7404)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(7)) } /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) @@ -433,8 +458,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `446` // Estimated: `4273` - // Minimum execution time: 34_292_000 picoseconds. - Weight::from_parts(35_505_000, 0) + // Minimum execution time: 33_529_000 picoseconds. + Weight::from_parts(34_768_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -447,8 +472,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `446` // Estimated: `4273` - // Minimum execution time: 35_358_000 picoseconds. - Weight::from_parts(36_553_000, 0) + // Minimum execution time: 33_558_000 picoseconds. + Weight::from_parts(34_197_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -459,8 +484,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 14_656_000 picoseconds. - Weight::from_parts(15_097_000, 0) + // Minimum execution time: 12_533_000 picoseconds. + Weight::from_parts(12_956_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -475,8 +500,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `345` // Estimated: `4273` - // Minimum execution time: 33_758_000 picoseconds. - Weight::from_parts(34_618_000, 0) + // Minimum execution time: 32_643_000 picoseconds. + Weight::from_parts(33_899_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) @@ -489,8 +514,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `242` // Estimated: `4273` - // Minimum execution time: 32_205_000 picoseconds. - Weight::from_parts(33_208_000, 0) + // Minimum execution time: 31_276_000 picoseconds. + Weight::from_parts(32_155_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -499,31 +524,39 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn refund() -> Weight { // Proof Size summary in bytes: - // Measured: `471` + // Measured: `477` // Estimated: `4273` - // Minimum execution time: 30_848_000 picoseconds. - Weight::from_parts(31_592_000, 0) + // Minimum execution time: 43_426_000 picoseconds. + Weight::from_parts(45_064_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(5)) } /// Storage: `ForeignAssets::Account` (r:1 w:1) /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) /// Storage: `ForeignAssets::Asset` (r:1 w:1) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) fn refund_other() -> Weight { // Proof Size summary in bytes: - // Measured: `401` + // Measured: `407` // Estimated: `4273` - // Minimum execution time: 28_920_000 picoseconds. - Weight::from_parts(29_519_000, 0) + // Minimum execution time: 41_885_000 picoseconds. + Weight::from_parts(43_300_000, 0) .saturating_add(Weight::from_parts(0, 4273)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `ForeignAssets::Asset` (r:1 w:0) /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) @@ -533,20 +566,63 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `350` // Estimated: `4273` - // Minimum execution time: 17_938_000 picoseconds. - Weight::from_parts(18_525_000, 0) + // Minimum execution time: 16_833_000 picoseconds. + Weight::from_parts(17_265_000, 0) .saturating_add(Weight::from_parts(0, 4273)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - + /// Storage: `ForeignAssets::Asset` (r:1 w:1) + /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssets::Account` (r:2 w:2) + /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(682), added: 3157, mode: `MaxEncodedLen`) + /// Storage: `ForeignAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `ForeignAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(685), added: 3160, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_all() -> Weight { // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 46_573_000 picoseconds. - Weight::from_parts(47_385_000, 3593) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + // Measured: `356` + // Estimated: `7404` + // Minimum execution time: 72_880_000 picoseconds. + Weight::from_parts(74_426_000, 0) + .saturating_add(Weight::from_parts(0, 7404)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) + } + /// Storage: `ForeignAssets::Asset` (r:1 w:0) + /// Proof: `ForeignAssets::Asset` (`max_values`: None, `max_size`: Some(808), added: 3283, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `276` + // Estimated: `4273` + // Minimum execution time: 5_454_000 picoseconds. + Weight::from_parts(5_742_000, 0) + .saturating_add(Weight::from_parts(0, 4273)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `ForeignAssets::Account` (r:1 w:0) + /// Proof: `ForeignAssets::Account` (`max_values`: None, `max_size`: Some(732), added: 3207, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `150` + // Estimated: `4197` + // Minimum execution time: 6_480_000 picoseconds. + Weight::from_parts(6_813_000, 0) + .saturating_add(Weight::from_parts(0, 4197)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `ForeignAssets::Approvals` (r:1 w:0) + /// Proof: `ForeignAssets::Approvals` (`max_values`: None, `max_size`: Some(746), added: 3221, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `245` + // Estimated: `4211` + // Minimum execution time: 8_685_000 picoseconds. + Weight::from_parts(9_177_000, 0) + .saturating_add(Weight::from_parts(0, 4211)) + .saturating_add(T::DbWeight::get().reads(1)) } } diff --git a/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_local.rs b/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_local.rs index 026c7fb5668ea..802f246c26357 100644 --- a/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_local.rs +++ b/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_local.rs @@ -1,5 +1,3 @@ -// This file is part of Substrate. - // Copyright (C) Parity Technologies (UK) Ltd. // SPDX-License-Identifier: Apache-2.0 @@ -17,28 +15,29 @@ //! Autogenerated weights for `pallet_assets` //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! EXECUTION: ``, WASM-EXECUTION: `Compiled`, CHAIN: `Some("asset-hub-next-westend-dev")`, DB CACHE: 1024 +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: -// ./target/production/polkadot-parachain +// frame-omni-bencher +// v1 // benchmark // pallet -// --chain=asset-hub-next-westend-dev -// --wasm-execution=compiled -// --pallet=pallet_assets -// --no-storage-info -// --no-median-slopes -// --no-min-squares // --extrinsic=* +// --runtime=target/production/wbuild/asset-hub-rococo-runtime/asset_hub_rococo_runtime.wasm +// --pallet=pallet_assets +// --header=/__w/polkadot-sdk/polkadot-sdk/cumulus/file_header.txt +// --output=./cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights +// --wasm-execution=compiled // --steps=50 // --repeat=20 -// --json -// --header=./file_header.txt -// --output=./parachains/runtimes/assets/asset-hub-next-westend/src/weights/ +// --heap-pages=4096 +// --no-storage-info +// --no-min-squares +// --no-median-slopes #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -53,48 +52,58 @@ pub struct WeightInfo(PhantomData); impl pallet_assets::WeightInfo for WeightInfo { /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `Assets::NextAssetId` (r:1 w:0) + /// Proof: `Assets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn create() -> Weight { // Proof Size summary in bytes: - // Measured: `109` + // Measured: `145` // Estimated: `3675` - // Minimum execution time: 25_894_000 picoseconds. - Weight::from_parts(26_675_000, 0) + // Minimum execution time: 26_482_000 picoseconds. + Weight::from_parts(27_179_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `Assets::NextAssetId` (r:1 w:0) + /// Proof: `Assets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) fn force_create() -> Weight { // Proof Size summary in bytes: - // Measured: `6` + // Measured: `42` // Estimated: `3675` - // Minimum execution time: 10_155_000 picoseconds. - Weight::from_parts(10_864_000, 0) + // Minimum execution time: 11_224_000 picoseconds. + Weight::from_parts(11_615_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:0) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn start_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `277` + // Measured: `324` // Estimated: `3675` - // Minimum execution time: 12_904_000 picoseconds. - Weight::from_parts(13_723_000, 0) + // Minimum execution time: 16_018_000 picoseconds. + Weight::from_parts(16_859_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `Assets::Account` (r:1001 w:1000) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1000 w:1000) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1000 w:1000) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1000 w:1000) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) /// The range of component `c` is `[0, 1000]`. /// The range of component `c` is `[0, 1000]`. /// The range of component `c` is `[0, 1000]`. @@ -102,15 +111,15 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 15_522_000 picoseconds. - Weight::from_parts(16_015_000, 0) + // Minimum execution time: 15_347_000 picoseconds. + Weight::from_parts(15_681_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 7_984 - .saturating_add(Weight::from_parts(15_024_602, 0).saturating_mul(c.into())) + // Standard Error: 26_239 + .saturating_add(Weight::from_parts(25_531_130, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(c.into()))) .saturating_add(Weight::from_parts(0, 2609).saturating_mul(c.into())) } /// Storage: `Assets::Asset` (r:1 w:1) @@ -122,13 +131,13 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `a` is `[0, 1000]`. fn destroy_approvals(a: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `414 + a * (86 ±0)` + // Measured: `451 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 16_570_000 picoseconds. - Weight::from_parts(16_940_000, 0) + // Minimum execution time: 16_411_000 picoseconds. + Weight::from_parts(16_761_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 4_030 - .saturating_add(Weight::from_parts(15_317_878, 0).saturating_mul(a.into())) + // Standard Error: 12_049 + .saturating_add(Weight::from_parts(15_632_794, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -141,10 +150,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn finish_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_327_000 picoseconds. - Weight::from_parts(13_909_000, 0) + // Minimum execution time: 12_979_000 picoseconds. + Weight::from_parts(13_512_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -155,10 +164,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn mint() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 23_662_000 picoseconds. - Weight::from_parts(24_510_000, 0) + // Minimum execution time: 22_629_000 picoseconds. + Weight::from_parts(23_429_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -167,63 +176,77 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `Assets::Account` (r:1 w:1) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn burn() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `392` // Estimated: `3675` - // Minimum execution time: 30_903_000 picoseconds. - Weight::from_parts(31_725_000, 0) + // Minimum execution time: 45_871_000 picoseconds. + Weight::from_parts(46_802_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `Assets::Account` (r:2 w:2) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `392` // Estimated: `6208` - // Minimum execution time: 42_163_000 picoseconds. - Weight::from_parts(43_176_000, 0) + // Minimum execution time: 56_609_000 picoseconds. + Weight::from_parts(58_229_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `Assets::Account` (r:2 w:2) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:0) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_keep_alive() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `392` // Estimated: `6208` - // Minimum execution time: 36_812_000 picoseconds. - Weight::from_parts(37_836_000, 0) + // Minimum execution time: 42_947_000 picoseconds. + Weight::from_parts(43_748_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `Assets::Account` (r:2 w:2) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn force_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `392` // Estimated: `6208` - // Minimum execution time: 41_923_000 picoseconds. - Weight::from_parts(43_200_000, 0) + // Minimum execution time: 56_609_000 picoseconds. + Weight::from_parts(58_589_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) } /// Storage: `Assets::Asset` (r:1 w:0) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) @@ -231,10 +254,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn freeze() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_567_000 picoseconds. - Weight::from_parts(17_125_000, 0) + // Minimum execution time: 16_199_000 picoseconds. + Weight::from_parts(16_994_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -245,10 +268,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn thaw() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_271_000 picoseconds. - Weight::from_parts(17_116_000, 0) + // Minimum execution time: 16_107_000 picoseconds. + Weight::from_parts(17_102_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -257,10 +280,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn freeze_asset() -> Weight { // Proof Size summary in bytes: - // Measured: `277` + // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_772_000 picoseconds. - Weight::from_parts(13_267_000, 0) + // Minimum execution time: 11_414_000 picoseconds. + Weight::from_parts(12_053_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -269,10 +292,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn thaw_asset() -> Weight { // Proof Size summary in bytes: - // Measured: `277` + // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_477_000 picoseconds. - Weight::from_parts(13_110_000, 0) + // Minimum execution time: 11_710_000 picoseconds. + Weight::from_parts(12_122_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -283,10 +306,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn transfer_ownership() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_857_000 picoseconds. - Weight::from_parts(14_270_000, 0) + // Minimum execution time: 13_447_000 picoseconds. + Weight::from_parts(13_861_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -295,10 +318,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn set_team() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_844_000 picoseconds. - Weight::from_parts(13_215_000, 0) + // Minimum execution time: 11_569_000 picoseconds. + Weight::from_parts(12_049_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -313,17 +336,13 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(_n: u32, _s: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 27_149_000 picoseconds. - Weight::from_parts(28_147_817, 0) + // Minimum execution time: 26_983_000 picoseconds. + Weight::from_parts(28_703_529, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 410 - .saturating_add(Weight::from_parts(3_935, 0).saturating_mul(n.into())) - // Standard Error: 410 - .saturating_add(Weight::from_parts(2_686, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -333,10 +352,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn clear_metadata() -> Weight { // Proof Size summary in bytes: - // Measured: `407` + // Measured: `444` // Estimated: `3675` - // Minimum execution time: 27_866_000 picoseconds. - Weight::from_parts(28_735_000, 0) + // Minimum execution time: 27_171_000 picoseconds. + Weight::from_parts(28_200_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -353,15 +372,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. fn force_set_metadata(n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `82` + // Measured: `119` // Estimated: `3675` - // Minimum execution time: 11_877_000 picoseconds. - Weight::from_parts(12_700_940, 0) + // Minimum execution time: 12_271_000 picoseconds. + Weight::from_parts(12_658_518, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 219 - .saturating_add(Weight::from_parts(253, 0).saturating_mul(n.into())) - // Standard Error: 219 - .saturating_add(Weight::from_parts(1_004, 0).saturating_mul(s.into())) + // Standard Error: 438 + .saturating_add(Weight::from_parts(3_068, 0).saturating_mul(n.into())) + // Standard Error: 438 + .saturating_add(Weight::from_parts(4_338, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -371,10 +390,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Metadata` (`max_values`: None, `max_size`: Some(140), added: 2615, mode: `MaxEncodedLen`) fn force_clear_metadata() -> Weight { // Proof Size summary in bytes: - // Measured: `407` + // Measured: `444` // Estimated: `3675` - // Minimum execution time: 27_536_000 picoseconds. - Weight::from_parts(28_635_000, 0) + // Minimum execution time: 26_574_000 picoseconds. + Weight::from_parts(27_538_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -383,10 +402,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn force_asset_status() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_010_000 picoseconds. - Weight::from_parts(12_526_000, 0) + // Minimum execution time: 11_164_000 picoseconds. + Weight::from_parts(11_592_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -397,10 +416,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn approve_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `277` + // Measured: `314` // Estimated: `3675` - // Minimum execution time: 30_436_000 picoseconds. - Weight::from_parts(31_420_000, 0) + // Minimum execution time: 30_723_000 picoseconds. + Weight::from_parts(32_100_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -411,17 +430,21 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) /// Storage: `Assets::Account` (r:2 w:2) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn transfer_approved() -> Weight { // Proof Size summary in bytes: - // Measured: `521` + // Measured: `562` // Estimated: `6208` - // Minimum execution time: 60_189_000 picoseconds. - Weight::from_parts(61_948_000, 0) + // Minimum execution time: 79_016_000 picoseconds. + Weight::from_parts(80_828_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(7)) } /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) @@ -429,10 +452,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn cancel_approval() -> Weight { // Proof Size summary in bytes: - // Measured: `447` + // Measured: `484` // Estimated: `3675` - // Minimum execution time: 33_033_000 picoseconds. - Weight::from_parts(33_710_000, 0) + // Minimum execution time: 33_078_000 picoseconds. + Weight::from_parts(34_121_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -443,10 +466,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) fn force_cancel_approval() -> Weight { // Proof Size summary in bytes: - // Measured: `447` + // Measured: `484` // Estimated: `3675` - // Minimum execution time: 33_121_000 picoseconds. - Weight::from_parts(34_112_000, 0) + // Minimum execution time: 32_674_000 picoseconds. + Weight::from_parts(33_256_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -455,10 +478,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn set_min_balance() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_994_000 picoseconds. - Weight::from_parts(13_442_000, 0) + // Minimum execution time: 12_075_000 picoseconds. + Weight::from_parts(12_615_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -471,10 +494,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn touch() -> Weight { // Proof Size summary in bytes: - // Measured: `346` + // Measured: `383` // Estimated: `3675` - // Minimum execution time: 31_950_000 picoseconds. - Weight::from_parts(32_750_000, 0) + // Minimum execution time: 31_734_000 picoseconds. + Weight::from_parts(32_991_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) @@ -485,10 +508,10 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) fn touch_other() -> Weight { // Proof Size summary in bytes: - // Measured: `243` + // Measured: `280` // Estimated: `3675` - // Minimum execution time: 29_976_000 picoseconds. - Weight::from_parts(31_186_000, 0) + // Minimum execution time: 30_207_000 picoseconds. + Weight::from_parts(31_152_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -497,31 +520,39 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn refund() -> Weight { // Proof Size summary in bytes: - // Measured: `472` + // Measured: `513` // Estimated: `3675` - // Minimum execution time: 29_549_000 picoseconds. - Weight::from_parts(30_533_000, 0) + // Minimum execution time: 43_677_000 picoseconds. + Weight::from_parts(45_244_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(5)) } /// Storage: `Assets::Account` (r:1 w:1) /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) /// Storage: `Assets::Asset` (r:1 w:1) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn refund_other() -> Weight { // Proof Size summary in bytes: - // Measured: `402` + // Measured: `443` // Estimated: `3675` - // Minimum execution time: 27_746_000 picoseconds. - Weight::from_parts(28_561_000, 0) + // Minimum execution time: 41_707_000 picoseconds. + Weight::from_parts(43_356_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `Assets::Asset` (r:1 w:0) /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) @@ -529,22 +560,65 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) fn block() -> Weight { // Proof Size summary in bytes: - // Measured: `351` + // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_408_000 picoseconds. - Weight::from_parts(17_038_000, 0) + // Minimum execution time: 16_127_000 picoseconds. + Weight::from_parts(16_872_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - + /// Storage: `Assets::Asset` (r:1 w:1) + /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `Assets::Account` (r:2 w:2) + /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `AssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `AssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `AssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_all() -> Weight { // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 46_573_000 picoseconds. - Weight::from_parts(47_385_000, 3593) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + // Measured: `392` + // Estimated: `6208` + // Minimum execution time: 69_690_000 picoseconds. + Weight::from_parts(72_135_000, 0) + .saturating_add(Weight::from_parts(0, 6208)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) + } + /// Storage: `Assets::Asset` (r:1 w:0) + /// Proof: `Assets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `3675` + // Minimum execution time: 5_735_000 picoseconds. + Weight::from_parts(5_937_000, 0) + .saturating_add(Weight::from_parts(0, 3675)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Assets::Account` (r:1 w:0) + /// Proof: `Assets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `188` + // Estimated: `3599` + // Minimum execution time: 6_622_000 picoseconds. + Weight::from_parts(6_995_000, 0) + .saturating_add(Weight::from_parts(0, 3599)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Assets::Approvals` (r:1 w:0) + /// Proof: `Assets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `283` + // Estimated: `3613` + // Minimum execution time: 9_066_000 picoseconds. + Weight::from_parts(9_393_000, 0) + .saturating_add(Weight::from_parts(0, 3613)) + .saturating_add(T::DbWeight::get().reads(1)) } } diff --git a/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_pool.rs b/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_pool.rs index a09ece1b184f7..f315798a40f2e 100644 --- a/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_pool.rs +++ b/substrate/frame/staking-async/runtimes/parachain/src/weights/pallet_assets_pool.rs @@ -1,5 +1,3 @@ -// This file is part of Substrate. - // Copyright (C) Parity Technologies (UK) Ltd. // SPDX-License-Identifier: Apache-2.0 @@ -17,28 +15,29 @@ //! Autogenerated weights for `pallet_assets` //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 +//! DATE: 2025-05-18, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! EXECUTION: ``, WASM-EXECUTION: `Compiled`, CHAIN: `Some("asset-hub-next-westend-dev")`, DB CACHE: 1024 +//! HOSTNAME: `c47a012f15ca`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024 // Executed Command: -// ./target/production/polkadot-parachain +// frame-omni-bencher +// v1 // benchmark // pallet -// --chain=asset-hub-next-westend-dev -// --wasm-execution=compiled -// --pallet=pallet_assets -// --no-storage-info -// --no-median-slopes -// --no-min-squares // --extrinsic=* +// --runtime=target/production/wbuild/asset-hub-rococo-runtime/asset_hub_rococo_runtime.wasm +// --pallet=pallet_assets +// --header=/__w/polkadot-sdk/polkadot-sdk/cumulus/file_header.txt +// --output=./cumulus/parachains/runtimes/assets/asset-hub-rococo/src/weights +// --wasm-execution=compiled // --steps=50 // --repeat=20 -// --json -// --header=./file_header.txt -// --output=./parachains/runtimes/assets/asset-hub-next-westend/src/weights/ +// --heap-pages=4096 +// --no-storage-info +// --no-min-squares +// --no-median-slopes #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -53,46 +52,56 @@ pub struct WeightInfo(PhantomData); impl pallet_assets::WeightInfo for WeightInfo { /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `PoolAssets::NextAssetId` (r:1 w:0) + /// Proof: `PoolAssets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) fn create() -> Weight { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 11_148_000 picoseconds. - Weight::from_parts(11_683_000, 0) + // Minimum execution time: 11_176_000 picoseconds. + Weight::from_parts(11_708_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `PoolAssets::NextAssetId` (r:1 w:0) + /// Proof: `PoolAssets::NextAssetId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) fn force_create() -> Weight { // Proof Size summary in bytes: // Measured: `42` // Estimated: `3675` - // Minimum execution time: 10_811_000 picoseconds. - Weight::from_parts(11_324_000, 0) + // Minimum execution time: 11_139_000 picoseconds. + Weight::from_parts(11_425_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:0) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn start_destroy() -> Weight { // Proof Size summary in bytes: - // Measured: `314` + // Measured: `465` // Estimated: `3675` - // Minimum execution time: 13_360_000 picoseconds. - Weight::from_parts(13_961_000, 0) + // Minimum execution time: 16_818_000 picoseconds. + Weight::from_parts(17_574_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Account` (r:1001 w:1000) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1000 w:1000) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1000 w:1000) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1000 w:1000) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) /// The range of component `c` is `[0, 1000]`. /// The range of component `c` is `[0, 1000]`. /// The range of component `c` is `[0, 1000]`. @@ -100,15 +109,15 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + c * (208 ±0)` // Estimated: `3675 + c * (2609 ±0)` - // Minimum execution time: 16_162_000 picoseconds. - Weight::from_parts(16_588_000, 0) + // Minimum execution time: 15_399_000 picoseconds. + Weight::from_parts(15_922_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 8_120 - .saturating_add(Weight::from_parts(14_997_923, 0).saturating_mul(c.into())) + // Standard Error: 20_120 + .saturating_add(Weight::from_parts(24_799_452, 0).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(c.into()))) .saturating_add(Weight::from_parts(0, 2609).saturating_mul(c.into())) } /// Storage: `PoolAssets::Asset` (r:1 w:1) @@ -122,11 +131,11 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `451 + a * (86 ±0)` // Estimated: `3675 + a * (2623 ±0)` - // Minimum execution time: 17_013_000 picoseconds. - Weight::from_parts(17_433_000, 0) + // Minimum execution time: 16_199_000 picoseconds. + Weight::from_parts(16_470_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 3_595 - .saturating_add(Weight::from_parts(5_514_723, 0).saturating_mul(a.into())) + // Standard Error: 4_361 + .saturating_add(Weight::from_parts(15_336_713, 0).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -141,8 +150,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_565_000 picoseconds. - Weight::from_parts(14_080_000, 0) + // Minimum execution time: 12_959_000 picoseconds. + Weight::from_parts(13_382_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -155,8 +164,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 24_156_000 picoseconds. - Weight::from_parts(24_879_000, 0) + // Minimum execution time: 22_225_000 picoseconds. + Weight::from_parts(23_117_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -165,63 +174,77 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Account` (r:1 w:1) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn burn() -> Weight { // Proof Size summary in bytes: - // Measured: `388` + // Measured: `430` // Estimated: `3675` - // Minimum execution time: 31_099_000 picoseconds. - Weight::from_parts(31_804_000, 0) + // Minimum execution time: 47_719_000 picoseconds. + Weight::from_parts(49_655_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Account` (r:2 w:2) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `388` + // Measured: `430` // Estimated: `6208` - // Minimum execution time: 42_337_000 picoseconds. - Weight::from_parts(43_359_000, 0) + // Minimum execution time: 59_349_000 picoseconds. + Weight::from_parts(60_869_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Account` (r:2 w:2) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:0) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_keep_alive() -> Weight { // Proof Size summary in bytes: - // Measured: `388` + // Measured: `430` // Estimated: `6208` - // Minimum execution time: 37_216_000 picoseconds. - Weight::from_parts(37_927_000, 0) + // Minimum execution time: 45_905_000 picoseconds. + Weight::from_parts(47_017_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Account` (r:2 w:2) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn force_transfer() -> Weight { // Proof Size summary in bytes: - // Measured: `388` + // Measured: `430` // Estimated: `6208` - // Minimum execution time: 42_250_000 picoseconds. - Weight::from_parts(43_145_000, 0) + // Minimum execution time: 59_187_000 picoseconds. + Weight::from_parts(60_814_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) } /// Storage: `PoolAssets::Asset` (r:1 w:0) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) @@ -231,8 +254,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_897_000 picoseconds. - Weight::from_parts(17_424_000, 0) + // Minimum execution time: 16_306_000 picoseconds. + Weight::from_parts(16_893_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -245,8 +268,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_804_000 picoseconds. - Weight::from_parts(17_335_000, 0) + // Minimum execution time: 16_090_000 picoseconds. + Weight::from_parts(16_832_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -257,8 +280,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 13_195_000 picoseconds. - Weight::from_parts(13_531_000, 0) + // Minimum execution time: 11_493_000 picoseconds. + Weight::from_parts(12_065_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -269,8 +292,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 12_982_000 picoseconds. - Weight::from_parts(13_469_000, 0) + // Minimum execution time: 11_673_000 picoseconds. + Weight::from_parts(12_059_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -283,8 +306,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 14_275_000 picoseconds. - Weight::from_parts(14_696_000, 0) + // Minimum execution time: 13_512_000 picoseconds. + Weight::from_parts(13_977_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -295,8 +318,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_972_000 picoseconds. - Weight::from_parts(13_459_000, 0) + // Minimum execution time: 11_669_000 picoseconds. + Weight::from_parts(11_898_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -311,17 +334,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn set_metadata(n: u32, s: u32, ) -> Weight { + fn set_metadata(n: u32, _s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 15_092_000 picoseconds. - Weight::from_parts(15_929_556, 0) + // Minimum execution time: 13_910_000 picoseconds. + Weight::from_parts(14_908_493, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 289 - .saturating_add(Weight::from_parts(3_185, 0).saturating_mul(n.into())) - // Standard Error: 289 - .saturating_add(Weight::from_parts(1_709, 0).saturating_mul(s.into())) + // Standard Error: 931 + .saturating_add(Weight::from_parts(409, 0).saturating_mul(n.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -333,8 +354,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 15_711_000 picoseconds. - Weight::from_parts(16_183_000, 0) + // Minimum execution time: 15_016_000 picoseconds. + Weight::from_parts(15_808_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -349,17 +370,15 @@ impl pallet_assets::WeightInfo for WeightInfo { /// The range of component `s` is `[0, 50]`. /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn force_set_metadata(n: u32, s: u32, ) -> Weight { + fn force_set_metadata(_n: u32, s: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `119` // Estimated: `3675` - // Minimum execution time: 13_288_000 picoseconds. - Weight::from_parts(14_061_633, 0) + // Minimum execution time: 12_162_000 picoseconds. + Weight::from_parts(12_966_962, 0) .saturating_add(Weight::from_parts(0, 3675)) - // Standard Error: 215 - .saturating_add(Weight::from_parts(1_169, 0).saturating_mul(n.into())) - // Standard Error: 215 - .saturating_add(Weight::from_parts(900, 0).saturating_mul(s.into())) + // Standard Error: 397 + .saturating_add(Weight::from_parts(289, 0).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -371,8 +390,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `444` // Estimated: `3675` - // Minimum execution time: 15_235_000 picoseconds. - Weight::from_parts(15_998_000, 0) + // Minimum execution time: 14_885_000 picoseconds. + Weight::from_parts(15_220_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -383,8 +402,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 12_556_000 picoseconds. - Weight::from_parts(13_054_000, 0) + // Minimum execution time: 11_115_000 picoseconds. + Weight::from_parts(11_652_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -397,8 +416,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `314` // Estimated: `3675` - // Minimum execution time: 18_635_000 picoseconds. - Weight::from_parts(19_431_000, 0) + // Minimum execution time: 30_537_000 picoseconds. + Weight::from_parts(31_792_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -409,17 +428,21 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `PoolAssets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Account` (r:2 w:2) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) /// Storage: `System::Account` (r:1 w:1) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn transfer_approved() -> Weight { // Proof Size summary in bytes: - // Measured: `558` + // Measured: `600` // Estimated: `6208` - // Minimum execution time: 49_082_000 picoseconds. - Weight::from_parts(50_414_000, 0) + // Minimum execution time: 79_178_000 picoseconds. + Weight::from_parts(83_473_000, 0) .saturating_add(Weight::from_parts(0, 6208)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(7)) } /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) @@ -429,8 +452,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 20_978_000 picoseconds. - Weight::from_parts(21_628_000, 0) + // Minimum execution time: 33_185_000 picoseconds. + Weight::from_parts(33_940_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -443,8 +466,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `484` // Estimated: `3675` - // Minimum execution time: 21_453_000 picoseconds. - Weight::from_parts(22_134_000, 0) + // Minimum execution time: 32_692_000 picoseconds. + Weight::from_parts(33_486_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -455,8 +478,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 13_390_000 picoseconds. - Weight::from_parts(13_920_000, 0) + // Minimum execution time: 12_301_000 picoseconds. + Weight::from_parts(12_727_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -469,8 +492,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 18_063_000 picoseconds. - Weight::from_parts(18_669_000, 0) + // Minimum execution time: 17_321_000 picoseconds. + Weight::from_parts(17_943_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -483,8 +506,8 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `280` // Estimated: `3675` - // Minimum execution time: 17_949_000 picoseconds. - Weight::from_parts(18_891_000, 0) + // Minimum execution time: 17_306_000 picoseconds. + Weight::from_parts(17_911_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -493,29 +516,37 @@ impl pallet_assets::WeightInfo for WeightInfo { /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn refund() -> Weight { // Proof Size summary in bytes: - // Measured: `406` + // Measured: `448` // Estimated: `3675` - // Minimum execution time: 14_696_000 picoseconds. - Weight::from_parts(15_295_000, 0) + // Minimum execution time: 27_522_000 picoseconds. + Weight::from_parts(28_593_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `PoolAssets::Account` (r:1 w:1) /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) /// Storage: `PoolAssets::Asset` (r:1 w:1) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) fn refund_other() -> Weight { // Proof Size summary in bytes: - // Measured: `439` + // Measured: `481` // Estimated: `3675` - // Minimum execution time: 14_643_000 picoseconds. - Weight::from_parts(15_289_000, 0) + // Minimum execution time: 29_602_000 picoseconds. + Weight::from_parts(30_397_000, 0) .saturating_add(Weight::from_parts(0, 3675)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) } /// Storage: `PoolAssets::Asset` (r:1 w:0) /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) @@ -525,20 +556,63 @@ impl pallet_assets::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `388` // Estimated: `3675` - // Minimum execution time: 16_619_000 picoseconds. - Weight::from_parts(17_279_000, 0) + // Minimum execution time: 16_076_000 picoseconds. + Weight::from_parts(16_614_000, 0) .saturating_add(Weight::from_parts(0, 3675)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - + /// Storage: `PoolAssets::Asset` (r:1 w:1) + /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + /// Storage: `PoolAssets::Account` (r:2 w:2) + /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::FrozenBalances` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::FrozenBalances` (`max_values`: None, `max_size`: Some(84), added: 2559, mode: `MaxEncodedLen`) + /// Storage: `PoolAssetsFreezer::Freezes` (r:1 w:1) + /// Proof: `PoolAssetsFreezer::Freezes` (`max_values`: None, `max_size`: Some(87), added: 2562, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn transfer_all() -> Weight { // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 46_573_000 picoseconds. - Weight::from_parts(47_385_000, 3593) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + // Measured: `430` + // Estimated: `6208` + // Minimum execution time: 71_751_000 picoseconds. + Weight::from_parts(74_070_000, 0) + .saturating_add(Weight::from_parts(0, 6208)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(6)) + } + /// Storage: `PoolAssets::Asset` (r:1 w:0) + /// Proof: `PoolAssets::Asset` (`max_values`: None, `max_size`: Some(210), added: 2685, mode: `MaxEncodedLen`) + fn total_issuance() -> Weight { + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `3675` + // Minimum execution time: 5_676_000 picoseconds. + Weight::from_parts(5_922_000, 0) + .saturating_add(Weight::from_parts(0, 3675)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `PoolAssets::Account` (r:1 w:0) + /// Proof: `PoolAssets::Account` (`max_values`: None, `max_size`: Some(134), added: 2609, mode: `MaxEncodedLen`) + fn balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `188` + // Estimated: `3599` + // Minimum execution time: 6_525_000 picoseconds. + Weight::from_parts(6_982_000, 0) + .saturating_add(Weight::from_parts(0, 3599)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `PoolAssets::Approvals` (r:1 w:0) + /// Proof: `PoolAssets::Approvals` (`max_values`: None, `max_size`: Some(148), added: 2623, mode: `MaxEncodedLen`) + fn allowance() -> Weight { + // Proof Size summary in bytes: + // Measured: `283` + // Estimated: `3613` + // Minimum execution time: 9_208_000 picoseconds. + Weight::from_parts(9_558_000, 0) + .saturating_add(Weight::from_parts(0, 3613)) + .saturating_add(T::DbWeight::get().reads(1)) } } diff --git a/umbrella/Cargo.toml b/umbrella/Cargo.toml index 22577c2493aa3..736d40c411c1a 100644 --- a/umbrella/Cargo.toml +++ b/umbrella/Cargo.toml @@ -471,6 +471,7 @@ try-runtime = [ "pallet-xcm-bridge-hub-router?/try-runtime", "pallet-xcm-bridge-hub?/try-runtime", "pallet-xcm?/try-runtime", + "parachains-common?/try-runtime", "polkadot-cli?/try-runtime", "polkadot-omni-node-lib?/try-runtime", "polkadot-runtime-common?/try-runtime",