From 8545aff0545e5c354c2f0a3827fce068e893df2b Mon Sep 17 00:00:00 2001 From: Yaroslav Bolyukin Date: Wed, 31 May 2023 09:52:18 +0000 Subject: [PATCH] feat: use state_version = 1 --- --- a/Cargo.lock +++ b/Cargo.lock @@ -5892,6 +5892,7 @@ "pallet-preimage", "pallet-refungible", "pallet-session", + "pallet-state-trie-migration", "pallet-structure", "pallet-sudo", "pallet-template-transaction-payment", @@ -9395,6 +9396,7 @@ "pallet-preimage", "pallet-refungible", "pallet-session", + "pallet-state-trie-migration", "pallet-structure", "pallet-sudo", "pallet-template-transaction-payment", @@ -13812,6 +13814,7 @@ "pallet-preimage", "pallet-refungible", "pallet-session", + "pallet-state-trie-migration", "pallet-structure", "pallet-sudo", "pallet-template-transaction-payment", --- a/Cargo.toml +++ b/Cargo.toml @@ -107,6 +107,7 @@ pallet-balances = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } pallet-preimage = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } pallet-session = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } +pallet-state-trie-migration = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } pallet-sudo = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } pallet-timestamp = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } pallet-transaction-payment = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } --- a/runtime/common/config/substrate.rs +++ b/runtime/common/config/substrate.rs @@ -31,7 +31,7 @@ use sp_arithmetic::traits::One; use frame_system::{ limits::{BlockLength, BlockWeights}, - EnsureRoot, + EnsureRoot, EnsureNever, }; use pallet_transaction_payment::{Multiplier, ConstFeeMultiplier}; use crate::{ @@ -116,6 +116,22 @@ } parameter_types! { + pub const MigrationMaxKeyLen: u32 = 512; +} + +impl pallet_state_trie_migration::Config for Runtime { + type WeightInfo = pallet_state_trie_migration::weights::SubstrateWeight; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type SignedDepositPerItem = (); + type SignedDepositBase = (); + type ControlOrigin = EnsureRoot; + // Only root can perform this migration + type SignedFilter = EnsureNever; + type MaxKeyLen = MigrationMaxKeyLen; +} + +parameter_types! { pub const MinimumPeriod: u64 = SLOT_DURATION / 2; } --- a/runtime/common/construct_runtime.rs +++ b/runtime/common/construct_runtime.rs @@ -25,6 +25,7 @@ UncheckedExtrinsic = UncheckedExtrinsic { System: frame_system = 0, + StateTrieMigration: pallet_state_trie_migration = 1, ParachainSystem: cumulus_pallet_parachain_system = 20, ParachainInfo: parachain_info = 21, --- a/runtime/opal/Cargo.toml +++ b/runtime/opal/Cargo.toml @@ -73,6 +73,7 @@ "pallet-authorship/std", "pallet-preimage/std", "pallet-session/std", + "pallet-state-trie-migration/std", "sp-consensus-aura/std", 'app-promotion-rpc/std', 'evm-coder/std', @@ -225,6 +226,7 @@ pallet-balances = { features = ["insecure_zero_ed"], workspace = true } pallet-preimage = { workspace = true } pallet-session = { workspace = true } +pallet-state-trie-migration = { workspace = true } pallet-sudo = { workspace = true } pallet-timestamp = { workspace = true } pallet-transaction-payment = { workspace = true } --- a/runtime/opal/src/lib.rs +++ b/runtime/opal/src/lib.rs @@ -56,7 +56,7 @@ impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 3, - state_version: 0, + state_version: 1, }; parameter_types! { --- a/runtime/quartz/Cargo.toml +++ b/runtime/quartz/Cargo.toml @@ -75,6 +75,7 @@ "pallet-identity/std", "pallet-preimage/std", "pallet-session/std", + "pallet-state-trie-migration/std", "sp-consensus-aura/std", 'app-promotion-rpc/std', 'evm-coder/std', @@ -217,6 +218,7 @@ pallet-balances = { features = ["insecure_zero_ed"], workspace = true } pallet-preimage = { workspace = true } pallet-session = { workspace = true } +pallet-state-trie-migration = { workspace = true } pallet-sudo = { workspace = true } pallet-timestamp = { workspace = true } pallet-transaction-payment = { workspace = true } --- a/runtime/quartz/src/lib.rs +++ b/runtime/quartz/src/lib.rs @@ -59,7 +59,7 @@ impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 3, - state_version: 0, + state_version: 1, }; parameter_types! { --- a/runtime/unique/Cargo.toml +++ b/runtime/unique/Cargo.toml @@ -72,6 +72,7 @@ "pallet-identity/std", "pallet-preimage/std", "pallet-session/std", + "pallet-state-trie-migration/std", "sp-consensus-aura/std", 'app-promotion-rpc/std', 'evm-coder/std', @@ -216,6 +217,7 @@ pallet-balances = { features = ["insecure_zero_ed"], workspace = true } pallet-preimage = { workspace = true } pallet-session = { workspace = true } +pallet-state-trie-migration = { workspace = true } pallet-sudo = { workspace = true } pallet-timestamp = { workspace = true } pallet-transaction-payment = { workspace = true } --- a/runtime/unique/src/lib.rs +++ b/runtime/unique/src/lib.rs @@ -56,7 +56,7 @@ impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 3, - state_version: 0, + state_version: 1, }; parameter_types! { -- gitstuff