Limit max call size of Rialto/Millau runtimes (#1187)

* max call size <= 230 bytes

* fix benchmarks
This commit is contained in:
Svyatoslav Nikolsky
2021-10-21 15:29:49 +03:00
committed by Bastian Köcher
parent b60df0849c
commit 7b4f1c2236
10 changed files with 159 additions and 141 deletions
+2
View File
@@ -13,6 +13,7 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
frame-support = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
sp-core = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
sp-std = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false }
[features]
default = ["std"]
@@ -20,4 +21,5 @@ std = [
"codec/std",
"frame-support/std",
"sp-core/std",
"sp-std/std",
]
+25 -1
View File
@@ -17,8 +17,9 @@
#![cfg_attr(not(feature = "std"), no_std)]
use codec::{Decode, Encode};
use frame_support::RuntimeDebug;
use frame_support::{weights::Weight, RuntimeDebug};
use sp_core::U256;
use sp_std::vec::Vec;
/// Pending token swap state.
#[derive(Encode, Decode, Clone, RuntimeDebug, PartialEq, Eq)]
@@ -82,3 +83,26 @@ pub struct TokenSwap<ThisBlockNumber, ThisBalance, ThisAccountId, BridgedBalance
/// `target_balance_at_bridged_chain`.
pub target_account_at_bridged_chain: BridgedAccountId,
}
/// SCALE-encoded `Currency::transfer` call on the bridged chain.
pub type RawBridgedTransferCall = Vec<u8>;
/// Token swap creation parameters.
#[derive(Encode, Decode, Clone, RuntimeDebug, PartialEq, Eq)]
pub struct TokenSwapCreation<BridgedAccountPublic, ThisChainBalance, BridgedAccountSignature> {
/// Public key of the `target_account_at_bridged_chain` account used to verify
/// `bridged_currency_transfer_signature`.
pub target_public_at_bridged_chain: BridgedAccountPublic,
/// Fee that the `source_account_at_this_chain` is ready to pay for the tokens
/// transfer message delivery and dispatch.
pub swap_delivery_and_dispatch_fee: ThisChainBalance,
/// Specification version of the Bridged chain.
pub bridged_chain_spec_version: u32,
/// SCALE-encoded tokens transfer call at the Bridged chain.
pub bridged_currency_transfer: RawBridgedTransferCall,
/// Dispatch weight of the tokens transfer call at the Bridged chain.
pub bridged_currency_transfer_weight: Weight,
/// The signature of the `target_account_at_bridged_chain` for the message
/// returned by the `pallet_bridge_dispatch::account_ownership_digest()` function call.
pub bridged_currency_transfer_signature: BridgedAccountSignature,
}