Skip to content
Snippets Groups Projects
  • georgepisaltu's avatar
    Follow up work on `TransactionExtension` - fix weights and clean up `UncheckedExtrinsic` (#6418) · ae4b68b3
    georgepisaltu authored
    
    Follow up to https://github.com/paritytech/polkadot-sdk/pull/3685
    Partially fixes https://github.com/paritytech/polkadot-sdk/issues/6403
    
    The main PR introduced bare support for the new extension version byte
    as well as extension weights and benchmarking.
    
    This PR:
    - Removes the redundant extension version byte from the signed v4
    extrinsic, previously unused and defaulted to 0.
    - Adds the extension version byte to the inherited implication passed to
    `General` transactions.
    - Whitelists the `pallet_authorship::Author`, `frame_system::Digest` and
    `pallet_transaction_payment::NextFeeMultiplier` storage items as they
    are read multiple times by extensions for each transaction, but are hot
    in memory and currently overestimate the weight.
    - Whitelists the benchmark caller for `CheckEra` and `CheckGenesis` as
    the reads are performed for every transaction and overestimate the
    weight.
    - Updates the umbrella frame weight template to work with the system
    extension changes.
    - Plans on re-running the benchmarks at least for the `frame_system`
    extensions.
    
    ---------
    
    Signed-off-by: default avatargeorgepisaltu <george.pisaltu@parity.io>
    Co-authored-by: command-bot <>
    Co-authored-by: default avatargui <gui.thiolliere@gmail.com>
    Unverified
    ae4b68b3
Code owners
Assign users and groups as approvers for specific file changes. Learn more.