Skip to content
Snippets Groups Projects
  • thiolliere's avatar
    Implement cumulus StorageWeightReclaim as wrapping transaction extension +... · 63c73bf6
    thiolliere authored
    Implement cumulus StorageWeightReclaim as wrapping transaction extension + frame system ReclaimWeight (#6140)
    
    (rebasing of https://github.com/paritytech/polkadot-sdk/pull/5234)
    
    ## Issues:
    
    * Transaction extensions have weights and refund weight. So the
    reclaiming of unused weight must happen last in the transaction
    extension pipeline. Currently it is inside `CheckWeight`.
    * cumulus storage weight reclaim transaction extension misses the proof
    size of logic happening prior to itself.
    
    ## Done:
    
    * a new storage `ExtrinsicWeightReclaimed` in frame-system. Any logic
    which attempts to do some reclaim must use this storage to avoid double
    reclaim.
    * a new function `reclaim_weight` in frame-system pallet: info and post
    info in arguments, read the already reclaimed weight, calculate the new
    unused weight from info and post info. do the more accurate reclaim if
    higher.
    * `CheckWeight` is unchanged and still reclaim the weight in post
    dispatch
    * `ReclaimWeight` is a new transaction extension in frame system. For
    s...
    Unverified
    63c73bf6
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
This project manages its dependencies using Cargo. Learn more