Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Commit

Permalink
Reduce base proof size weight component to zero (#7081)
Browse files Browse the repository at this point in the history
* Reduce base proof size weight component to 1KiB

* Create TempFixedXcmWeight and set PoV weight to 0

* Set DEFAULT_PROOF_SIZE to 0

* Fix comment

* Update test expectations

* Fix comment
  • Loading branch information
KiChjang committed May 3, 2023
1 parent 097ffd2 commit 8c7e95d
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
7 changes: 5 additions & 2 deletions runtime/polkadot/src/xcm_config.rs
Expand Up @@ -95,7 +95,10 @@ type LocalOriginConverter = (

parameter_types! {
/// The amount of weight an XCM operation takes. This is a safe overestimate.
pub const BaseXcmWeight: Weight = Weight::from_parts(1_000_000_000, 64 * 1024);
pub const BaseXcmWeight: Weight = Weight::from_parts(1_000_000_000, 1024);
/// A temporary weight value for each XCM instruction.
/// NOTE: This should be removed after we account for PoV weights.
pub const TempFixedXcmWeight: Weight = Weight::from_parts(1_000_000_000, 0);
/// Maximum number of instructions in a single XCM fragment. A sanity check against weight
/// calculations getting too crazy.
pub const MaxInstructions: u32 = 100;
Expand Down Expand Up @@ -317,7 +320,7 @@ impl xcm_executor::Config for XcmConfig {
type IsTeleporter = TrustedTeleporters;
type UniversalLocation = UniversalLocation;
type Barrier = Barrier;
type Weigher = FixedWeightBounds<BaseXcmWeight, RuntimeCall, MaxInstructions>;
type Weigher = FixedWeightBounds<TempFixedXcmWeight, RuntimeCall, MaxInstructions>;
// The weight trader piggybacks on the existing transaction-fee conversion logic.
type Trader =
UsingComponents<WeightToFee, TokenLocation, AccountId, Balances, ToAuthor<Runtime>>;
Expand Down
5 changes: 3 additions & 2 deletions xcm/src/v3/mod.rs
Expand Up @@ -1224,8 +1224,9 @@ impl<Call> TryFrom<OldXcm<Call>> for Xcm<Call> {
}
}

/// Default value for the proof size weight component. Set at 64 KB.
const DEFAULT_PROOF_SIZE: u64 = 64 * 1024;
/// Default value for the proof size weight component. Set at 0 KB.
/// NOTE: Make sure this is removed after we properly account for PoV weights.
const DEFAULT_PROOF_SIZE: u64 = 0;

// Convert from a v2 instruction to a v3 instruction.
impl<Call> TryFrom<OldInstruction<Call>> for Instruction<Call> {
Expand Down

0 comments on commit 8c7e95d

Please sign in to comment.