mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-13 00:01:09 +00:00
Update Rococo to mirror Kusama (#5617)
* upgrade to kusama base * rollback epoch and clean up * Substitue DOLLARS with UNITS * money constatns to mirror Kusama * fixing typo in test * scheduler+collective+membership+preimage * treasury+democracy+bounties+child_bounties+society * tips+claim+identity+elections_phragmen+vesting * recovery+gilt * proxy+slot+auction+registar+crowdloan * babe+epoch_time modificaction * xcm_config * xcm_config fix * constants * fix conflicts 2 * fmt * update xcm_config * revert xcm_config change * fixing benchmarks * cargo.lock * Revert "babe+epoch_time modificaction" This reverts commit 663cb0292c42c8a084a8c1c36cb966389576989b. * fix benchamrks 2 * fix benchmarks 3 * typos * miscelaneous * fix constants test * rollback comments * rollback lease period * fmt * add ROC to spellcheck dictionary * fix cargo.toml + fixes * remove TODOs * nit fix * weights 1.5 * Bumping number of perm/temp slots available Co-authored-by: al3mart <alejandro@parity.io> Co-authored-by: alvicsam <alvicsam@gmail.com>
This commit is contained in:
Generated
+20
@@ -8211,23 +8211,37 @@ dependencies = [
|
||||
"pallet-balances",
|
||||
"pallet-beefy",
|
||||
"pallet-beefy-mmr",
|
||||
"pallet-bounties",
|
||||
"pallet-child-bounties",
|
||||
"pallet-collective",
|
||||
"pallet-democracy",
|
||||
"pallet-elections-phragmen",
|
||||
"pallet-gilt",
|
||||
"pallet-grandpa",
|
||||
"pallet-identity",
|
||||
"pallet-im-online",
|
||||
"pallet-indices",
|
||||
"pallet-membership",
|
||||
"pallet-mmr",
|
||||
"pallet-multisig",
|
||||
"pallet-offences",
|
||||
"pallet-preimage",
|
||||
"pallet-proxy",
|
||||
"pallet-recovery",
|
||||
"pallet-scheduler",
|
||||
"pallet-session",
|
||||
"pallet-society",
|
||||
"pallet-staking",
|
||||
"pallet-sudo",
|
||||
"pallet-timestamp",
|
||||
"pallet-tips",
|
||||
"pallet-transaction-payment",
|
||||
"pallet-transaction-payment-rpc-runtime-api",
|
||||
"pallet-treasury",
|
||||
"pallet-utility",
|
||||
"pallet-vesting",
|
||||
"pallet-xcm",
|
||||
"pallet-xcm-benchmarks",
|
||||
"parity-scale-codec",
|
||||
"polkadot-parachain",
|
||||
"polkadot-primitives",
|
||||
@@ -8235,8 +8249,10 @@ dependencies = [
|
||||
"polkadot-runtime-parachains",
|
||||
"rococo-runtime-constants",
|
||||
"scale-info",
|
||||
"separator",
|
||||
"serde",
|
||||
"serde_derive",
|
||||
"serde_json",
|
||||
"smallvec",
|
||||
"sp-api",
|
||||
"sp-authority-discovery",
|
||||
@@ -8245,6 +8261,7 @@ dependencies = [
|
||||
"sp-core",
|
||||
"sp-inherents",
|
||||
"sp-io",
|
||||
"sp-keyring",
|
||||
"sp-mmr-primitives",
|
||||
"sp-offchain",
|
||||
"sp-runtime",
|
||||
@@ -8252,8 +8269,11 @@ dependencies = [
|
||||
"sp-staking",
|
||||
"sp-std",
|
||||
"sp-transaction-pool",
|
||||
"sp-trie",
|
||||
"sp-version",
|
||||
"static_assertions",
|
||||
"substrate-wasm-builder",
|
||||
"tiny-keccak",
|
||||
"xcm",
|
||||
"xcm-builder",
|
||||
"xcm-executor",
|
||||
|
||||
@@ -1048,26 +1048,35 @@ fn rococo_staging_testnet_config_genesis(wasm_binary: &[u8]) -> rococo_runtime::
|
||||
})
|
||||
.collect::<Vec<_>>(),
|
||||
},
|
||||
phragmen_election: Default::default(),
|
||||
babe: rococo_runtime::BabeConfig {
|
||||
authorities: Default::default(),
|
||||
epoch_config: Some(rococo_runtime::BABE_GENESIS_EPOCH_CONFIG),
|
||||
},
|
||||
grandpa: Default::default(),
|
||||
im_online: Default::default(),
|
||||
collective: Default::default(),
|
||||
membership: Default::default(),
|
||||
democracy: rococo_runtime::DemocracyConfig::default(),
|
||||
council: rococo::CouncilConfig { members: vec![], phantom: Default::default() },
|
||||
technical_committee: rococo::TechnicalCommitteeConfig {
|
||||
members: vec![],
|
||||
phantom: Default::default(),
|
||||
},
|
||||
technical_membership: Default::default(),
|
||||
treasury: Default::default(),
|
||||
authority_discovery: rococo_runtime::AuthorityDiscoveryConfig { keys: vec![] },
|
||||
claims: rococo::ClaimsConfig { claims: vec![], vesting: vec![] },
|
||||
vesting: rococo::VestingConfig { vesting: vec![] },
|
||||
sudo: rococo_runtime::SudoConfig { key: Some(endowed_accounts[0].clone()) },
|
||||
paras: rococo_runtime::ParasConfig { paras: vec![] },
|
||||
hrmp: Default::default(),
|
||||
configuration: rococo_runtime::ConfigurationConfig {
|
||||
config: default_parachains_host_configuration(),
|
||||
},
|
||||
gilt: Default::default(),
|
||||
registrar: rococo_runtime::RegistrarConfig {
|
||||
next_free_para_id: polkadot_primitives::v2::LOWEST_PUBLIC_ID,
|
||||
},
|
||||
xcm_pallet: Default::default(),
|
||||
transaction_payment: Default::default(),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1599,8 +1608,17 @@ pub fn rococo_testnet_genesis(
|
||||
},
|
||||
grandpa: Default::default(),
|
||||
im_online: Default::default(),
|
||||
collective: Default::default(),
|
||||
membership: Default::default(),
|
||||
phragmen_election: Default::default(),
|
||||
democracy: rococo::DemocracyConfig::default(),
|
||||
council: rococo::CouncilConfig { members: vec![], phantom: Default::default() },
|
||||
technical_committee: rococo::TechnicalCommitteeConfig {
|
||||
members: vec![],
|
||||
phantom: Default::default(),
|
||||
},
|
||||
technical_membership: Default::default(),
|
||||
treasury: Default::default(),
|
||||
claims: rococo::ClaimsConfig { claims: vec![], vesting: vec![] },
|
||||
vesting: rococo::VestingConfig { vesting: vec![] },
|
||||
authority_discovery: rococo_runtime::AuthorityDiscoveryConfig { keys: vec![] },
|
||||
sudo: rococo_runtime::SudoConfig { key: Some(root_key.clone()) },
|
||||
hrmp: Default::default(),
|
||||
@@ -1610,12 +1628,12 @@ pub fn rococo_testnet_genesis(
|
||||
..default_parachains_host_configuration()
|
||||
},
|
||||
},
|
||||
gilt: Default::default(),
|
||||
paras: rococo_runtime::ParasConfig { paras: vec![] },
|
||||
registrar: rococo_runtime::RegistrarConfig {
|
||||
next_free_para_id: polkadot_primitives::v2::LOWEST_PUBLIC_ID,
|
||||
},
|
||||
xcm_pallet: Default::default(),
|
||||
transaction_payment: Default::default(),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,7 +20,6 @@
|
||||
// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256.
|
||||
#![recursion_limit = "256"]
|
||||
|
||||
use pallet_transaction_payment::CurrencyAdapter;
|
||||
use parity_scale_codec::{Decode, Encode, MaxEncodedLen};
|
||||
use primitives::v2::{
|
||||
AccountId, AccountIndex, Balance, BlockNumber, CandidateEvent, CandidateHash,
|
||||
@@ -63,7 +62,7 @@ use frame_system::EnsureRoot;
|
||||
use pallet_grandpa::{fg_primitives, AuthorityId as GrandpaId};
|
||||
use pallet_im_online::sr25519::AuthorityId as ImOnlineId;
|
||||
use pallet_session::historical as session_historical;
|
||||
use pallet_transaction_payment::{FeeDetails, RuntimeDispatchInfo};
|
||||
use pallet_transaction_payment::{CurrencyAdapter, FeeDetails, RuntimeDispatchInfo};
|
||||
use sp_core::OpaqueMetadata;
|
||||
use sp_mmr_primitives as mmr;
|
||||
use sp_runtime::{
|
||||
@@ -86,7 +85,6 @@ pub use pallet_balances::Call as BalancesCall;
|
||||
pub use pallet_election_provider_multi_phase::Call as EPMCall;
|
||||
#[cfg(feature = "std")]
|
||||
pub use pallet_staking::StakerStatus;
|
||||
pub use pallet_timestamp::Call as TimestampCall;
|
||||
#[cfg(any(feature = "std", test))]
|
||||
pub use sp_runtime::BuildStorage;
|
||||
|
||||
@@ -361,11 +359,6 @@ impl pallet_authorship::Config for Runtime {
|
||||
type EventHandler = (Staking, ImOnline);
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub const Period: BlockNumber = 10 * MINUTES;
|
||||
pub const Offset: BlockNumber = 0;
|
||||
}
|
||||
|
||||
impl_opaque_keys! {
|
||||
pub struct SessionKeys {
|
||||
pub grandpa: Grandpa,
|
||||
@@ -425,6 +418,8 @@ parameter_types! {
|
||||
/// ... and all of the validators as electable targets. Whilst this is the case, we cannot and
|
||||
/// shall not increase the size of the validator intentions.
|
||||
pub const MaxElectableTargets: u16 = u16::MAX;
|
||||
pub NposSolutionPriority: TransactionPriority =
|
||||
Perbill::from_percent(90) * TransactionPriority::max_value();
|
||||
}
|
||||
|
||||
generate_solution_type!(
|
||||
@@ -733,8 +728,6 @@ impl pallet_authority_discovery::Config for Runtime {
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub NposSolutionPriority: TransactionPriority =
|
||||
Perbill::from_percent(90) * TransactionPriority::max_value();
|
||||
pub const ImOnlineUnsignedPriority: TransactionPriority = TransactionPriority::max_value();
|
||||
}
|
||||
|
||||
@@ -1159,7 +1152,7 @@ impl parachains_hrmp::Config for Runtime {
|
||||
type Event = Event;
|
||||
type Origin = Origin;
|
||||
type Currency = Balances;
|
||||
type WeightInfo = weights::runtime_parachains_hrmp::WeightInfo<Self>;
|
||||
type WeightInfo = weights::runtime_parachains_hrmp::WeightInfo<Runtime>;
|
||||
}
|
||||
|
||||
impl parachains_paras_inherent::Config for Runtime {
|
||||
@@ -1343,7 +1336,6 @@ construct_runtime! {
|
||||
TechnicalMembership: pallet_membership::<Instance1>::{Pallet, Call, Storage, Event<T>, Config<T>} = 17,
|
||||
Treasury: pallet_treasury::{Pallet, Call, Storage, Config, Event<T>} = 18,
|
||||
|
||||
|
||||
// Claims. Usable initially.
|
||||
Claims: claims::{Pallet, Call, Storage, Event<T>, Config<T>, ValidateUnsigned} = 19,
|
||||
|
||||
|
||||
@@ -102,8 +102,9 @@ pub type XcmRouter = (
|
||||
parameter_types! {
|
||||
pub const Kusama: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(KsmLocation::get()) });
|
||||
pub const Statemine: MultiLocation = Parachain(1000).into();
|
||||
pub const Encointer: MultiLocation = Parachain(1001).into();
|
||||
pub const KusamaForStatemine: (MultiAssetFilter, MultiLocation) = (Kusama::get(), Statemine::get());
|
||||
pub const KusamaForEncointer: (MultiAssetFilter, MultiLocation) = (Kusama::get(), Parachain(1001).into());
|
||||
pub const KusamaForEncointer: (MultiAssetFilter, MultiLocation) = (Kusama::get(), Encointer::get());
|
||||
}
|
||||
pub type TrustedTeleporters =
|
||||
(xcm_builder::Case<KusamaForStatemine>, xcm_builder::Case<KusamaForEncointer>);
|
||||
|
||||
+175
-115
@@ -8,73 +8,93 @@ build = "build.rs"
|
||||
[dependencies]
|
||||
parity-scale-codec = { version = "3.1.5", default-features = false, features = ["derive", "max-encoded-len"] }
|
||||
scale-info = { version = "2.1.2", default-features = false, features = ["derive"] }
|
||||
log = { version = "0.4.17", default-features = false }
|
||||
serde = { version = "1.0.137", default-features = false }
|
||||
serde_derive = { version = "1.0.117", optional = true }
|
||||
static_assertions = "1.1.0"
|
||||
smallvec = "1.8.0"
|
||||
log = { version = "0.4.17", default-features = false }
|
||||
|
||||
frame-support = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-io = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-std = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-mmr-primitives = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-session = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-staking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-core = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-version = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
|
||||
tx-pool-api = { package = "sp-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
block-builder-api = { package = "sp-block-builder", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
|
||||
authority-discovery-primitives = { package = "sp-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
babe-primitives = { package = "sp-consensus-babe", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
beefy-primitives = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
beefy-merkle-tree = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
frame-executive = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
rococo-runtime-constants = { package = "rococo-runtime-constants", path = "./constants", default-features = false }
|
||||
sp-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-std = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-io = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-mmr-primitives = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-staking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-core = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-session = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
sp-version = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
tx-pool-api = { package = "sp-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
block-builder-api = { package = "sp-block-builder", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
|
||||
pallet-authority-discovery = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-authorship = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-babe = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-beefy = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-beefy-mmr = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-bounties = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-child-bounties = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-collective = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-democracy = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-elections-phragmen = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
frame-executive = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-grandpa = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-gilt = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-identity = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-im-online = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-indices = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-membership = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-mmr = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-multisig = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-session = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-staking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-sudo = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-offences = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-preimage = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-proxy = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-utility = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
authority-discovery-primitives = { package = "sp-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
|
||||
frame-system = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-recovery = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-scheduler = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-session = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-society = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-sudo = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
frame-support = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-staking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
frame-system = {git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
rococo-runtime-constants = { package = "rococo-runtime-constants", path = "./constants", default-features = false }
|
||||
pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-tips = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-treasury = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-utility = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-vesting = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
|
||||
pallet-xcm = { path = "../../xcm/pallet-xcm", default-features = false }
|
||||
pallet-xcm-benchmarks = { path = "../../xcm/pallet-xcm-benchmarks", default-features = false, optional = true }
|
||||
|
||||
frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false, optional = true }
|
||||
frame-system-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false, optional = true }
|
||||
hex-literal = { version = "0.3.4", optional = true }
|
||||
|
||||
runtime-common = { package = "polkadot-runtime-common", path = "../common", default-features = false }
|
||||
runtime-parachains = { package = "polkadot-runtime-parachains", path = "../parachains", default-features = false }
|
||||
primitives = { package = "polkadot-primitives", path = "../../primitives", default-features = false }
|
||||
polkadot-parachain = { path = "../../parachain", default-features = false }
|
||||
runtime-parachains = { package = "polkadot-runtime-parachains", path = "../parachains", default-features = false }
|
||||
|
||||
xcm = { package = "xcm", path = "../../xcm", default-features = false }
|
||||
xcm-executor = { package = "xcm-executor", path = "../../xcm/xcm-executor", default-features = false }
|
||||
xcm-builder = { package = "xcm-builder", path = "../../xcm/xcm-builder", default-features = false }
|
||||
pallet-xcm = { path = "../../xcm/pallet-xcm", default-features = false }
|
||||
|
||||
# Benchmarking Dependencies
|
||||
frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false, optional = true }
|
||||
hex-literal = { version = "0.3.4", optional = true }
|
||||
frame-system-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false, optional = true }
|
||||
[dev-dependencies]
|
||||
hex-literal = "0.3.4"
|
||||
tiny-keccak = { version = "2.0.2", features = ["keccak"] }
|
||||
keyring = { package = "sp-keyring", git = "https://github.com/paritytech/substrate", branch = "master" }
|
||||
sp-trie = { git = "https://github.com/paritytech/substrate", branch = "master" }
|
||||
separator = "0.4.1"
|
||||
serde_json = "1.0.81"
|
||||
|
||||
[build-dependencies]
|
||||
substrate-wasm-builder = { git = "https://github.com/paritytech/substrate", branch = "master" }
|
||||
@@ -84,60 +104,147 @@ default = ["std"]
|
||||
no_std = []
|
||||
std = [
|
||||
"authority-discovery-primitives/std",
|
||||
"babe-primitives/std",
|
||||
"primitives/std",
|
||||
"parity-scale-codec/std",
|
||||
"scale-info/std",
|
||||
"inherents/std",
|
||||
"sp-core/std",
|
||||
"sp-api/std",
|
||||
"tx-pool-api/std",
|
||||
"block-builder-api/std",
|
||||
"offchain-primitives/std",
|
||||
"sp-std/std",
|
||||
"sp-io/std",
|
||||
"frame-support/std",
|
||||
"frame-executive/std",
|
||||
"pallet-authority-discovery/std",
|
||||
"pallet-authorship/std",
|
||||
"pallet-babe/std",
|
||||
"beefy-primitives/std",
|
||||
"pallet-balances/std",
|
||||
"pallet-collective/std",
|
||||
"pallet-beefy/std",
|
||||
"pallet-beefy-mmr/std",
|
||||
"pallet-grandpa/std",
|
||||
"pallet-sudo/std",
|
||||
"pallet-membership/std",
|
||||
"pallet-mmr/std",
|
||||
"pallet-indices/std",
|
||||
"pallet-im-online/std",
|
||||
"pallet-session/std",
|
||||
"pallet-staking/std",
|
||||
"pallet-offences/std",
|
||||
"pallet-proxy/std",
|
||||
"pallet-timestamp/std",
|
||||
"pallet-bounties/std",
|
||||
"pallet-child-bounties/std",
|
||||
"pallet-transaction-payment/std",
|
||||
"pallet-transaction-payment-rpc-runtime-api/std",
|
||||
"inherents/std",
|
||||
"frame-support/std",
|
||||
"pallet-collective/std",
|
||||
"pallet-elections-phragmen/std",
|
||||
"pallet-democracy/std",
|
||||
"pallet-gilt/std",
|
||||
"pallet-grandpa/std",
|
||||
"pallet-identity/std",
|
||||
"pallet-im-online/std",
|
||||
"pallet-indices/std",
|
||||
"pallet-membership/std",
|
||||
"pallet-mmr/std",
|
||||
"pallet-multisig/std",
|
||||
"pallet-offences/std",
|
||||
"pallet-preimage/std",
|
||||
"pallet-proxy/std",
|
||||
"pallet-recovery/std",
|
||||
"pallet-scheduler/std",
|
||||
"pallet-session/std",
|
||||
"pallet-society/std",
|
||||
"pallet-sudo/std",
|
||||
"pallet-staking/std",
|
||||
"pallet-timestamp/std",
|
||||
"pallet-tips/std",
|
||||
"pallet-treasury/std",
|
||||
"pallet-utility/std",
|
||||
"pallet-vesting/std",
|
||||
"pallet-babe/std",
|
||||
"pallet-xcm/std",
|
||||
"polkadot-parachain/std",
|
||||
"primitives/std",
|
||||
"runtime-common/std",
|
||||
"runtime-parachains/std",
|
||||
"sp-api/std",
|
||||
"sp-core/std",
|
||||
"sp-io/std",
|
||||
"sp-mmr-primitives/std",
|
||||
"sp-runtime/std",
|
||||
"sp-session/std",
|
||||
"sp-staking/std",
|
||||
"sp-std/std",
|
||||
"frame-system/std",
|
||||
"frame-system-rpc-runtime-api/std",
|
||||
"offchain-primitives/std",
|
||||
"block-builder-api/std",
|
||||
"tx-pool-api/std",
|
||||
"sp-version/std",
|
||||
"serde_derive",
|
||||
"serde/std",
|
||||
"log/std",
|
||||
"babe-primitives/std",
|
||||
"sp-session/std",
|
||||
"runtime-common/std",
|
||||
"runtime-parachains/std",
|
||||
"beefy-primitives/std",
|
||||
"rococo-runtime-constants/std",
|
||||
"xcm/std",
|
||||
"xcm-executor/std",
|
||||
"xcm-builder/std",
|
||||
"pallet-xcm/std",
|
||||
"pallet-utility/std",
|
||||
"log/std",
|
||||
"pallet-multisig/std",
|
||||
]
|
||||
runtime-benchmarks = [
|
||||
"runtime-common/runtime-benchmarks",
|
||||
"frame-benchmarking/runtime-benchmarks",
|
||||
"frame-support/runtime-benchmarks",
|
||||
"frame-system/runtime-benchmarks",
|
||||
"sp-runtime/runtime-benchmarks",
|
||||
"pallet-babe/runtime-benchmarks",
|
||||
"pallet-balances/runtime-benchmarks",
|
||||
"pallet-bounties/runtime-benchmarks",
|
||||
"pallet-child-bounties/runtime-benchmarks",
|
||||
"pallet-collective/runtime-benchmarks",
|
||||
"pallet-democracy/runtime-benchmarks",
|
||||
"pallet-elections-phragmen/runtime-benchmarks",
|
||||
"pallet-gilt/runtime-benchmarks",
|
||||
"pallet-grandpa/runtime-benchmarks",
|
||||
"pallet-identity/runtime-benchmarks",
|
||||
"pallet-im-online/runtime-benchmarks",
|
||||
"pallet-indices/runtime-benchmarks",
|
||||
"pallet-membership/runtime-benchmarks",
|
||||
"pallet-multisig/runtime-benchmarks",
|
||||
"pallet-preimage/runtime-benchmarks",
|
||||
"pallet-proxy/runtime-benchmarks",
|
||||
"pallet-scheduler/runtime-benchmarks",
|
||||
"pallet-society/runtime-benchmarks",
|
||||
"pallet-recovery/runtime-benchmarks",
|
||||
"pallet-staking/runtime-benchmarks",
|
||||
"pallet-timestamp/runtime-benchmarks",
|
||||
"pallet-tips/runtime-benchmarks",
|
||||
"pallet-treasury/runtime-benchmarks",
|
||||
"pallet-utility/runtime-benchmarks",
|
||||
"pallet-vesting/runtime-benchmarks",
|
||||
"pallet-xcm/runtime-benchmarks",
|
||||
"frame-system-benchmarking",
|
||||
"hex-literal",
|
||||
"xcm-builder/runtime-benchmarks",
|
||||
"runtime-parachains/runtime-benchmarks",
|
||||
"pallet-xcm-benchmarks",
|
||||
]
|
||||
try-runtime = [
|
||||
"frame-executive/try-runtime",
|
||||
"frame-system/try-runtime",
|
||||
"pallet-authority-discovery/try-runtime",
|
||||
"pallet-authorship/try-runtime",
|
||||
"pallet-balances/try-runtime",
|
||||
"pallet-bounties/try-runtime",
|
||||
"pallet-child-bounties/try-runtime",
|
||||
"pallet-transaction-payment/try-runtime",
|
||||
"pallet-collective/try-runtime",
|
||||
"pallet-elections-phragmen/try-runtime",
|
||||
"pallet-democracy/try-runtime",
|
||||
"pallet-grandpa/try-runtime",
|
||||
"pallet-identity/try-runtime",
|
||||
"pallet-im-online/try-runtime",
|
||||
"pallet-indices/try-runtime",
|
||||
"pallet-membership/try-runtime",
|
||||
"pallet-multisig/try-runtime",
|
||||
"pallet-offences/try-runtime",
|
||||
"pallet-preimage/try-runtime",
|
||||
"pallet-proxy/try-runtime",
|
||||
"pallet-recovery/try-runtime",
|
||||
"pallet-scheduler/try-runtime",
|
||||
"pallet-session/try-runtime",
|
||||
"pallet-society/try-runtime",
|
||||
"pallet-sudo/try-runtime",
|
||||
"pallet-staking/try-runtime",
|
||||
"pallet-timestamp/try-runtime",
|
||||
"pallet-tips/try-runtime",
|
||||
"pallet-treasury/try-runtime",
|
||||
"pallet-utility/try-runtime",
|
||||
"pallet-vesting/try-runtime",
|
||||
"pallet-babe/try-runtime",
|
||||
"runtime-common/try-runtime",
|
||||
]
|
||||
# When enabled, the runtime API will not be build.
|
||||
#
|
||||
@@ -145,53 +252,6 @@ std = [
|
||||
# runtime without clashing with the runtime API exported functions
|
||||
# in WASM.
|
||||
disable-runtime-api = []
|
||||
runtime-benchmarks = [
|
||||
"runtime-common/runtime-benchmarks",
|
||||
"frame-support/runtime-benchmarks",
|
||||
"frame-system/runtime-benchmarks",
|
||||
"sp-runtime/runtime-benchmarks",
|
||||
"pallet-babe/runtime-benchmarks",
|
||||
"pallet-balances/runtime-benchmarks",
|
||||
"pallet-collective/runtime-benchmarks",
|
||||
"pallet-grandpa/runtime-benchmarks",
|
||||
"pallet-im-online/runtime-benchmarks",
|
||||
"pallet-indices/runtime-benchmarks",
|
||||
"pallet-membership/runtime-benchmarks",
|
||||
"pallet-proxy/runtime-benchmarks",
|
||||
"pallet-staking/runtime-benchmarks",
|
||||
"pallet-timestamp/runtime-benchmarks",
|
||||
"pallet-utility/runtime-benchmarks",
|
||||
"pallet-xcm/runtime-benchmarks",
|
||||
"xcm-builder/runtime-benchmarks",
|
||||
"pallet-multisig/runtime-benchmarks",
|
||||
"frame-benchmarking/runtime-benchmarks",
|
||||
"hex-literal",
|
||||
"frame-system-benchmarking",
|
||||
"runtime-parachains/runtime-benchmarks",
|
||||
]
|
||||
try-runtime = [
|
||||
"frame-executive/try-runtime",
|
||||
"frame-support/try-runtime",
|
||||
"frame-system/try-runtime",
|
||||
"pallet-authority-discovery/try-runtime",
|
||||
"pallet-authorship/try-runtime",
|
||||
"pallet-babe/try-runtime",
|
||||
"pallet-balances/try-runtime",
|
||||
"pallet-collective/try-runtime",
|
||||
"pallet-grandpa/try-runtime",
|
||||
"pallet-sudo/try-runtime",
|
||||
"pallet-indices/try-runtime",
|
||||
"pallet-im-online/try-runtime",
|
||||
"pallet-membership/try-runtime",
|
||||
"pallet-session/try-runtime",
|
||||
"pallet-proxy/try-runtime",
|
||||
"pallet-staking/try-runtime",
|
||||
"pallet-offences/try-runtime",
|
||||
"pallet-timestamp/try-runtime",
|
||||
"pallet-transaction-payment/try-runtime",
|
||||
"runtime-common/try-runtime",
|
||||
"pallet-multisig/try-runtime",
|
||||
]
|
||||
|
||||
# Set timing constants (e.g. session period) to faster versions to speed up testing.
|
||||
fast-runtime = []
|
||||
|
||||
@@ -22,13 +22,16 @@ pub mod weights;
|
||||
pub mod currency {
|
||||
use primitives::v2::Balance;
|
||||
|
||||
/// The existential deposit.
|
||||
pub const EXISTENTIAL_DEPOSIT: Balance = 1 * CENTS;
|
||||
|
||||
pub const UNITS: Balance = 1_000_000_000_000;
|
||||
pub const DOLLARS: Balance = UNITS;
|
||||
pub const CENTS: Balance = DOLLARS / 100;
|
||||
pub const CENTS: Balance = UNITS / 30_000;
|
||||
pub const GRAND: Balance = CENTS * 100_000;
|
||||
pub const MILLICENTS: Balance = CENTS / 1_000;
|
||||
|
||||
pub const fn deposit(items: u32, bytes: u32) -> Balance {
|
||||
items as Balance * 1 * DOLLARS + (bytes as Balance) * 5 * MILLICENTS
|
||||
items as Balance * 2_000 * CENTS + (bytes as Balance) * 100 * MILLICENTS
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +39,6 @@ pub mod currency {
|
||||
pub mod time {
|
||||
use primitives::v2::{BlockNumber, Moment};
|
||||
use runtime_common::prod_or_fast;
|
||||
|
||||
pub const MILLISECS_PER_BLOCK: Moment = 6000;
|
||||
pub const SLOT_DURATION: Moment = MILLISECS_PER_BLOCK;
|
||||
pub const DEFAULT_EPOCH_DURATION: BlockNumber = prod_or_fast!(1 * HOURS, 1 * MINUTES);
|
||||
@@ -48,6 +50,7 @@ pub mod time {
|
||||
pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber);
|
||||
pub const HOURS: BlockNumber = MINUTES * 60;
|
||||
pub const DAYS: BlockNumber = HOURS * 24;
|
||||
pub const WEEKS: BlockNumber = DAYS * 7;
|
||||
|
||||
// 1 in 4 blocks (on average, not counting collisions) will be primary babe blocks.
|
||||
// The choice of is done in accordance to the slot duration and expected target
|
||||
@@ -83,7 +86,7 @@ pub mod fee {
|
||||
impl WeightToFeePolynomial for WeightToFee {
|
||||
type Balance = Balance;
|
||||
fn polynomial() -> WeightToFeeCoefficients<Self::Balance> {
|
||||
// in Westend, extrinsic base weight (smallest non-zero weight) is mapped to 1/10 CENT:
|
||||
// in Rococo, extrinsic base weight (smallest non-zero weight) is mapped to 1/10 CENT:
|
||||
let p = super::currency::CENTS;
|
||||
let q = 10 * Balance::from(ExtrinsicBaseWeight::get().ref_time());
|
||||
smallvec![WeightToFeeCoefficient {
|
||||
@@ -99,7 +102,7 @@ pub mod fee {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::{
|
||||
currency::{CENTS, DOLLARS, MILLICENTS},
|
||||
currency::{CENTS, MILLICENTS},
|
||||
fee::WeightToFee,
|
||||
};
|
||||
use crate::weights::ExtrinsicBaseWeight;
|
||||
@@ -109,10 +112,10 @@ mod tests {
|
||||
#[test]
|
||||
// Test that the fee for `MAXIMUM_BLOCK_WEIGHT` of weight has sane bounds.
|
||||
fn full_block_fee_is_correct() {
|
||||
// A full block should cost between 10 and 100 DOLLARS.
|
||||
// A full block should cost between 1,000 and 10,000 CENTS.
|
||||
let full_block = WeightToFee::weight_to_fee(&MAXIMUM_BLOCK_WEIGHT);
|
||||
assert!(full_block >= 10 * DOLLARS);
|
||||
assert!(full_block <= 100 * DOLLARS);
|
||||
assert!(full_block >= 1_000 * CENTS);
|
||||
assert!(full_block <= 10_000 * CENTS);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
+1257
-652
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,91 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `frame_benchmarking::baseline`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-06-20, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=frame_benchmarking::baseline
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/frame_benchmarking_baseline.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `frame_benchmarking::baseline`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> frame_benchmarking::baseline::WeightInfo for WeightInfo<T> {
|
||||
/// The range of component `i` is `[0, 1000000]`.
|
||||
fn addition(_i: u32, ) -> Weight {
|
||||
(126_000 as Weight)
|
||||
}
|
||||
/// The range of component `i` is `[0, 1000000]`.
|
||||
fn subtraction(_i: u32, ) -> Weight {
|
||||
(117_000 as Weight)
|
||||
}
|
||||
/// The range of component `i` is `[0, 1000000]`.
|
||||
fn multiplication(_i: u32, ) -> Weight {
|
||||
(132_000 as Weight)
|
||||
}
|
||||
/// The range of component `i` is `[0, 1000000]`.
|
||||
fn division(_i: u32, ) -> Weight {
|
||||
(132_000 as Weight)
|
||||
}
|
||||
/// The range of component `i` is `[0, 100]`.
|
||||
fn hashing(i: u32, ) -> Weight {
|
||||
(19_331_786_000 as Weight)
|
||||
// Standard Error: 113_000
|
||||
.saturating_add((410_000 as Weight).saturating_mul(i as Weight))
|
||||
}
|
||||
/// The range of component `i` is `[1, 100]`.
|
||||
fn sr25519_verification(i: u32, ) -> Weight {
|
||||
(0 as Weight)
|
||||
// Standard Error: 15_000
|
||||
.saturating_add((47_597_000 as Weight).saturating_mul(i as Weight))
|
||||
}
|
||||
// Storage: Skipped Metadata (r:0 w:0)
|
||||
/// The range of component `i` is `[0, 1000]`.
|
||||
fn storage_read(i: u32, ) -> Weight {
|
||||
(0 as Weight)
|
||||
// Standard Error: 3_000
|
||||
.saturating_add((2_126_000 as Weight).saturating_mul(i as Weight))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(i as Weight)))
|
||||
}
|
||||
// Storage: Skipped Metadata (r:0 w:0)
|
||||
/// The range of component `i` is `[0, 1000]`.
|
||||
fn storage_write(i: u32, ) -> Weight {
|
||||
(0 as Weight)
|
||||
// Standard Error: 0
|
||||
.saturating_add((328_000 as Weight).saturating_mul(i as Weight))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(i as Weight)))
|
||||
}
|
||||
}
|
||||
@@ -17,16 +17,29 @@
|
||||
|
||||
pub mod frame_system;
|
||||
pub mod pallet_balances;
|
||||
pub mod pallet_collective;
|
||||
pub mod pallet_bounties;
|
||||
pub mod pallet_child_bounties;
|
||||
pub mod pallet_collective_council;
|
||||
pub mod pallet_collective_technical_committee;
|
||||
pub mod pallet_democracy;
|
||||
pub mod pallet_elections_phragmen;
|
||||
pub mod pallet_gilt;
|
||||
pub mod pallet_identity;
|
||||
pub mod pallet_im_online;
|
||||
pub mod pallet_indices;
|
||||
pub mod pallet_membership;
|
||||
pub mod pallet_multisig;
|
||||
pub mod pallet_preimage;
|
||||
pub mod pallet_proxy;
|
||||
pub mod pallet_scheduler;
|
||||
pub mod pallet_session;
|
||||
pub mod pallet_timestamp;
|
||||
pub mod pallet_tips;
|
||||
pub mod pallet_treasury;
|
||||
pub mod pallet_utility;
|
||||
pub mod pallet_vesting;
|
||||
pub mod runtime_common_auctions;
|
||||
pub mod runtime_common_claims;
|
||||
pub mod runtime_common_crowdloan;
|
||||
pub mod runtime_common_paras_registrar;
|
||||
pub mod runtime_common_slots;
|
||||
@@ -37,3 +50,4 @@ pub mod runtime_parachains_initializer;
|
||||
pub mod runtime_parachains_paras;
|
||||
pub mod runtime_parachains_paras_inherent;
|
||||
pub mod runtime_parachains_ump;
|
||||
pub mod xcm;
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_bounties`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_bounties
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_bounties.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_bounties`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_bounties::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Bounties BountyCount (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: Bounties BountyDescriptions (r:0 w:1)
|
||||
// Storage: Bounties Bounties (r:0 w:1)
|
||||
/// The range of component `d` is `[0, 16384]`.
|
||||
fn propose_bounty(d: u32, ) -> Weight {
|
||||
Weight::from_ref_time(26_654_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(1_000 as u64).saturating_mul(d as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: Bounties BountyApprovals (r:1 w:1)
|
||||
fn approve_bounty() -> Weight {
|
||||
Weight::from_ref_time(9_776_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
fn propose_curator() -> Weight {
|
||||
Weight::from_ref_time(8_350_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
fn unassign_curator() -> Weight {
|
||||
Weight::from_ref_time(34_804_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
fn accept_curator() -> Weight {
|
||||
Weight::from_ref_time(23_414_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:0)
|
||||
fn award_bounty() -> Weight {
|
||||
Weight::from_ref_time(20_148_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: System Account (r:3 w:3)
|
||||
// Storage: ChildBounties ChildrenCuratorFees (r:1 w:1)
|
||||
// Storage: Bounties BountyDescriptions (r:0 w:1)
|
||||
fn claim_bounty() -> Weight {
|
||||
Weight::from_ref_time(64_115_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:0)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: Bounties BountyDescriptions (r:0 w:1)
|
||||
fn close_bounty_proposed() -> Weight {
|
||||
Weight::from_ref_time(39_628_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:0)
|
||||
// Storage: System Account (r:2 w:2)
|
||||
// Storage: Bounties BountyDescriptions (r:0 w:1)
|
||||
fn close_bounty_active() -> Weight {
|
||||
Weight::from_ref_time(47_429_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
fn extend_bounty_expiry() -> Weight {
|
||||
Weight::from_ref_time(17_322_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Bounties BountyApprovals (r:1 w:1)
|
||||
// Storage: Bounties Bounties (r:1 w:1)
|
||||
// Storage: System Account (r:2 w:2)
|
||||
/// The range of component `b` is `[1, 100]`.
|
||||
fn spend_funds(b: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 30_000
|
||||
.saturating_add(Weight::from_ref_time(30_775_000 as u64).saturating_mul(b as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((3 as u64).saturating_mul(b as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(b as u64)))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_child_bounties`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_child_bounties
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_child_bounties.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_child_bounties`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_child_bounties::WeightInfo for WeightInfo<T> {
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:1)
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: System Account (r:2 w:2)
|
||||
// Storage: ChildBounties ChildBountyCount (r:1 w:1)
|
||||
// Storage: ChildBounties ChildBountyDescriptions (r:0 w:1)
|
||||
// Storage: ChildBounties ChildBounties (r:0 w:1)
|
||||
/// The range of component `d` is `[0, 16384]`.
|
||||
fn add_child_bounty(d: u32, ) -> Weight {
|
||||
Weight::from_ref_time(48_890_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(1_000 as u64).saturating_mul(d as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
// Storage: ChildBounties ChildrenCuratorFees (r:1 w:1)
|
||||
fn propose_curator() -> Weight {
|
||||
Weight::from_ref_time(14_114_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
fn accept_curator() -> Weight {
|
||||
Weight::from_ref_time(26_807_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
fn unassign_curator() -> Weight {
|
||||
Weight::from_ref_time(39_640_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
fn award_child_bounty() -> Weight {
|
||||
Weight::from_ref_time(21_445_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
// Storage: System Account (r:3 w:3)
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:1)
|
||||
// Storage: ChildBounties ChildBountyDescriptions (r:0 w:1)
|
||||
fn claim_child_bounty() -> Weight {
|
||||
Weight::from_ref_time(65_771_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
// Storage: ChildBounties ChildrenCuratorFees (r:1 w:1)
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:1)
|
||||
// Storage: System Account (r:2 w:2)
|
||||
// Storage: ChildBounties ChildBountyDescriptions (r:0 w:1)
|
||||
fn close_child_bounty_added() -> Weight {
|
||||
Weight::from_ref_time(46_230_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(6 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Bounties Bounties (r:1 w:0)
|
||||
// Storage: ChildBounties ChildBounties (r:1 w:1)
|
||||
// Storage: System Account (r:3 w:3)
|
||||
// Storage: ChildBounties ChildrenCuratorFees (r:1 w:1)
|
||||
// Storage: ChildBounties ParentChildBounties (r:1 w:1)
|
||||
// Storage: ChildBounties ChildBountyDescriptions (r:0 w:1)
|
||||
fn close_child_bounty_active() -> Weight {
|
||||
Weight::from_ref_time(56_148_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(7 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(7 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
// Copyright 2017-2021 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_collective`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2021-08-27, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 128
|
||||
|
||||
// Executed Command:
|
||||
// target/release/polkadot
|
||||
// benchmark
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_collective
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --heap-pages=4096
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/
|
||||
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_collective`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_collective::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Instance1Collective Members (r:1 w:1)
|
||||
// Storage: Instance1Collective Proposals (r:1 w:0)
|
||||
// Storage: Instance1Collective Voting (r:100 w:100)
|
||||
// Storage: Instance1Collective Prime (r:0 w:1)
|
||||
fn set_members(m: u32, n: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(14_448_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(85_000 as u64).saturating_mul(n as u64))
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(19_620_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(p as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(p as u64)))
|
||||
}
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
fn execute(b: u32, m: u32, ) -> Weight {
|
||||
Weight::from_ref_time(22_536_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(84_000 as u64).saturating_mul(m as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective ProposalOf (r:1 w:0)
|
||||
fn propose_execute(b: u32, m: u32, ) -> Weight {
|
||||
Weight::from_ref_time(27_600_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(161_000 as u64).saturating_mul(m as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective ProposalOf (r:1 w:1)
|
||||
// Storage: Instance1Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance1Collective ProposalCount (r:1 w:1)
|
||||
// Storage: Instance1Collective Voting (r:0 w:1)
|
||||
fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(42_192_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(4_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(87_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(361_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective Voting (r:1 w:1)
|
||||
fn vote(m: u32, ) -> Weight {
|
||||
Weight::from_ref_time(32_307_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(199_000 as u64).saturating_mul(m as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Voting (r:1 w:1)
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance1Collective ProposalOf (r:0 w:1)
|
||||
fn close_early_disapproved(m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(41_436_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(170_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(333_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Voting (r:1 w:1)
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective ProposalOf (r:1 w:1)
|
||||
// Storage: Instance1Collective Proposals (r:1 w:1)
|
||||
fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(57_836_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(2_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(170_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(339_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Voting (r:1 w:1)
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective Prime (r:1 w:0)
|
||||
// Storage: Instance1Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance1Collective ProposalOf (r:0 w:1)
|
||||
fn close_disapproved(m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(45_551_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(172_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(338_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Voting (r:1 w:1)
|
||||
// Storage: Instance1Collective Members (r:1 w:0)
|
||||
// Storage: Instance1Collective Prime (r:1 w:0)
|
||||
// Storage: Instance1Collective ProposalOf (r:1 w:1)
|
||||
// Storage: Instance1Collective Proposals (r:1 w:1)
|
||||
fn close_approved(b: u32, m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(61_497_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(2_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(171_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(343_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance1Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance1Collective Voting (r:0 w:1)
|
||||
// Storage: Instance1Collective ProposalOf (r:0 w:1)
|
||||
fn disapprove_proposal(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(25_573_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(335_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
// Copyright 2017-2021 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_collective`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2021-08-27, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 128
|
||||
|
||||
// Executed Command:
|
||||
// target/release/polkadot
|
||||
// benchmark
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_collective
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --heap-pages=4096
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/
|
||||
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_collective`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_collective::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Instance2Collective Members (r:1 w:1)
|
||||
// Storage: Instance2Collective Proposals (r:1 w:0)
|
||||
// Storage: Instance2Collective Voting (r:100 w:100)
|
||||
// Storage: Instance2Collective Prime (r:0 w:1)
|
||||
fn set_members(m: u32, n: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(14_473_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(73_000 as u64).saturating_mul(n as u64))
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(19_551_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(p as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(p as u64)))
|
||||
}
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
fn execute(b: u32, m: u32, ) -> Weight {
|
||||
Weight::from_ref_time(22_690_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(80_000 as u64).saturating_mul(m as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective ProposalOf (r:1 w:0)
|
||||
fn propose_execute(b: u32, m: u32, ) -> Weight {
|
||||
Weight::from_ref_time(27_473_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(159_000 as u64).saturating_mul(m as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective ProposalOf (r:1 w:1)
|
||||
// Storage: Instance2Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance2Collective ProposalCount (r:1 w:1)
|
||||
// Storage: Instance2Collective Voting (r:0 w:1)
|
||||
fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(42_047_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(4_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(85_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(360_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective Voting (r:1 w:1)
|
||||
fn vote(m: u32, ) -> Weight {
|
||||
Weight::from_ref_time(32_023_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(199_000 as u64).saturating_mul(m as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Voting (r:1 w:1)
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance2Collective ProposalOf (r:0 w:1)
|
||||
fn close_early_disapproved(m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(41_107_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(171_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(332_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Voting (r:1 w:1)
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective ProposalOf (r:1 w:1)
|
||||
// Storage: Instance2Collective Proposals (r:1 w:1)
|
||||
fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(57_783_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(2_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(167_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(336_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Voting (r:1 w:1)
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective Prime (r:1 w:0)
|
||||
// Storage: Instance2Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance2Collective ProposalOf (r:0 w:1)
|
||||
fn close_disapproved(m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(45_646_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(170_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(335_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Voting (r:1 w:1)
|
||||
// Storage: Instance2Collective Members (r:1 w:0)
|
||||
// Storage: Instance2Collective Prime (r:1 w:0)
|
||||
// Storage: Instance2Collective ProposalOf (r:1 w:1)
|
||||
// Storage: Instance2Collective Proposals (r:1 w:1)
|
||||
fn close_approved(b: u32, m: u32, p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(61_376_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(2_000 as u64).saturating_mul(b as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(172_000 as u64).saturating_mul(m as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(339_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Instance2Collective Proposals (r:1 w:1)
|
||||
// Storage: Instance2Collective Voting (r:0 w:1)
|
||||
// Storage: Instance2Collective ProposalOf (r:0 w:1)
|
||||
fn disapprove_proposal(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(25_286_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(336_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,299 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_democracy`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_democracy
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_democracy.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_democracy`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_democracy::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Democracy PublicPropCount (r:1 w:1)
|
||||
// Storage: Democracy PublicProps (r:1 w:1)
|
||||
// Storage: Democracy Blacklist (r:1 w:0)
|
||||
// Storage: Democracy DepositOf (r:0 w:1)
|
||||
fn propose() -> Weight {
|
||||
Weight::from_ref_time(37_453_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy DepositOf (r:1 w:1)
|
||||
/// The range of component `s` is `[0, 100]`.
|
||||
fn second(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(27_807_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(69_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Democracy VotingOf (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn vote_new(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(35_336_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(120_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Democracy VotingOf (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn vote_existing(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(35_107_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(123_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Democracy Cancellations (r:1 w:1)
|
||||
fn emergency_cancel() -> Weight {
|
||||
Weight::from_ref_time(17_752_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Democracy PublicProps (r:1 w:1)
|
||||
// Storage: Democracy NextExternal (r:1 w:1)
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Democracy Blacklist (r:0 w:1)
|
||||
// Storage: Democracy DepositOf (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `p` is `[1, 100]`.
|
||||
fn blacklist(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(52_116_000 as u64)
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(194_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Democracy NextExternal (r:1 w:1)
|
||||
// Storage: Democracy Blacklist (r:1 w:0)
|
||||
/// The range of component `v` is `[1, 100]`.
|
||||
fn external_propose(v: u32, ) -> Weight {
|
||||
Weight::from_ref_time(10_194_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(10_000 as u64).saturating_mul(v as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy NextExternal (r:0 w:1)
|
||||
fn external_propose_majority() -> Weight {
|
||||
Weight::from_ref_time(3_700_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy NextExternal (r:0 w:1)
|
||||
fn external_propose_default() -> Weight {
|
||||
Weight::from_ref_time(3_713_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy NextExternal (r:1 w:1)
|
||||
// Storage: Democracy ReferendumCount (r:1 w:1)
|
||||
// Storage: Democracy ReferendumInfoOf (r:0 w:1)
|
||||
fn fast_track() -> Weight {
|
||||
Weight::from_ref_time(17_441_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy NextExternal (r:1 w:1)
|
||||
// Storage: Democracy Blacklist (r:1 w:1)
|
||||
/// The range of component `v` is `[0, 100]`.
|
||||
fn veto_external(v: u32, ) -> Weight {
|
||||
Weight::from_ref_time(18_536_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(42_000 as u64).saturating_mul(v as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Democracy PublicProps (r:1 w:1)
|
||||
// Storage: Democracy DepositOf (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `p` is `[1, 100]`.
|
||||
fn cancel_proposal(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(42_174_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(164_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy ReferendumInfoOf (r:0 w:1)
|
||||
fn cancel_referendum() -> Weight {
|
||||
Weight::from_ref_time(11_892_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Scheduler Lookup (r:1 w:1)
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn cancel_queued(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(23_252_000 as u64)
|
||||
// Standard Error: 5_000
|
||||
.saturating_add(Weight::from_ref_time(2_242_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Democracy LowestUnbaked (r:1 w:1)
|
||||
// Storage: Democracy ReferendumCount (r:1 w:0)
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:0)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn on_initialize_base(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(1_457_000 as u64)
|
||||
// Standard Error: 3_000
|
||||
.saturating_add(Weight::from_ref_time(2_956_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(r as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy LowestUnbaked (r:1 w:1)
|
||||
// Storage: Democracy ReferendumCount (r:1 w:0)
|
||||
// Storage: Democracy LastTabledWasExternal (r:1 w:0)
|
||||
// Storage: Democracy NextExternal (r:1 w:0)
|
||||
// Storage: Democracy PublicProps (r:1 w:0)
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:0)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn on_initialize_base_with_launch_period(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(6_240_000 as u64)
|
||||
// Standard Error: 3_000
|
||||
.saturating_add(Weight::from_ref_time(2_963_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(r as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy VotingOf (r:3 w:3)
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn delegate(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(34_480_000 as u64)
|
||||
// Standard Error: 5_000
|
||||
.saturating_add(Weight::from_ref_time(3_908_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(r as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(r as u64)))
|
||||
}
|
||||
// Storage: Democracy VotingOf (r:2 w:2)
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn undelegate(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(17_446_000 as u64)
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(3_917_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(r as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(r as u64)))
|
||||
}
|
||||
// Storage: Democracy PublicProps (r:0 w:1)
|
||||
fn clear_public_proposals() -> Weight {
|
||||
Weight::from_ref_time(3_727_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy Preimages (r:1 w:1)
|
||||
/// The range of component `b` is `[0, 16384]`.
|
||||
fn note_preimage(b: u32, ) -> Weight {
|
||||
Weight::from_ref_time(25_720_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(b as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy Preimages (r:1 w:1)
|
||||
/// The range of component `b` is `[0, 16384]`.
|
||||
fn note_imminent_preimage(b: u32, ) -> Weight {
|
||||
Weight::from_ref_time(17_884_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(b as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy Preimages (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:0)
|
||||
/// The range of component `b` is `[0, 16384]`.
|
||||
fn reap_preimage(b: u32, ) -> Weight {
|
||||
Weight::from_ref_time(24_695_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(1_000 as u64).saturating_mul(b as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Democracy VotingOf (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn unlock_remove(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(22_207_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(36_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy VotingOf (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn unlock_set(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(21_561_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(110_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Democracy VotingOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn remove_vote(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(13_204_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(105_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Democracy ReferendumInfoOf (r:1 w:1)
|
||||
// Storage: Democracy VotingOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 99]`.
|
||||
fn remove_other_vote(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(12_994_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(106_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,183 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_elections_phragmen`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_elections_phragmen
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_elections_phragmen.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_elections_phragmen`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_elections_phragmen::WeightInfo for WeightInfo<T> {
|
||||
// Storage: PhragmenElection Candidates (r:1 w:0)
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:0)
|
||||
// Storage: PhragmenElection Voting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `v` is `[1, 16]`.
|
||||
fn vote_equal(v: u32, ) -> Weight {
|
||||
Weight::from_ref_time(24_107_000 as u64)
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(184_000 as u64).saturating_mul(v as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Candidates (r:1 w:0)
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:0)
|
||||
// Storage: PhragmenElection Voting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `v` is `[2, 16]`.
|
||||
fn vote_more(v: u32, ) -> Weight {
|
||||
Weight::from_ref_time(36_869_000 as u64)
|
||||
// Standard Error: 5_000
|
||||
.saturating_add(Weight::from_ref_time(165_000 as u64).saturating_mul(v as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Candidates (r:1 w:0)
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:0)
|
||||
// Storage: PhragmenElection Voting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `v` is `[2, 16]`.
|
||||
fn vote_less(v: u32, ) -> Weight {
|
||||
Weight::from_ref_time(36_445_000 as u64)
|
||||
// Standard Error: 4_000
|
||||
.saturating_add(Weight::from_ref_time(199_000 as u64).saturating_mul(v as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Voting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
fn remove_voter() -> Weight {
|
||||
Weight::from_ref_time(33_035_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Candidates (r:1 w:1)
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:0)
|
||||
/// The range of component `c` is `[1, 1000]`.
|
||||
fn submit_candidacy(c: u32, ) -> Weight {
|
||||
Weight::from_ref_time(25_946_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(101_000 as u64).saturating_mul(c as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Candidates (r:1 w:1)
|
||||
/// The range of component `c` is `[1, 1000]`.
|
||||
fn renounce_candidacy_candidate(c: u32, ) -> Weight {
|
||||
Weight::from_ref_time(22_945_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(69_000 as u64).saturating_mul(c as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Members (r:1 w:1)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:1)
|
||||
// Storage: Council Prime (r:1 w:1)
|
||||
// Storage: Council Proposals (r:1 w:0)
|
||||
// Storage: Council Members (r:0 w:1)
|
||||
fn renounce_candidacy_members() -> Weight {
|
||||
Weight::from_ref_time(41_502_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:1)
|
||||
fn renounce_candidacy_runners_up() -> Weight {
|
||||
Weight::from_ref_time(30_791_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Benchmark Override (r:0 w:0)
|
||||
fn remove_member_without_replacement() -> Weight {
|
||||
Weight::from_ref_time(2_000_000_000_000 as u64)
|
||||
}
|
||||
// Storage: PhragmenElection Members (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:1)
|
||||
// Storage: Council Prime (r:1 w:1)
|
||||
// Storage: Council Proposals (r:1 w:0)
|
||||
// Storage: Council Members (r:0 w:1)
|
||||
fn remove_member_with_replacement() -> Weight {
|
||||
Weight::from_ref_time(57_184_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(5 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(5 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Voting (r:5001 w:5000)
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:0)
|
||||
// Storage: PhragmenElection Candidates (r:1 w:0)
|
||||
// Storage: Balances Locks (r:5000 w:5000)
|
||||
// Storage: System Account (r:5000 w:5000)
|
||||
/// The range of component `v` is `[5000, 10000]`.
|
||||
/// The range of component `d` is `[1, 5000]`.
|
||||
fn clean_defunct_voters(v: u32, _d: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 85_000
|
||||
.saturating_add(Weight::from_ref_time(61_507_000 as u64).saturating_mul(v as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((3 as u64).saturating_mul(v as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(v as u64)))
|
||||
}
|
||||
// Storage: PhragmenElection Candidates (r:1 w:1)
|
||||
// Storage: PhragmenElection Members (r:1 w:1)
|
||||
// Storage: PhragmenElection RunnersUp (r:1 w:1)
|
||||
// Storage: PhragmenElection Voting (r:10001 w:0)
|
||||
// Storage: Council Proposals (r:1 w:0)
|
||||
// Storage: PhragmenElection ElectionRounds (r:1 w:1)
|
||||
// Storage: Council Members (r:0 w:1)
|
||||
// Storage: Council Prime (r:0 w:1)
|
||||
// Storage: System Account (r:3 w:3)
|
||||
/// The range of component `c` is `[1, 1000]`.
|
||||
/// The range of component `v` is `[1, 10000]`.
|
||||
/// The range of component `e` is `[10000, 160000]`.
|
||||
fn election_phragmen(c: u32, v: u32, e: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 1_864_000
|
||||
.saturating_add(Weight::from_ref_time(167_385_000 as u64).saturating_mul(v as u64))
|
||||
// Standard Error: 124_000
|
||||
.saturating_add(Weight::from_ref_time(9_721_000 as u64).saturating_mul(e as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(265 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(c as u64)))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(v as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(c as u64)))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_gilt`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_gilt
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_gilt.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_gilt`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_gilt::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Gilt Queues (r:1 w:1)
|
||||
// Storage: Gilt QueueTotals (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 999]`.
|
||||
fn place_bid(l: u32, ) -> Weight {
|
||||
Weight::from_ref_time(36_767_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(115_000 as u64).saturating_mul(l as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Gilt Queues (r:1 w:1)
|
||||
// Storage: Gilt QueueTotals (r:1 w:1)
|
||||
fn place_bid_max() -> Weight {
|
||||
Weight::from_ref_time(119_333_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Gilt Queues (r:1 w:1)
|
||||
// Storage: Gilt QueueTotals (r:1 w:1)
|
||||
/// The range of component `l` is `[1, 1000]`.
|
||||
fn retract_bid(l: u32, ) -> Weight {
|
||||
Weight::from_ref_time(37_108_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(94_000 as u64).saturating_mul(l as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Gilt ActiveTotal (r:1 w:1)
|
||||
fn set_target() -> Weight {
|
||||
Weight::from_ref_time(5_188_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Gilt Active (r:1 w:1)
|
||||
// Storage: Gilt ActiveTotal (r:1 w:1)
|
||||
fn thaw() -> Weight {
|
||||
Weight::from_ref_time(43_654_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Gilt ActiveTotal (r:1 w:0)
|
||||
fn pursue_target_noop() -> Weight {
|
||||
Weight::from_ref_time(1_584_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
}
|
||||
// Storage: Gilt ActiveTotal (r:1 w:1)
|
||||
// Storage: Gilt QueueTotals (r:1 w:1)
|
||||
// Storage: Gilt Queues (r:1 w:1)
|
||||
// Storage: Gilt Active (r:0 w:1)
|
||||
/// The range of component `b` is `[1, 1000]`.
|
||||
fn pursue_target_per_item(b: u32, ) -> Weight {
|
||||
Weight::from_ref_time(21_464_000 as u64)
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(4_387_000 as u64).saturating_mul(b as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(b as u64)))
|
||||
}
|
||||
// Storage: Gilt ActiveTotal (r:1 w:1)
|
||||
// Storage: Gilt QueueTotals (r:1 w:1)
|
||||
// Storage: Gilt Queues (r:1 w:1)
|
||||
// Storage: Gilt Active (r:0 w:1)
|
||||
/// The range of component `q` is `[1, 300]`.
|
||||
fn pursue_target_per_queue(q: u32, ) -> Weight {
|
||||
Weight::from_ref_time(12_881_000 as u64)
|
||||
// Standard Error: 8_000
|
||||
.saturating_add(Weight::from_ref_time(8_285_000 as u64).saturating_mul(q as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(q as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(q as u64)))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,233 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_identity`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_identity
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_identity.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_identity`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_identity::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Identity Registrars (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 19]`.
|
||||
fn add_registrar(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(16_146_000 as u64)
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(164_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 20]`.
|
||||
/// The range of component `x` is `[1, 100]`.
|
||||
fn set_identity(r: u32, x: u32, ) -> Weight {
|
||||
Weight::from_ref_time(28_556_000 as u64)
|
||||
// Standard Error: 7_000
|
||||
.saturating_add(Weight::from_ref_time(208_000 as u64).saturating_mul(r as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(371_000 as u64).saturating_mul(x as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:0)
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
// Storage: Identity SuperOf (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 100]`.
|
||||
fn set_subs_new(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(25_214_000 as u64)
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(3_032_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:0)
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
// Storage: Identity SuperOf (r:0 w:1)
|
||||
/// The range of component `p` is `[1, 100]`.
|
||||
fn set_subs_old(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(26_402_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(916_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(p as u64)))
|
||||
}
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
// Storage: Identity IdentityOf (r:1 w:1)
|
||||
// Storage: Identity SuperOf (r:0 w:100)
|
||||
/// The range of component `r` is `[1, 20]`.
|
||||
/// The range of component `s` is `[1, 100]`.
|
||||
/// The range of component `x` is `[1, 100]`.
|
||||
fn clear_identity(r: u32, s: u32, x: u32, ) -> Weight {
|
||||
Weight::from_ref_time(32_822_000 as u64)
|
||||
// Standard Error: 5_000
|
||||
.saturating_add(Weight::from_ref_time(74_000 as u64).saturating_mul(r as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(909_000 as u64).saturating_mul(s as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(166_000 as u64).saturating_mul(x as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Identity Registrars (r:1 w:0)
|
||||
// Storage: Identity IdentityOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 20]`.
|
||||
/// The range of component `x` is `[1, 100]`.
|
||||
fn request_judgement(r: u32, x: u32, ) -> Weight {
|
||||
Weight::from_ref_time(30_696_000 as u64)
|
||||
// Standard Error: 4_000
|
||||
.saturating_add(Weight::from_ref_time(163_000 as u64).saturating_mul(r as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(377_000 as u64).saturating_mul(x as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 20]`.
|
||||
/// The range of component `x` is `[1, 100]`.
|
||||
fn cancel_request(r: u32, x: u32, ) -> Weight {
|
||||
Weight::from_ref_time(28_144_000 as u64)
|
||||
// Standard Error: 4_000
|
||||
.saturating_add(Weight::from_ref_time(144_000 as u64).saturating_mul(r as u64))
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(363_000 as u64).saturating_mul(x as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity Registrars (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 19]`.
|
||||
fn set_fee(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(7_135_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(135_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity Registrars (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 19]`.
|
||||
fn set_account_id(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(6_861_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(140_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity Registrars (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 19]`.
|
||||
fn set_fields(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(7_143_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(133_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity Registrars (r:1 w:0)
|
||||
// Storage: Identity IdentityOf (r:1 w:1)
|
||||
/// The range of component `r` is `[1, 19]`.
|
||||
/// The range of component `x` is `[1, 100]`.
|
||||
fn provide_judgement(r: u32, x: u32, ) -> Weight {
|
||||
Weight::from_ref_time(21_902_000 as u64)
|
||||
// Standard Error: 6_000
|
||||
.saturating_add(Weight::from_ref_time(109_000 as u64).saturating_mul(r as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(378_000 as u64).saturating_mul(x as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
// Storage: Identity IdentityOf (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: Identity SuperOf (r:0 w:100)
|
||||
/// The range of component `r` is `[1, 20]`.
|
||||
/// The range of component `s` is `[1, 100]`.
|
||||
/// The range of component `x` is `[1, 100]`.
|
||||
fn kill_identity(_r: u32, s: u32, _x: u32, ) -> Weight {
|
||||
Weight::from_ref_time(48_712_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(903_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:0)
|
||||
// Storage: Identity SuperOf (r:1 w:1)
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 99]`.
|
||||
fn add_sub(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(33_860_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(97_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:0)
|
||||
// Storage: Identity SuperOf (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 100]`.
|
||||
fn rename_sub(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(12_063_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(27_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Identity IdentityOf (r:1 w:0)
|
||||
// Storage: Identity SuperOf (r:1 w:1)
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 100]`.
|
||||
fn remove_sub(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(34_418_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(84_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Identity SuperOf (r:1 w:1)
|
||||
// Storage: Identity SubsOf (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 99]`.
|
||||
fn quit_sub(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(24_186_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(77_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,135 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_preimage`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_preimage
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_preimage.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_preimage`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_preimage::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
/// The range of component `s` is `[0, 4194304]`.
|
||||
fn note_preimage(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:0)
|
||||
/// The range of component `s` is `[0, 4194304]`.
|
||||
fn note_requested_preimage(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:0)
|
||||
/// The range of component `s` is `[0, 4194304]`.
|
||||
fn note_no_deposit_preimage(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(3_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
// Storage: Preimage PreimageFor (r:0 w:1)
|
||||
fn unnote_preimage() -> Weight {
|
||||
Weight::from_ref_time(35_236_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
// Storage: Preimage PreimageFor (r:0 w:1)
|
||||
fn unnote_no_deposit_preimage() -> Weight {
|
||||
Weight::from_ref_time(23_396_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
fn request_preimage() -> Weight {
|
||||
Weight::from_ref_time(33_944_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
fn request_no_deposit_preimage() -> Weight {
|
||||
Weight::from_ref_time(22_151_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
fn request_unnoted_preimage() -> Weight {
|
||||
Weight::from_ref_time(16_617_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
fn request_requested_preimage() -> Weight {
|
||||
Weight::from_ref_time(6_552_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
// Storage: Preimage PreimageFor (r:0 w:1)
|
||||
fn unrequest_preimage() -> Weight {
|
||||
Weight::from_ref_time(23_787_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
// Storage: Preimage PreimageFor (r:0 w:1)
|
||||
fn unrequest_unnoted_preimage() -> Weight {
|
||||
Weight::from_ref_time(16_327_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
fn unrequest_multi_referenced_preimage() -> Weight {
|
||||
Weight::from_ref_time(6_289_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,207 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_scheduler`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_scheduler
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_scheduler.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_scheduler`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_scheduler::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Scheduler Agenda (r:2 w:2)
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
// Storage: Scheduler Lookup (r:0 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(1_256_000 as u64)
|
||||
// Standard Error: 42_000
|
||||
.saturating_add(Weight::from_ref_time(26_925_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((3 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((4 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
// Storage: Scheduler Lookup (r:0 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_named_resolved(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(921_000 as u64)
|
||||
// Standard Error: 35_000
|
||||
.saturating_add(Weight::from_ref_time(21_922_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((2 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:2 w:2)
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_periodic_resolved(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(0 as u64)
|
||||
// Standard Error: 62_000
|
||||
.saturating_add(Weight::from_ref_time(24_926_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((3 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
// Storage: Preimage PreimageFor (r:1 w:1)
|
||||
// Storage: Preimage StatusFor (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_resolved(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(10_674_000 as u64)
|
||||
// Standard Error: 31_000
|
||||
.saturating_add(Weight::from_ref_time(20_631_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((2 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:2 w:2)
|
||||
// Storage: Preimage PreimageFor (r:1 w:0)
|
||||
// Storage: Scheduler Lookup (r:0 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_named_aborted(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(2_607_000 as u64)
|
||||
// Standard Error: 20_000
|
||||
.saturating_add(Weight::from_ref_time(10_009_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:2 w:2)
|
||||
// Storage: Preimage PreimageFor (r:1 w:0)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_aborted(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(3_381_000 as u64)
|
||||
// Standard Error: 17_000
|
||||
.saturating_add(Weight::from_ref_time(7_945_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:2 w:2)
|
||||
// Storage: Scheduler Lookup (r:0 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_periodic_named(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(6_676_000 as u64)
|
||||
// Standard Error: 25_000
|
||||
.saturating_add(Weight::from_ref_time(16_966_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:2 w:2)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_periodic(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(8_899_000 as u64)
|
||||
// Standard Error: 24_000
|
||||
.saturating_add(Weight::from_ref_time(14_630_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
// Storage: Scheduler Lookup (r:0 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize_named(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(8_583_000 as u64)
|
||||
// Standard Error: 19_000
|
||||
.saturating_add(Weight::from_ref_time(12_228_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn on_initialize(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(8_544_000 as u64)
|
||||
// Standard Error: 19_000
|
||||
.saturating_add(Weight::from_ref_time(11_364_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
/// The range of component `s` is `[0, 50]`.
|
||||
fn schedule(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(19_060_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(46_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
// Storage: Scheduler Lookup (r:0 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn cancel(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(17_694_000 as u64)
|
||||
// Standard Error: 7_000
|
||||
.saturating_add(Weight::from_ref_time(2_368_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Scheduler Lookup (r:1 w:1)
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
/// The range of component `s` is `[0, 50]`.
|
||||
fn schedule_named(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(22_258_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(60_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Scheduler Lookup (r:1 w:1)
|
||||
// Storage: Scheduler Agenda (r:1 w:1)
|
||||
/// The range of component `s` is `[1, 50]`.
|
||||
fn cancel_named(s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(18_882_000 as u64)
|
||||
// Standard Error: 7_000
|
||||
.saturating_add(Weight::from_ref_time(2_379_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
}
|
||||
@@ -22,7 +22,7 @@
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// --chain=polkadot-dev
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_session
|
||||
|
||||
@@ -0,0 +1,110 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_tips`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_tips
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_tips.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_tips`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_tips::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Tips Reasons (r:1 w:1)
|
||||
// Storage: Tips Tips (r:1 w:1)
|
||||
/// The range of component `r` is `[0, 16384]`.
|
||||
fn report_awesome(r: u32, ) -> Weight {
|
||||
Weight::from_ref_time(28_045_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(2_000 as u64).saturating_mul(r as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Tips Tips (r:1 w:1)
|
||||
// Storage: Tips Reasons (r:0 w:1)
|
||||
fn retract_tip() -> Weight {
|
||||
Weight::from_ref_time(26_017_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: Tips Reasons (r:1 w:1)
|
||||
// Storage: Tips Tips (r:0 w:1)
|
||||
/// The range of component `r` is `[0, 16384]`.
|
||||
/// The range of component `t` is `[1, 19]`.
|
||||
fn tip_new(r: u32, t: u32, ) -> Weight {
|
||||
Weight::from_ref_time(19_125_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(2_000 as u64).saturating_mul(r as u64))
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(41_000 as u64).saturating_mul(t as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: Tips Tips (r:1 w:1)
|
||||
/// The range of component `t` is `[1, 19]`.
|
||||
fn tip(t: u32, ) -> Weight {
|
||||
Weight::from_ref_time(10_895_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(158_000 as u64).saturating_mul(t as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Tips Tips (r:1 w:1)
|
||||
// Storage: PhragmenElection Members (r:1 w:0)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: Tips Reasons (r:0 w:1)
|
||||
/// The range of component `t` is `[1, 19]`.
|
||||
fn close_tip(t: u32, ) -> Weight {
|
||||
Weight::from_ref_time(42_301_000 as u64)
|
||||
// Standard Error: 4_000
|
||||
.saturating_add(Weight::from_ref_time(154_000 as u64).saturating_mul(t as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Tips Tips (r:1 w:1)
|
||||
// Storage: Tips Reasons (r:0 w:1)
|
||||
/// The range of component `t` is `[1, 19]`.
|
||||
fn slash_tip(t: u32, ) -> Weight {
|
||||
Weight::from_ref_time(16_548_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(21_000 as u64).saturating_mul(t as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_treasury`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_treasury
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_treasury.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_treasury`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_treasury::WeightInfo for WeightInfo<T> {
|
||||
fn spend() -> Weight {
|
||||
Weight::from_ref_time(153_000 as u64)
|
||||
}
|
||||
// Storage: Treasury ProposalCount (r:1 w:1)
|
||||
// Storage: Treasury Proposals (r:0 w:1)
|
||||
fn propose_spend() -> Weight {
|
||||
Weight::from_ref_time(25_149_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Treasury Proposals (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
fn reject_proposal() -> Weight {
|
||||
Weight::from_ref_time(35_748_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Treasury Proposals (r:1 w:0)
|
||||
// Storage: Treasury Approvals (r:1 w:1)
|
||||
/// The range of component `p` is `[0, 99]`.
|
||||
fn approve_proposal(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(10_082_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(36_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Treasury Approvals (r:1 w:1)
|
||||
fn remove_approval() -> Weight {
|
||||
Weight::from_ref_time(5_612_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: Treasury Approvals (r:1 w:1)
|
||||
// Storage: Bounties BountyApprovals (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: Treasury Proposals (r:2 w:2)
|
||||
/// The range of component `p` is `[0, 100]`.
|
||||
fn on_initialize_proposals(p: u32, ) -> Weight {
|
||||
Weight::from_ref_time(36_270_000 as u64)
|
||||
// Standard Error: 32_000
|
||||
.saturating_add(Weight::from_ref_time(30_142_000 as u64).saturating_mul(p as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().reads((3 as u64).saturating_mul(p as u64)))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(p as u64)))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,157 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `pallet_vesting`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_vesting
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/pallet_vesting.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_vesting`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_vesting::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[1, 28]`.
|
||||
fn vest_locked(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(29_030_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(75_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(162_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[1, 28]`.
|
||||
fn vest_unlocked(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(29_535_000 as u64)
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(69_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(113_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[1, 28]`.
|
||||
fn vest_other_locked(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(29_237_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(75_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(160_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[1, 28]`.
|
||||
fn vest_other_unlocked(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(29_750_000 as u64)
|
||||
// Standard Error: 3_000
|
||||
.saturating_add(Weight::from_ref_time(84_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 5_000
|
||||
.saturating_add(Weight::from_ref_time(109_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[0, 27]`.
|
||||
fn vested_transfer(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(44_092_000 as u64)
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(71_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 4_000
|
||||
.saturating_add(Weight::from_ref_time(134_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: System Account (r:2 w:2)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[0, 27]`.
|
||||
fn force_vested_transfer(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(44_003_000 as u64)
|
||||
// Standard Error: 2_000
|
||||
.saturating_add(Weight::from_ref_time(72_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 4_000
|
||||
.saturating_add(Weight::from_ref_time(119_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[2, 28]`.
|
||||
fn not_unlocking_merge_schedules(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(29_853_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(77_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(153_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:1)
|
||||
/// The range of component `l` is `[0, 49]`.
|
||||
/// The range of component `s` is `[2, 28]`.
|
||||
fn unlocking_merge_schedules(l: u32, s: u32, ) -> Weight {
|
||||
Weight::from_ref_time(29_466_000 as u64)
|
||||
// Standard Error: 0
|
||||
.saturating_add(Weight::from_ref_time(81_000 as u64).saturating_mul(l as u64))
|
||||
// Standard Error: 1_000
|
||||
.saturating_add(Weight::from_ref_time(158_000 as u64).saturating_mul(s as u64))
|
||||
.saturating_add(T::DbWeight::get().reads(3 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
//! Autogenerated weights for `runtime_common::claims`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-08-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/polkadot
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=runtime_common::claims
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --header=./file_header.txt
|
||||
// --output=./runtime/rococo/src/weights/runtime_common_claims.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `runtime_common::claims`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> runtime_common::claims::WeightInfo for WeightInfo<T> {
|
||||
// Storage: Claims Claims (r:1 w:1)
|
||||
// Storage: Claims Signing (r:1 w:1)
|
||||
// Storage: Claims Total (r:1 w:1)
|
||||
// Storage: Claims Vesting (r:1 w:1)
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:0)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
fn claim() -> Weight {
|
||||
Weight::from_ref_time(139_399_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(7 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Claims Total (r:1 w:1)
|
||||
// Storage: Claims Vesting (r:0 w:1)
|
||||
// Storage: Claims Claims (r:0 w:1)
|
||||
// Storage: Claims Signing (r:0 w:1)
|
||||
fn mint_claim() -> Weight {
|
||||
Weight::from_ref_time(9_284_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: Claims Claims (r:1 w:1)
|
||||
// Storage: Claims Signing (r:1 w:1)
|
||||
// Storage: Claims Total (r:1 w:1)
|
||||
// Storage: Claims Vesting (r:1 w:1)
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:0)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
fn claim_attest() -> Weight {
|
||||
Weight::from_ref_time(143_329_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(7 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(6 as u64))
|
||||
}
|
||||
// Storage: Claims Preclaims (r:1 w:1)
|
||||
// Storage: Claims Signing (r:1 w:1)
|
||||
// Storage: Claims Claims (r:1 w:1)
|
||||
// Storage: Claims Total (r:1 w:1)
|
||||
// Storage: Claims Vesting (r:1 w:1)
|
||||
// Storage: Vesting Vesting (r:1 w:1)
|
||||
// Storage: System Account (r:1 w:0)
|
||||
// Storage: Balances Locks (r:1 w:1)
|
||||
fn attest() -> Weight {
|
||||
Weight::from_ref_time(63_456_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(8 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(7 as u64))
|
||||
}
|
||||
// Storage: Claims Claims (r:1 w:2)
|
||||
// Storage: Claims Vesting (r:1 w:2)
|
||||
// Storage: Claims Signing (r:1 w:2)
|
||||
// Storage: Claims Preclaims (r:1 w:1)
|
||||
fn move_claim() -> Weight {
|
||||
Weight::from_ref_time(19_434_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(4 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(7 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,203 @@
|
||||
mod pallet_xcm_benchmarks_fungible;
|
||||
mod pallet_xcm_benchmarks_generic;
|
||||
|
||||
use crate::Runtime;
|
||||
use frame_support::weights::Weight;
|
||||
use sp_std::prelude::*;
|
||||
use xcm::{
|
||||
latest::{prelude::*, Weight as XCMWeight},
|
||||
DoubleEncoded,
|
||||
};
|
||||
|
||||
use pallet_xcm_benchmarks_fungible::WeightInfo as XcmBalancesWeight;
|
||||
use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric;
|
||||
|
||||
/// Types of asset supported by the Rococo runtime.
|
||||
pub enum AssetTypes {
|
||||
/// An asset backed by `pallet-balances`.
|
||||
Balances,
|
||||
/// Unknown asset.
|
||||
Unknown,
|
||||
}
|
||||
|
||||
impl From<&MultiAsset> for AssetTypes {
|
||||
fn from(asset: &MultiAsset) -> Self {
|
||||
match asset {
|
||||
MultiAsset { id: Concrete(MultiLocation { parents: 0, interior: Here }), .. } =>
|
||||
AssetTypes::Balances,
|
||||
_ => AssetTypes::Unknown,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
trait WeighMultiAssets {
|
||||
fn weigh_multi_assets(&self, balances_weight: Weight) -> XCMWeight;
|
||||
}
|
||||
|
||||
// Rococo only knows about one asset, the balances pallet.
|
||||
const MAX_ASSETS: u32 = 1;
|
||||
|
||||
impl WeighMultiAssets for MultiAssetFilter {
|
||||
fn weigh_multi_assets(&self, balances_weight: Weight) -> XCMWeight {
|
||||
let weight = match self {
|
||||
Self::Definite(assets) => assets
|
||||
.inner()
|
||||
.into_iter()
|
||||
.map(From::from)
|
||||
.map(|t| match t {
|
||||
AssetTypes::Balances => balances_weight,
|
||||
AssetTypes::Unknown => Weight::MAX,
|
||||
})
|
||||
.fold(Weight::zero(), |acc, x| acc.saturating_add(x)),
|
||||
Self::Wild(_) => balances_weight.saturating_mul(MAX_ASSETS as u64),
|
||||
};
|
||||
|
||||
weight.ref_time()
|
||||
}
|
||||
}
|
||||
|
||||
impl WeighMultiAssets for MultiAssets {
|
||||
fn weigh_multi_assets(&self, balances_weight: Weight) -> XCMWeight {
|
||||
let weight = self
|
||||
.inner()
|
||||
.into_iter()
|
||||
.map(|m| <AssetTypes as From<&MultiAsset>>::from(m))
|
||||
.map(|t| match t {
|
||||
AssetTypes::Balances => balances_weight,
|
||||
AssetTypes::Unknown => Weight::MAX,
|
||||
})
|
||||
.fold(Weight::zero(), |acc, x| acc.saturating_add(x));
|
||||
|
||||
weight.ref_time()
|
||||
}
|
||||
}
|
||||
|
||||
pub struct RococoXcmWeight<Call>(core::marker::PhantomData<Call>);
|
||||
impl<Call> XcmWeightInfo<Call> for RococoXcmWeight<Call> {
|
||||
fn withdraw_asset(assets: &MultiAssets) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::withdraw_asset())
|
||||
}
|
||||
fn reserve_asset_deposited(assets: &MultiAssets) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::reserve_asset_deposited())
|
||||
}
|
||||
fn receive_teleported_asset(assets: &MultiAssets) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::receive_teleported_asset())
|
||||
}
|
||||
fn query_response(_query_id: &u64, _response: &Response, _max_weight: &u64) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::query_response().ref_time()
|
||||
}
|
||||
fn transfer_asset(assets: &MultiAssets, _dest: &MultiLocation) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::transfer_asset())
|
||||
}
|
||||
fn transfer_reserve_asset(
|
||||
assets: &MultiAssets,
|
||||
_dest: &MultiLocation,
|
||||
_xcm: &Xcm<()>,
|
||||
) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::transfer_reserve_asset())
|
||||
}
|
||||
fn transact(
|
||||
_origin_type: &OriginKind,
|
||||
_require_weight_at_most: &u64,
|
||||
_call: &DoubleEncoded<Call>,
|
||||
) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::transact().ref_time()
|
||||
}
|
||||
fn hrmp_new_channel_open_request(
|
||||
_sender: &u32,
|
||||
_max_message_size: &u32,
|
||||
_max_capacity: &u32,
|
||||
) -> XCMWeight {
|
||||
// XCM Executor does not currently support HRMP channel operations
|
||||
Weight::MAX.ref_time()
|
||||
}
|
||||
fn hrmp_channel_accepted(_recipient: &u32) -> XCMWeight {
|
||||
// XCM Executor does not currently support HRMP channel operations
|
||||
Weight::MAX.ref_time()
|
||||
}
|
||||
fn hrmp_channel_closing(_initiator: &u32, _sender: &u32, _recipient: &u32) -> XCMWeight {
|
||||
// XCM Executor does not currently support HRMP channel operations
|
||||
Weight::MAX.ref_time()
|
||||
}
|
||||
fn clear_origin() -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::clear_origin().ref_time()
|
||||
}
|
||||
fn descend_origin(_who: &InteriorMultiLocation) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::descend_origin().ref_time()
|
||||
}
|
||||
fn report_error(
|
||||
_query_id: &QueryId,
|
||||
_dest: &MultiLocation,
|
||||
_max_response_weight: &u64,
|
||||
) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::report_error().ref_time()
|
||||
}
|
||||
|
||||
fn deposit_asset(
|
||||
assets: &MultiAssetFilter,
|
||||
_max_assets: &u32, // TODO use max assets?
|
||||
_dest: &MultiLocation,
|
||||
) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::deposit_asset())
|
||||
}
|
||||
fn deposit_reserve_asset(
|
||||
assets: &MultiAssetFilter,
|
||||
_max_assets: &u32, // TODO use max assets?
|
||||
_dest: &MultiLocation,
|
||||
_xcm: &Xcm<()>,
|
||||
) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::deposit_reserve_asset())
|
||||
}
|
||||
fn exchange_asset(_give: &MultiAssetFilter, _receive: &MultiAssets) -> XCMWeight {
|
||||
Weight::MAX.ref_time() // todo fix
|
||||
}
|
||||
fn initiate_reserve_withdraw(
|
||||
assets: &MultiAssetFilter,
|
||||
_reserve: &MultiLocation,
|
||||
_xcm: &Xcm<()>,
|
||||
) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmGeneric::<Runtime>::initiate_reserve_withdraw())
|
||||
}
|
||||
fn initiate_teleport(
|
||||
assets: &MultiAssetFilter,
|
||||
_dest: &MultiLocation,
|
||||
_xcm: &Xcm<()>,
|
||||
) -> XCMWeight {
|
||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::initiate_teleport())
|
||||
}
|
||||
fn query_holding(
|
||||
_query_id: &u64,
|
||||
_dest: &MultiLocation,
|
||||
_assets: &MultiAssetFilter,
|
||||
_max_response_weight: &u64,
|
||||
) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::query_holding().ref_time()
|
||||
}
|
||||
fn buy_execution(_fees: &MultiAsset, _weight_limit: &WeightLimit) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::buy_execution().ref_time()
|
||||
}
|
||||
fn refund_surplus() -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::refund_surplus().ref_time()
|
||||
}
|
||||
fn set_error_handler(_xcm: &Xcm<Call>) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::set_error_handler().ref_time()
|
||||
}
|
||||
fn set_appendix(_xcm: &Xcm<Call>) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::set_appendix().ref_time()
|
||||
}
|
||||
fn clear_error() -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::clear_error().ref_time()
|
||||
}
|
||||
fn claim_asset(_assets: &MultiAssets, _ticket: &MultiLocation) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::claim_asset().ref_time()
|
||||
}
|
||||
fn trap(_code: &u64) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::trap().ref_time()
|
||||
}
|
||||
fn subscribe_version(_query_id: &QueryId, _max_response_weight: &u64) -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::subscribe_version().ref_time()
|
||||
}
|
||||
fn unsubscribe_version() -> XCMWeight {
|
||||
XcmGeneric::<Runtime>::unsubscribe_version().ref_time()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
// Copyright 2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-03-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// target/production/polkadot
|
||||
// benchmark
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_xcm_benchmarks::fungible
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --heap-pages=4096
|
||||
// --header=./file_header.txt
|
||||
// --template=./xcm/pallet-xcm-benchmarks/template.hbs
|
||||
// --output=./runtime/rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weights for `pallet_xcm_benchmarks::fungible`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> WeightInfo<T> {
|
||||
// Storage: System Account (r:1 w:1)
|
||||
pub(crate) fn withdraw_asset() -> Weight {
|
||||
Weight::from_ref_time(20_385_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: System Account (r:2 w:2)
|
||||
pub(crate) fn transfer_asset() -> Weight {
|
||||
Weight::from_ref_time(32_756_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(2 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2 as u64))
|
||||
}
|
||||
// Storage: System Account (r:2 w:2)
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn transfer_reserve_asset() -> Weight {
|
||||
Weight::from_ref_time(50_645_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(8 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(5 as u64))
|
||||
}
|
||||
// Storage: Benchmark Override (r:0 w:0)
|
||||
pub(crate) fn reserve_asset_deposited() -> Weight {
|
||||
Weight::from_ref_time(2_000_000_000_000 as u64)
|
||||
}
|
||||
// Storage: System Account (r:1 w:1)
|
||||
pub(crate) fn receive_teleported_asset() -> Weight {
|
||||
Weight::from_ref_time(19_595_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: System Account (r:1 w:1)
|
||||
pub(crate) fn deposit_asset() -> Weight {
|
||||
Weight::from_ref_time(21_763_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn deposit_reserve_asset() -> Weight {
|
||||
Weight::from_ref_time(40_930_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(7 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: System Account (r:1 w:1)
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn initiate_teleport() -> Weight {
|
||||
Weight::from_ref_time(40_788_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(7 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,136 @@
|
||||
// Copyright 2022 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Polkadot.
|
||||
|
||||
// Polkadot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Polkadot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! Autogenerated weights for `pallet_xcm_benchmarks::generic`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2022-03-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// target/production/polkadot
|
||||
// benchmark
|
||||
// --chain=rococo-dev
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --pallet=pallet_xcm_benchmarks::generic
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --heap-pages=4096
|
||||
// --header=./file_header.txt
|
||||
// --template=./xcm/pallet-xcm-benchmarks/template.hbs
|
||||
// --output=./runtime/rococo/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weights for `pallet_xcm_benchmarks::generic`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> WeightInfo<T> {
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn query_holding() -> Weight {
|
||||
Weight::from_ref_time(21_822_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(6 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
pub(crate) fn buy_execution() -> Weight {
|
||||
Weight::from_ref_time(3_109_000 as u64)
|
||||
}
|
||||
// Storage: XcmPallet Queries (r:1 w:0)
|
||||
pub(crate) fn query_response() -> Weight {
|
||||
Weight::from_ref_time(12_087_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
}
|
||||
pub(crate) fn transact() -> Weight {
|
||||
Weight::from_ref_time(12_398_000 as u64)
|
||||
}
|
||||
pub(crate) fn refund_surplus() -> Weight {
|
||||
Weight::from_ref_time(3_247_000 as u64)
|
||||
}
|
||||
pub(crate) fn set_error_handler() -> Weight {
|
||||
Weight::from_ref_time(3_086_000 as u64)
|
||||
}
|
||||
pub(crate) fn set_appendix() -> Weight {
|
||||
Weight::from_ref_time(3_112_000 as u64)
|
||||
}
|
||||
pub(crate) fn clear_error() -> Weight {
|
||||
Weight::from_ref_time(3_118_000 as u64)
|
||||
}
|
||||
pub(crate) fn descend_origin() -> Weight {
|
||||
Weight::from_ref_time(4_054_000 as u64)
|
||||
}
|
||||
pub(crate) fn clear_origin() -> Weight {
|
||||
Weight::from_ref_time(3_111_000 as u64)
|
||||
}
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn report_error() -> Weight {
|
||||
Weight::from_ref_time(18_425_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(6 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
// Storage: XcmPallet AssetTraps (r:1 w:1)
|
||||
pub(crate) fn claim_asset() -> Weight {
|
||||
Weight::from_ref_time(7_144_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(1 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
pub(crate) fn trap() -> Weight {
|
||||
Weight::from_ref_time(3_060_000 as u64)
|
||||
}
|
||||
// Storage: XcmPallet VersionNotifyTargets (r:1 w:1)
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn subscribe_version() -> Weight {
|
||||
Weight::from_ref_time(21_642_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(7 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(4 as u64))
|
||||
}
|
||||
// Storage: XcmPallet VersionNotifyTargets (r:0 w:1)
|
||||
pub(crate) fn unsubscribe_version() -> Weight {
|
||||
Weight::from_ref_time(4_873_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().writes(1 as u64))
|
||||
}
|
||||
// Storage: XcmPallet SupportedVersion (r:1 w:0)
|
||||
// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1)
|
||||
// Storage: XcmPallet SafeXcmVersion (r:1 w:0)
|
||||
// Storage: Configuration ActiveConfig (r:1 w:0)
|
||||
// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1)
|
||||
// Storage: Dmp DownwardMessageQueues (r:1 w:1)
|
||||
pub(crate) fn initiate_reserve_withdraw() -> Weight {
|
||||
Weight::from_ref_time(22_809_000 as u64)
|
||||
.saturating_add(T::DbWeight::get().reads(6 as u64))
|
||||
.saturating_add(T::DbWeight::get().writes(3 as u64))
|
||||
}
|
||||
}
|
||||
@@ -17,33 +17,49 @@
|
||||
//! XCM configuration for Rococo.
|
||||
|
||||
use super::{
|
||||
parachains_origin, AccountId, Balances, Call, Event, Origin, ParaId, Runtime, WeightToFee,
|
||||
XcmPallet,
|
||||
};
|
||||
use frame_support::{
|
||||
parameter_types,
|
||||
traits::{Everything, IsInVec, Nothing},
|
||||
parachains_origin, AccountId, Balances, Call, CouncilCollective, Event, Origin, ParaId,
|
||||
Runtime, WeightToFee, XcmPallet,
|
||||
};
|
||||
use frame_support::{match_types, parameter_types, traits::Everything};
|
||||
use runtime_common::{xcm_sender, ToAuthor};
|
||||
use sp_std::prelude::*;
|
||||
use xcm::latest::prelude::*;
|
||||
use xcm_builder::{
|
||||
AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, BackingToPlurality,
|
||||
AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom,
|
||||
AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, BackingToPlurality,
|
||||
ChildParachainAsNative, ChildParachainConvertsVia, ChildSystemParachainAsSuperuser,
|
||||
CurrencyAdapter as XcmCurrencyAdapter, FixedWeightBounds, IsConcrete, LocationInverter,
|
||||
SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, UsingComponents,
|
||||
CurrencyAdapter as XcmCurrencyAdapter, FixedWeightBounds, IsChildSystemParachain, IsConcrete,
|
||||
LocationInverter, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation,
|
||||
TakeWeightCredit, UsingComponents, WeightInfoBounds,
|
||||
};
|
||||
|
||||
parameter_types! {
|
||||
/// The location of the ROC token, from the context of this chain. Since this token is native to this
|
||||
/// chain, we make it synonymous with it and thus it is the `Here` location, which means "equivalent to
|
||||
/// the context".
|
||||
pub const RocLocation: MultiLocation = Here.into();
|
||||
pub const RococoNetwork: NetworkId = NetworkId::Polkadot;
|
||||
/// The Rococo network ID. This is named.
|
||||
pub RococoNetwork: NetworkId =
|
||||
NetworkId::Named(b"Rococo".to_vec().try_into().expect("shorter than length limit; qed"));
|
||||
/// Our XCM location ancestry - i.e. what, if anything, `Parent` means evaluated in our context. Since
|
||||
/// Rococo is a top-level relay-chain, there is no ancestry.
|
||||
pub const Ancestry: MultiLocation = Here.into();
|
||||
/// The check account, which holds any native assets that have been teleported out and not back in (yet).
|
||||
pub CheckAccount: AccountId = XcmPallet::check_account();
|
||||
}
|
||||
|
||||
pub type SovereignAccountOf =
|
||||
(ChildParachainConvertsVia<ParaId, AccountId>, AccountId32Aliases<RococoNetwork, AccountId>);
|
||||
/// The canonical means of converting a `MultiLocation` into an `AccountId`, used when we want to determine
|
||||
/// the sovereign account controlled by a location.
|
||||
pub type SovereignAccountOf = (
|
||||
// We can convert a child parachain using the standard `AccountId` conversion.
|
||||
ChildParachainConvertsVia<ParaId, AccountId>,
|
||||
// We can directly alias an `AccountId32` into a local account.
|
||||
AccountId32Aliases<RococoNetwork, AccountId>,
|
||||
);
|
||||
|
||||
/// Our asset transactor. This is what allows us to interest with the runtime facilities from the point of
|
||||
/// view of XCM-only concepts like `MultiLocation` and `MultiAsset`.
|
||||
///
|
||||
/// Ours is only aware of the Balances pallet, which is mapped to `RocLocation`.
|
||||
pub type LocalAssetTransactor = XcmCurrencyAdapter<
|
||||
// Use this currency:
|
||||
Balances,
|
||||
@@ -53,21 +69,29 @@ pub type LocalAssetTransactor = XcmCurrencyAdapter<
|
||||
SovereignAccountOf,
|
||||
// Our chain's account ID type (we can't get away without mentioning it explicitly):
|
||||
AccountId,
|
||||
// It's a native asset so we keep track of the teleports to maintain total issuance.
|
||||
// We track our teleports in/out to keep total issuance correct.
|
||||
CheckAccount,
|
||||
>;
|
||||
|
||||
/// The means that we convert an the XCM message origin location into a local dispatch origin.
|
||||
type LocalOriginConverter = (
|
||||
// A `Signed` origin of the sovereign account that the original location controls.
|
||||
SovereignSignedViaLocation<SovereignAccountOf, Origin>,
|
||||
// A child parachain, natively expressed, has the `Parachain` origin.
|
||||
ChildParachainAsNative<parachains_origin::Origin, Origin>,
|
||||
// The AccountId32 location type can be expressed natively as a `Signed` origin.
|
||||
SignedAccountId32AsNative<RococoNetwork, Origin>,
|
||||
// A system child parachain, expressed as a Superuser, converts to the `Root` origin.
|
||||
ChildSystemParachainAsSuperuser<ParaId, Origin>,
|
||||
);
|
||||
|
||||
parameter_types! {
|
||||
/// The amount of weight an XCM operation takes. This is a safe overestimate.
|
||||
pub const BaseXcmWeight: u64 = 1_000_000_000;
|
||||
/// Maximum number of instructions in a single XCM fragment. A sanity check against weight
|
||||
/// calculations getting too crazy.
|
||||
pub const MaxInstructions: u32 = 100;
|
||||
}
|
||||
|
||||
/// The XCM router. When we want to send an XCM message, we use this type. It amalgamates all of our
|
||||
/// individual routers.
|
||||
pub type XcmRouter = (
|
||||
@@ -77,44 +101,46 @@ pub type XcmRouter = (
|
||||
|
||||
parameter_types! {
|
||||
pub const Rococo: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(RocLocation::get()) });
|
||||
pub const RococoForTick: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Parachain(100).into());
|
||||
pub const RococoForTrick: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Parachain(110).into());
|
||||
pub const RococoForTrack: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Parachain(120).into());
|
||||
pub const RococoForStatemine: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Parachain(1000).into());
|
||||
pub const RococoForCanvas: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Parachain(1002).into());
|
||||
pub const RococoForEncointer: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Parachain(1003).into());
|
||||
pub const MaxInstructions: u32 = 100;
|
||||
pub const Statemine: MultiLocation = Parachain(1000).into();
|
||||
pub const Contracts: MultiLocation = Parachain(1002).into();
|
||||
pub const Encointer: MultiLocation = Parachain(1003).into();
|
||||
pub const Tick: MultiLocation = Parachain(100).into();
|
||||
pub const Trick: MultiLocation = Parachain(110).into();
|
||||
pub const Track: MultiLocation = Parachain(120).into();
|
||||
pub const RococoForTick: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Tick::get());
|
||||
pub const RococoForTrick: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Trick::get());
|
||||
pub const RococoForTrack: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Track::get());
|
||||
pub const RococoForStatemine: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Statemine::get());
|
||||
pub const RococoForContracts: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Contracts::get());
|
||||
pub const RococoForEncointer: (MultiAssetFilter, MultiLocation) = (Rococo::get(), Encointer::get());
|
||||
}
|
||||
pub type TrustedTeleporters = (
|
||||
xcm_builder::Case<RococoForTick>,
|
||||
xcm_builder::Case<RococoForTrick>,
|
||||
xcm_builder::Case<RococoForTrack>,
|
||||
xcm_builder::Case<RococoForStatemine>,
|
||||
xcm_builder::Case<RococoForCanvas>,
|
||||
xcm_builder::Case<RococoForContracts>,
|
||||
xcm_builder::Case<RococoForEncointer>,
|
||||
);
|
||||
|
||||
parameter_types! {
|
||||
pub AllowUnpaidFrom: Vec<MultiLocation> =
|
||||
vec![
|
||||
Parachain(100).into(),
|
||||
Parachain(110).into(),
|
||||
Parachain(120).into(),
|
||||
Parachain(1000).into(),
|
||||
Parachain(1002).into(),
|
||||
Parachain(1003).into(),
|
||||
];
|
||||
match_types! {
|
||||
pub type OnlyParachains: impl Contains<MultiLocation> = {
|
||||
MultiLocation { parents: 0, interior: X1(Parachain(_)) }
|
||||
};
|
||||
}
|
||||
|
||||
use xcm_builder::{AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, TakeWeightCredit};
|
||||
/// The barriers one of which must be passed for an XCM message to be executed.
|
||||
pub type Barrier = (
|
||||
// Weight that is paid for may be consumed.
|
||||
TakeWeightCredit,
|
||||
// If the message is one that immediately attemps to pay for execution, then allow it.
|
||||
AllowTopLevelPaidExecutionFrom<Everything>,
|
||||
AllowUnpaidExecutionFrom<IsInVec<AllowUnpaidFrom>>, // <- Trusted parachains get free execution
|
||||
// Messages coming from system parachains need not pay for execution.
|
||||
AllowUnpaidExecutionFrom<IsChildSystemParachain<ParaId>>,
|
||||
// Expected responses are OK.
|
||||
AllowKnownQueryResponses<XcmPallet>,
|
||||
// Subscriptions for version tracking are OK.
|
||||
AllowSubscriptionsFrom<Everything>,
|
||||
AllowSubscriptionsFrom<OnlyParachains>,
|
||||
);
|
||||
|
||||
pub struct XcmConfig;
|
||||
@@ -127,7 +153,9 @@ impl xcm_executor::Config for XcmConfig {
|
||||
type IsTeleporter = TrustedTeleporters;
|
||||
type LocationInverter = LocationInverter<Ancestry>;
|
||||
type Barrier = Barrier;
|
||||
type Weigher = FixedWeightBounds<BaseXcmWeight, Call, MaxInstructions>;
|
||||
type Weigher =
|
||||
WeightInfoBounds<crate::weights::xcm::RococoXcmWeight<Call>, Call, MaxInstructions>;
|
||||
// The weight trader piggybacks on the existing transaction-fee conversion logic.
|
||||
type Trader = UsingComponents<WeightToFee, RocLocation, AccountId, Balances, ToAuthor<Runtime>>;
|
||||
type ResponseHandler = XcmPallet;
|
||||
type AssetTrap = XcmPallet;
|
||||
@@ -139,26 +167,38 @@ parameter_types! {
|
||||
pub const CollectiveBodyId: BodyId = BodyId::Unit;
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub const CouncilBodyId: BodyId = BodyId::Executive;
|
||||
}
|
||||
|
||||
/// Type to convert the council origin to a Plurality `MultiLocation` value.
|
||||
pub type CouncilToPlurality = BackingToPlurality<
|
||||
Origin,
|
||||
pallet_collective::Origin<Runtime, CouncilCollective>,
|
||||
CouncilBodyId,
|
||||
>;
|
||||
|
||||
/// Type to convert an `Origin` type value into a `MultiLocation` value which represents an interior location
|
||||
/// of this chain.
|
||||
pub type LocalOriginToLocation = (
|
||||
// We allow an origin from the Collective pallet to be used in XCM as a corresponding Plurality of the
|
||||
// `Unit` body.
|
||||
BackingToPlurality<Origin, pallet_collective::Origin<Runtime>, CollectiveBodyId>,
|
||||
CouncilToPlurality,
|
||||
// And a usual Signed origin to be used in XCM as a corresponding AccountId32
|
||||
SignedToAccountId32<Origin, AccountId, RococoNetwork>,
|
||||
);
|
||||
|
||||
impl pallet_xcm::Config for Runtime {
|
||||
type Event = Event;
|
||||
type SendXcmOrigin = xcm_builder::EnsureXcmOrigin<Origin, LocalOriginToLocation>;
|
||||
type XcmRouter = XcmRouter;
|
||||
// Anyone can execute XCM messages locally...
|
||||
// Anyone can execute XCM messages locally.
|
||||
type ExecuteXcmOrigin = xcm_builder::EnsureXcmOrigin<Origin, LocalOriginToLocation>;
|
||||
// ...but they must match our filter, which right now rejects everything.
|
||||
type XcmExecuteFilter = Nothing;
|
||||
type XcmExecuteFilter = Everything;
|
||||
type XcmExecutor = xcm_executor::XcmExecutor<XcmConfig>;
|
||||
// Anyone is able to use teleportation regardless of who they are and what they want to teleport.
|
||||
type XcmTeleportFilter = Everything;
|
||||
// Anyone is able to use reserve transfers regardless of who they are and what they want to
|
||||
// transfer.
|
||||
type XcmReserveTransferFilter = Everything;
|
||||
type Weigher = FixedWeightBounds<BaseXcmWeight, Call, MaxInstructions>;
|
||||
type LocationInverter = LocationInverter<Ancestry>;
|
||||
|
||||
@@ -225,6 +225,7 @@ reservable
|
||||
responder/SM
|
||||
retriability
|
||||
reverify
|
||||
ROC
|
||||
roundtrip/MS
|
||||
routable
|
||||
rpc
|
||||
|
||||
Reference in New Issue
Block a user