Skip to content
Snippets Groups Projects
  • Just van Stam's avatar
    Transactional processing for XCM (#1222) · 50eb12cf
    Just van Stam authored
    
    Moved from: https://github.com/paritytech/polkadot/pull/6951
    
    closes https://github.com/paritytech/polkadot-sdk/issues/490
    
    - [x] update cumulus
    
    --- 
    This PR introduces transactional processing of certain xcm instructions.
    For the list of instructions checkout
    https://github.com/paritytech/polkadot-sdk/issues/490. The transactional
    processing is implemented as an xcm-executor config item. The two
    implementations in this PR are `FrameTransactionalProcessor` and `()`.
    The `()` implementation does no transactional processing. Each
    implementation of the `ProcessTransaction` trait has an
    `IS_TRANSACTIONAL` const that tells the XCVM if transactional processing
    is actually implemented. If Transactional processing is implemented,
    changes to touched registers should also be rolled back to prevent
    inconsistencies.
    
    
    Note for reviewers:
    Check out the following safety assumption:
    https://github.com/paritytech/polkadot-sdk/pull/1222/files#diff-4effad7d8c1c9de19fd27e18661cbf2128c8718f3b2420a27d2f816e0749ea53R30
    
    ---------
    
    Co-authored-by: default avatarKeith Yeung <kungfukeith11@gmail.com>
    Co-authored-by: default avatarFrancisco Aguirre <franciscoaguirreperez@gmail.com>
    Co-authored-by: command-bot <>
    Unverified
    50eb12cf
Code owners
Assign users and groups as approvers for specific file changes. Learn more.