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.