Chris Sosnin
c63b557e50
paras: count upgrade delay from inclusion ( #7486 )
...
* paras: count upgrade delay from inclusion
* fix warning
* rename check cause block number field
* rename inclusion_parent -> included_at
2023-07-19 12:06:58 +00:00
gupnik
2802414473
Moves Block to frame_system instead of construct_runtime and removes Header and BlockNumber ( #7431 )
...
* Companion for substrate
* Minor update
* Formatting
* Fixes for cumulus
* Fixes tests in polkadot-runtime-parachains
* Minor update
* Removes unused import
* Fixes tests in polkadot-runtime-common
* Minor fix
* Update roadmap/implementers-guide/src/runtime/configuration.md
Co-authored-by: ordian <write@reusable.software >
* ".git/.scripts/commands/fmt/fmt.sh"
* update lockfile for {"substrate"}
---------
Co-authored-by: ordian <write@reusable.software >
Co-authored-by: command-bot <>
2023-07-13 12:37:50 +00:00
Michal Kucharczyk
95ba849ee6
GenesisBuild<T,I> deprecated. BuildGenesisConfig added (#7397 )
...
* GenesisBuild<T,I> deprecated. BuildGenesisConfig added
* fmt
* fixes
* more fixes
* more fixes
* fixes
* update lockfile for {"substrate"}
* fix
---------
Co-authored-by: parity-processbot <>
2023-07-12 11:04:15 +00:00
Chris Sosnin
a032a128e5
configuration: drop pvf_checking_enabled parameter ( #7396 )
...
* configuration: drop pvf_checking_enabled
* fix warning
2023-07-11 12:02:47 +00:00
Bastian Köcher
e3ee909e9e
paras: Prune upgrade cooldowns ( #7470 )
...
After an upgrade cooldown triggered to remove a signal we also need to
prune it from the list.
2023-07-10 15:08:12 +00:00
Michal Kucharczyk
a767358122
Serialize/Deserialize trait implemented in no-std for numerous types ( #7312 )
...
* ParaId: Serialize/Deserialize trait implemented in no-std
* Serialize/Deserialize trait implemented in no-std for more types
* serde in deps enabled
* fix
* missing types added
* update lockfile for {"substrate"}
* ".git/.scripts/commands/fmt/fmt.sh"
---------
Co-authored-by: parity-processbot <>
2023-06-01 16:17:49 +00:00
Michal Kucharczyk
3d008cd074
pallets: implement Default for GenesisConfig in no_std ( #7271 )
...
* pallets: implement Default for GenesisConfig in no_std
This change is follow-up of: https://github.com/paritytech/substrate/pull/14108
It is a step towards: https://github.com/paritytech/substrate/issues/13334
* Cargo.lock updated
* update lockfile for {"substrate"}
---------
Co-authored-by: parity-processbot <>
2023-05-25 22:26:02 +00:00
Gavin Wood
400864c352
Use Message Queue pallet for UMP dispatch ( #6271 )
...
* Add ProcessXcmMessage struct
* Migrate away from weights in host config
* New well-known key to report UMPQ capacity
* Add missing file
* Fixes
* Remove original UMP files
* Docs
* Update runtime/parachains/src/inclusion/mod.rs
Co-authored-by: asynchronous rob <rphmeier@gmail.com >
* Add benchmarking
* Benchmarks
* Mock example of using the QueueChangeHandler to update the WKK
* Use master Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Merge remote-tracking branch 'origin/master' into gav-message-queue
* Update Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update remove-weight migration
The migration got touched on master; just resolving conflicts here.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add message- to dispatch-origin conversion for XCM processing
Just using the `impl Into<MultiLocation>` was a bit inflexible.
Like this, the Relaychain can convert `UMP(para)` to a MultiLocation `para`.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* DNM: Temporarily comment code since XCMv3 is not merged yet
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use u64 for queue-wide limits on UmpAcceptanceCheckErr
Using u32 here was one audit finding for the queue pallet.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Define one sub-queue per *MP queue
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Harden check_upward_messages
Using safe math and casts.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add type-safe well_known_keys
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add message-queue weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Deploy MessageQueue to Polkadot
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update Cargo.toml
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Migrate to parachain config V5
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update UMP tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert messed up merge 🤦
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update remove-weight migration
The migration got touched on master; just resolving conflicts here.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add message- to dispatch-origin conversion for XCM processing
Just using the `impl Into<MultiLocation>` was a bit inflexible.
Like this, the Relaychain can convert `UMP(para)` to a MultiLocation `para`.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* DNM: Temporarily comment code since XCMv3 is not merged yet
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use u64 for queue-wide limits on UmpAcceptanceCheckErr
Using u32 here was one audit finding for the queue pallet.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Define one sub-queue per *MP queue
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Harden check_upward_messages
Using safe math and casts.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add type-safe well_known_keys
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add message-queue weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Deploy MessageQueue to Polkadot
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update Cargo.toml
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Migrate to parachain config V5
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update UMP tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Make stuff compile
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Move DMP and HRMP messages to the MessageQueue
It currently does not compile in the CIbecause of some local
tweaks to Substrate.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Diener for CI
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* diener update cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert wrong changes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "DNM: Temporarily comment code since XCMv3 is not merged yet"
This reverts commit 820aa235cb21dd1d2621843607f7682bf035434e.
* Make compile
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup runtimes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Define benchmarks
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use master Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Lockfile
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add AggregateMessageOrigin
This enum currently only holds one value, but having it will make
it easier in the future to extend.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Forbid UMP for off-boarding paras
- Reject candidates with UMP messages for off-boarding paras
- Forbid scheduling off-boarding when a para has unprocess UMPs
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Delete stupid test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use BoundedVec for upward messages
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add weights and fix MessageProcessor
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Bound receive_upward_messages and check bound in configuration pallet
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Bound Debug impl
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* clippy
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test runtime
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix xcm-simulator
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Properly fix xcm-simulator and fuzzer
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* cargo update -p sp-io
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Adapt to upstream Substrate changes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix ProcesseMessage impls
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Some tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use master Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* cargo update -p sp-io
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use new MQ API
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add UMP while Para offboarding tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use Mocked message processor for benchmarking
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use variables for constants
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add MQ pallet weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use MQ pallet weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Configure QueueChangeHandler
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add config test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix MQ serive weight
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup outgoing UMP dispatch queues
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use Master Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update Cargo.lock
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Weight mul is not const
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Clippy
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove merge marker
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update runtime/parachains/src/inclusion/mod.rs
Co-authored-by: Gavin Wood <gavin@parity.io >
* Update runtime/kusama/src/lib.rs
Co-authored-by: Gavin Wood <gavin@parity.io >
* Use lowercase UMP
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Clarify comment
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use Weight::from_parts
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Emit event after the fact
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add defensive_proof to receive_upward_messages
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Reapply "Remove original UMP files"
Looks like they came back from the dead. Re-apply commit cf6d316f0
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove old files
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Rename MaxUmpMessageLen -> MaxUmpMessageLenOf
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Test defensive message dropping of receive_upward_messages
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup imports
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update implementors guide
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove FAIL-CI mark
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Delete unused code
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add another test for MQ change hook
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Imports
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Keep Kusama runtime formatting
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "Delete unused code"
This reverts commit dd76bca5025b7e1ef846a9539c3607eed185f16a.
* Feature gate mock functions
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review: Use saturating_add
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Test RelayDispatchQueueSize storage key
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Move migration to own file to avoid merge conflicts
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Migration in own file
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Rococo: configure MQ pallet
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "Rococo: configure MQ pallet"
Going to do this as follow up, since it needs Substrate changes
and i dont want to stall this MR any longer.
This reverts commit b9c15e8a8339c4e877d654ee3f09903af4210736.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "Fixup tests"
This reverts commit 88f1cbe20774d20e5e1e554e798960ae39437af1.
* Fixup migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix CI
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix other migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Bump MAX_CODE_SIZE to 10MiB
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add ForceUpdateUmpLimits migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* clippy
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* clippy
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* imports
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use defensive instead of defensive_proof
'defensive_proof' also prints the 'self', which spams the console
too much when running the tests. Just the length is enough.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Rename to ScheduleConfigUpdate
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup migration checks
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add MAX_CODE_SIZE to ScheduleConfigUpdate
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Set MAX_CODE_SIZE to 4MiB
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix benchmark
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix formatting
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "Add MAX_CODE_SIZE to ScheduleConfigUpdate"
This reverts commit 7caffb09e83083b57affd548215e45b25c3d64dc.
* Revert "Set MAX_CODE_SIZE to 4MiB"
This reverts commit 103ffbaf686487d2fbe0082a16826af17cacc1a1.
* Revert "Bump MAX_CODE_SIZE to 10MiB"
This reverts commit 530734b7b0da5b7680054e0242348fcc79a666fe.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove consistency check from migration
Re-addig these checks is blocked on https://github.com/paritytech/polkadot/issues/7108
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix constants
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Bump MAX_UPWARD_MESSAGE_SIZE_BOUND for Westend
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix migrations
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use old nightly for fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixes
* cargo fmt
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixes
* Add MQ pallet to fuzzer
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix XMC simulator example
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove runtime-benchmarks from fuzzers
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "Remove runtime-benchmarks from fuzzers"
This reverts commit e1f2bb01b6dea2dd465539d3658719895b58b557.
* Fix example simulator
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add V6 migration and remove old ones
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Actually make old migrations reusable
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Dont delete old migrations
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Future proof AggregateMessageOrigin and review fixes
There are indications that Loopback and Bridged will be needed soon.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* More cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fix benchmarks
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix fuzzer build
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review
Co-authored-by: muharem <ismailov.m.h@gmail.com >
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove old migration
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Set MQ service weight to 20%
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tabs in Markdown
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
---------
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: asynchronous rob <rphmeier@gmail.com >
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
2023-05-19 16:14:13 +00:00
Chris Sosnin
9c08536d5f
paras: dismiss pvf_checking_enabled configuration ( #7138 )
...
* paras: unconditionally precheck pvfs
* Update integration tests
* paras_registrar tests
* runtime benchmark tests
* fix bench
* bypass prechecking in test node
* adjust bench
* ".git/.scripts/commands/bench/bench.sh" runtime polkadot runtime_parachains::paras
* ".git/.scripts/commands/bench/bench.sh" runtime kusama runtime_parachains::paras
* ".git/.scripts/commands/bench/bench.sh" runtime rococo runtime_parachains::paras
* ".git/.scripts/commands/bench/bench.sh" runtime westend runtime_parachains::paras
* use test helper
* fix new test
---------
Co-authored-by: command-bot <>
2023-05-08 18:58:55 +00:00
s0me0ne-unkn0wn
64660ee8d2
Remove years from copyright notes ( #7034 )
...
* Happy New Year!
* Remove year entierly
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove years from copyright notice in the entire repo
---------
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2023-04-08 20:38:35 +00:00
Chris Sosnin
2e5da3cb72
introduce new well known key ( #6915 )
2023-03-21 13:13:20 +00:00
Mira Ressel
058082fcb0
tweak some pattern matches to address a new clippy warning
2023-03-20 16:36:06 +01:00
Davide Galassi
46c36e5a4f
[Companion #13615 ] Keystore overhaul ( #6892 )
...
* Remove not required async calls
* Fixed missing renaming
* make_keystore can be sync
* More fixes
* Trivial nitpicks
* Cherry pick test fix from master
* Fixes after master merge
* update lockfile for {"substrate"}
---------
Co-authored-by: parity-processbot <>
2023-03-17 12:09:15 +00:00
Vivek Pandya
87db25ce01
Remove use of Store trait ( #6835 )
...
* Remove use of Store trait from runtime directory
* Remove Store trait usage from xcm directory
* Run cargo fmt
* update lockfile for {"substrate"}
---------
Co-authored-by: parity-processbot <>
2023-03-13 16:11:22 +00:00
Anton Vilhelm Ásgeirsson
65fdcf3413
Use BTreeSet as the internal type of ParachainsCache ( #6795 )
...
* Add tests for ParachainsCache
* Use BTreeSet for ParachainsCache internals
* Use `into_iter()` instead of cloneing storage vals
2023-02-27 17:22:46 +00:00
Gavin Wood
1a1bfd2af9
XCM v3 ( #4097 )
...
* cargo fmt
* Create benchmarks for XCM instructions introduced in v3 (#4564 )
* Create benchmarks for BurnAsset and ExpectAsset
* Add benchmarks for ExpectOrigin and ExpectError
* Add benchmarks for QueryPallet and ExpectPallet
* Add benchmarks for ReportTransactStatus and ClearTransactStatus
* cargo fmt
* Use AllPalletsWithSystem in mocks
* Update XCM generic benchmarks for westend
* Remove default impls for some XCM weight functions
* Fix compilation error
* Add weight_args helper attribute
* Remove manually written XcmWeightInfo
* Parse trailing comma
* Revert "Add weight_args helper attribute"
This reverts commit 3b7c47a6182e1b9227036c38b406d494c3fcf6fd.
* Fixes
* Fixes
* XCM v3: Introduce querier field into `QueryReponse` (#4732 )
* Introduce querier field into QueryReponse
* Convert &Option<MultiLocation> to Option<&MultiLocation>
&Option<T> is almost always never quite useful, most of the time it
still gets converted to an Option<&T> via `as_ref`, so we should simply
make functions that accept Option<&T> instead.
* Fix tests
* cargo fmt
* Fix benchmarks
* Appease spellchecker
* Fix test
* Fix tests
* Fix test
* Fix mock
* Fixes
* Fix tests
* Add test for response queriers
* Update xcm/pallet-xcm/src/lib.rs
* Test for non-existence of querier
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* Fixes
* Fixes
* Add `starts_with` function to `MultiLocation` and `Junctions` (#4835 )
* add matches_prefix function to MultiLocation and Junctions
* rename matches_prefix to starts_with
* remove unnecessary main in doc comment
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Make use of starts_with in match_and_split
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* XCM v3: Bridge infrastructure (#4681 )
* XCM bridge infrastructure
* Missing bit of cherry-pick
* Revamped XCM proc macros; new NetworkIds
* Fixes
* Formatting
* ExportMessage instruction and config type
* Add MessageExporter definitions
* Formatting
* Missing files
* Fixes
* Initial bridging config API
* Allow for two-stage XCM execution
* Update xcm/src/v3/mod.rs
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* XCM crate building again
* Initial bridging primitive
* Docs
* Docs
* More work
* More work
* Merge branch 'gav-xcm-v3' into gav-xcm-v3-bridging
* Make build
* WithComputedOrigin and SovereignPaidRemoteExporter
* Remove TODOs
* Slim bridge API and tests.
* Fixes
* More work
* First bridge test passing
* Formatting
* Another test
* Next round of bridging tests
* Repot tests
* Cleanups
* Paid bridging
* Formatting
* Tests
* Spelling
* Formatting
* Fees and refactoring
* Fixes
* Formatting
* Refactor SendXcm to become two-phase
* Fix tests
* Refactoring of SendXcm and ExportXcm complete
* Formatting
* Rename CannotReachDestination -> NotApplicable
* Remove XCM v0
* Minor grumbles
* Formatting
* Formatting
* Fixes
* Fixes
* Cleanup XCM config
* Fee handling
* Fixes
* Formatting
* Fixes
* Bump
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* Bump Substrate
* XCM v3: `ExchangeAsset` and Remote-locking (#4945 )
* Asset Exchange and Locks
* Make sure XCM typers impl MaxEncodedLen
* Basic implementation for locks
* Bump Substrate
* Missing files
* Use new API
* Introduce instruction
* Big refactor
* Docs
* Remove deprecated struct
* Remove deprecated struct
* Repot XCM builder tests
* ExchangeAsset test
* Exchange tests
* Locking tests
* Locking tests
* Fixes and tests
* Fixes
* Formatting
* Spelling
* Add simulator test for remote locking
* Fix tests
* Bump
* XCM v3: Support for non-fungibles (#4950 )
* NFT support and a test
* New files.
* Integration tests for sending NFTs
* Formatting
* Broken Cargo features
* Use 2021 edition
* Fixes
* Formatting
* Formatting
* Update xcm/xcm-builder/src/asset_conversion.rs
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* Update xcm/xcm-builder/src/nonfungibles_adapter.rs
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* Update xcm/xcm-executor/src/lib.rs
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* Fixes
* Fixes
* Fixes
* Formatting
* Fixes
Co-authored-by: Bastian Köcher <info@kchr.de >
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* XCM v3: Context & ID hash (#4756 )
* send_xcm returns message hash
* cargo fmt
* Create topic register and instructions
* Fix weights
* Use tabs
* Sketch out XcmContext
* Fix doc test
* Add the XCM context as a parameter to executor trait fns
* Fixes
* Add XcmContext parameter
* Revert adding context as an arg to SendXcm trait methods
* Revert adding context argument to ConvertOrigin trait methods
* cargo fmt
* Do not change the API of XcmExecutor::execute
* Fixes
* Fixes
* Fixes
* Fixes
* Remove convenience method
* Fixes
* Fixes
* cargo fmt
* Fixes
* Add benchmarks for XCM topic instructions
* cargo run --quiet --profile=production --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
* Remove context argument on FilterAssetLocation
* Fixes
* Remove unused import
* Fixes
* Fixes
* Fixes
* Accept XCM hash parameter in ExecuteXcm trait methods
* cargo fmt
* Properly enable sp-io/std
* Fixes
* default-features = false
* Fixes
* Fixes
* Fixes
* Make XcmContext optional in withdraw_asset
* Fixes
* Fixes
* Fixes
* Modify tests to check for the correct XCM hash
* Small refactor
* cargo fmt
* Check for expected hash in xcm-builder unit tests
* Add doc comment for the optionality of the XCM context in withdraw_asset
* Update xcm/src/v3/traits.rs
* Update xcm/src/v3/traits.rs
* Store XcmContext and avoid rebuilding
* Use ref for XcmContext
* Formatting
* Fix incorrect hash CC @KiChjang
* Refactor and make clear fake hashes
* Fixes
* Fixes
* Fixes
* Fix broken hashing
* Docs
* Fixes
* Fixes
* Fixes
* Formatting
* Fixes
* Fixes
* Fixes
* Remove unknowable hash
* Formatting
* Use message hash for greater identifiability
* Formatting
* Fixes
* Formatting
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
Co-authored-by: Parity Bot <admin@parity.io >
* Fixes
* Fixes
* Fixes
* Fixes
* Formatting
* Fixes
* Formatting
* Fixes
* Fixes
* Formatting
* Formatting
* Remove horrible names
* Bump
* Remove InvertLocation trait (#5092 )
* Remove InvertLocation trait
* Remove unneeded functions
* Formatting
* Fixes
* Remove XCMv1 (#5094 )
* Remove XCMv1
* Remove XCMv1
* Formatting
* Fixes
* Fixes
* Formatting
* derive serialize/deserialize for xcm primitives (#5036 )
* derive serialize/deserialize for xcm primitives
* derive serialize/deserialize for xcm primitives
* update v3
* update v2
Co-authored-by: Gav Wood <gavin@parity.io >
* Update lock
* Fixes
* Add benchmarks for the ExchangeAsset instruction
* `AliasOrigin` instruction stub (#5122 )
* AliasOrigin instruction stub
* Fixes
* Fixes
* Update substrate
* Fixes
* Ensure same array length before using copy_from_slice
* Fixes
* Add benchmarks for the UniversalOrigin instruction
* Remove unused import
* Remove unused import
* Add benchmarks for SetFeesMode instruction
* Add benchmarks for asset (un)locking instructions
* Leave AliasOrigin unbenchmarked
* Fixes after merge
* cargo fmt
* Fixes
* Fixes
* Set TrustedReserves to None on both Kusama and Westend
* Remove extraneous reserve_asset_deposited benchmark
* Fix universal_origin benchmark
* cargo run --quiet --profile=production --features=runtime-benchmarks -- benchmark pallet --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
* Don't rely on skipped benchmark functions
* Fixes
* cargo run --quiet --profile=production --features=runtime-benchmarks -- benchmark pallet --chain=kusama-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/kusama/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
* Fix unused variables
* Fixes
* Spelling
* Fixes
* Fix codec index of VersionedXcm
* Allows to customize how calls are dispatched from XCM (#5657 )
* CallDispatcher trait
* fmt
* unused import
* fix test-runtime
* remove JustDispatch type
* fix typo in test-runtime
* missing CallDispatcher
* more missing CallDispatcher
* Update comment `NoteAssetLocked` -> `NoteUnlockable`
* Fixes
* Fixes
* Adjust MultiAssets weights based on new wild card variants
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* Some late fixes for XCMv3 (#5237 )
* Maximise chances that trapped assets can be reclaimed
* Do origin check as part of ExportMessage for security
* Formatting
* Fixes
* Cleanup export XCM APIs
* Formatting
* Update xcm/src/v3/junctions.rs
* UnpaidExecution instruction and associated barrier.
* Tighten barriers (ClearOrigin/QueryResponse)
* Allow only 1 ClearOrigin instruction in AllowTopLevelPaidExecutionFrom
* Bi-directional teleport accounting
* Revert other fix
* Build fixes]
* Tests build
* Benchmark fixes
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* Update Substrate
* Re-export `pub` stuff from universal_exports.rs + removed unecessary clone (#6145 )
* Re-export `pub` stuff from universal_exports.rs
* Removed unnecessary clone
* Use 2D weights in XCM v3 (#6134 )
* Depend upon sp-core instead of sp-runtime
* Make sp-io a dev-dependency
* Use 2D weights in XCM v3
* cargo fmt
* Add XCM pallet migration to runtimes
* Use from_parts
* cargo fmt
* Fixes
* cargo fmt
* Remove XCMWeight import
* Fixes
* Fixes
* Fixes
* Fixes
* Use translate in migration
* Increase max upward message size in tests
* Fix doc test
* Remove most uses of from_ref_time
* cargo fmt
* Fixes
* Fixes
* Add extrinsic benchmarking to XCM pallet
* cargo fmt
* Fixes
* Use old syntax
* cargo fmt
* Fixes
* Remove hardcoded weights
* Add XCM pallet to benchmarks
* Use successful origin
* Fix weird type parameter compilation issue
* Fixes
* ".git/.scripts/bench-bot.sh" runtime westend-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime rococo-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime kusama-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_xcm
* Use benchmarked XCM pallet weights
* Fixes
* Fixes
* Use override instead of skip
* Fixes
* Fixes
* Fixes
* Fixes
* ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_xcm
* Fixes
* ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime westend-dev pallet_xcm
Co-authored-by: command-bot <>
* Replace Weight::MAX with 100b weight units
* Add test to ensure all_gte in barriers is correct
* Update xcm/src/v3/junction.rs
Co-authored-by: asynchronous rob <rphmeier@gmail.com >
* Add more weight tests
* cargo fmt
* Create thread_local in XCM executor to limit recursion depth (#6304 )
* Create thread_local in XCM executor to limit recursion depth
* Add unit test for recursion limit
* Fix statefulness in tests
* Remove panic
* Use defer and environmental macro
* Fix the implementation
* Use nicer interface
* Change ThisNetwork to AnyNetwork
* Move recursion check up to top level
* cargo fmt
* Update comment
Co-authored-by: Bastian Köcher <info@kchr.de >
* Add upper limit on the number of overweight messages in the queue (#6298 )
* Add upper limit on the number of ovwerweight messages in the queue
* Add newline
* Introduce whitelist for Transact and limit UMP processing to 10 messages per block (#6280 )
* Add SafeCallFilter to XcmConfig
* Limit UMP to receive 10 messages every block
* Place 10 message limit on processing instead of receiving
* Always increment the message_processed count whenever a message is processed
* Add as_derivative to the Transact whitelist
* cargo fmt
* Fixes
* Update xcm/xcm-builder/src/universal_exports.rs
Co-authored-by: Branislav Kontur <bkontur@gmail.com >
* Fixes
* Fixes
* Remove topic register and instead use the topic field in XcmContext
* Derive some common traits for DispatchBlobError
* Fixes
* cargo fmt
* Fixes
* Fixes
* Fix comments
* Fixes
* Introduce WithOriginFilter and apply it as the CallDispatcher for runtimes
* Fixes
* Appease clippy and fixes
* Fixes
* Fix more clippy issues
* Fixes
* ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime westend-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime westend-dev pallet_xcm
* Add benchmark function for ExportMessage
* Fix comment
* Add upper limit to DownwardMessageQueues size
* Add max size check for queue in can_queue_downward_message
* Fixes
* Make Transact runtime call configurable
* Return Weight::MAX when there is no successful send XCM origin
* Update substrate
* Fixes
* Fixes
* Remove ExportMessage benchmark
* Remove assertion on Transact instruction benchmark
* Make reachable destination configurable in XCM pallet benchmarks
* Fixes
* Fixes
* Remove cfg attribute in fuzzer
* Fixes
* Remove cfg attribute for XCM pallet in test runtime
* Fixes
* Use ReachableDest where possible
* Fixes
* Add benchmark for UnpaidExecution
* Update substrate
* Ensure benchmark functions pass filters
* Add runtime-benchmarks feature to fuzzer
* Ensure FixedRateOfFungible accounts for proof size weights
* cargo fmt
* Whitelist remark_with_event when runtime-benchmarks feature is enabled
* Use remark_with_event for Transact benchmarks
* Fix Cargo.lock
* Allow up to 3 DescendOrigin instructions before UnpaidExecution
* cargo fmt
* Edit code comment
* Check check_origin for unpaid execution privilege
* Fixes
* Small nits for xcm-v3 (#6408 )
* Add possibility to skip benchmark for export_message
* ".git/.scripts/bench-bot.sh" xcm westend-dev pallet_xcm_benchmarks::generic
* Revert
* ".git/.scripts/bench-bot.sh" xcm westend-dev pallet_xcm_benchmarks::generic
* Add HaulBlobError to `fn haul_blob`
* ".git/.scripts/bench-bot.sh" xcm westend-dev pallet_xcm_benchmarks::generic
Co-authored-by: command-bot <>
* Revert changes to UnpaidExecution
* Change AllowUnpaidExecutionFrom to be explicit
* Fix log text
* cargo fmt
* Add benchmarks for XCM pallet version migration (#6448 )
* Add benchmarks for XCM pallet version migration
* cargo fmt
* Fixes
* Fixes
* Fixes
* ".git/.scripts/bench-bot.sh" runtime westend-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime kusama-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime rococo-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_xcm
* Fix benchmarks
* Fix benchmarks
* ".git/.scripts/bench-bot.sh" runtime westend-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime kusama-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime rococo-dev pallet_xcm
* ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_xcm
Co-authored-by: command-bot <>
* Merge remote-tracking branch 'origin/master' into gav-xcm-v3
* Fixes
* Fix comments (#6470 )
* Specify Ethereum networks by their chain id (#6286 )
Co-authored-by: Squirrel <gilescope@gmail.com >
* Use for Kusama
* Use WithComputedOrigin for Polkadot, Rococo and Westend
* Update lock
* Fix warning
* Update xcm/pallet-xcm/src/tests.rs
Co-authored-by: Squirrel <gilescope@gmail.com >
* Update runtime/parachains/src/ump/migration.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update xcm/pallet-xcm/src/migration.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixes
* cargo fmt
* Typo
* Update xcm/src/v3/mod.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Docs
* Docs
* Docs
* Docs
* Docs
* Update xcm/src/v3/multiasset.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add tests for MultiAssets::from_sorted_and_deduplicated
* Fail gracefully when same instance NFTs are detected during push
* Update Substrate to fix benchmarks
* Apply suggestions from code review
* Update runtime/kusama/src/xcm_config.rs
* Rename arguments
* Attempt to fix benchmark
* ".git/.scripts/commands/bench/bench.sh" runtime polkadot-dev runtime_parachains::ump
* Use actual weights for UMP pallet in Polkadot
* ".git/.scripts/commands/bench/bench.sh" runtime kusama-dev runtime_parachains::ump
* ".git/.scripts/commands/bench/bench.sh" runtime westend-dev runtime_parachains::ump
* ".git/.scripts/commands/bench/bench.sh" runtime rococo-dev runtime_parachains::ump
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Bastian Köcher <info@kchr.de >
Co-authored-by: Parity Bot <admin@parity.io >
Co-authored-by: stanly-johnson <stanlyjohnson@outlook.com >
Co-authored-by: nanocryk <6422796+nanocryk@users.noreply.github.com >
Co-authored-by: Branislav Kontur <bkontur@gmail.com >
Co-authored-by: asynchronous rob <rphmeier@gmail.com >
Co-authored-by: command-bot <>
Co-authored-by: Vincent Geddes <vincent.geddes@hey.com >
Co-authored-by: Squirrel <gilescope@gmail.com >
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2023-01-17 07:04:34 +00:00
Marcin S
2efa3bab98
pre-checking: Reject failed PVFs ( #6492 )
...
* pre-checking: Reject failed PVFs
* paras: immediately reject any PVF that cannot reach a supermajority
* Make the `quorum` reject condition a bit more clear semantically
* Add comment
* Update implementer's guide
* Update a link
Not related to the rest of the PR, but I randomly noticed and fixed this.
* Update runtime/parachains/src/paras/tests.rs
Co-authored-by: s0me0ne-unkn0wn <48632512+s0me0ne-unkn0wn@users.noreply.github.com >
* Remove unneeded loop
* Log PVF retries using `info!`
* Change retry logs to `warn!` and add preparation failure log
* Log PVF execution failure
* Clarify why we reject failed PVFs
* Fix PVF reject runtime benchmarks
Co-authored-by: s0me0ne-unkn0wn <48632512+s0me0ne-unkn0wn@users.noreply.github.com >
2023-01-12 09:24:42 +00:00
s0me0ne-unkn0wn
1cb1d03c08
Re-export current primitives in crate root ( #6487 )
...
* Re-export current primitives in crate root
* Add missing exports
* restart CI
2023-01-11 11:28:12 +00:00
Oliver Tale-Yazdi
d387338fb0
Use explicit call indices ( #6449 )
...
* cargo update -p sp-io
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use explicit call indices
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2022-12-19 23:13:34 +01:00
ordian
063aab236f
guide: remove refences to outdated secondary checkers ( #6309 )
...
* guide: remove refences to outdated secondary checkers
* Update roadmap/implementers-guide/src/glossary.md
* guide: remove refences to Fisherman
* revert changes to roadmap/parachains.md
2022-11-30 13:28:35 +01:00
alexgparity
6d83525b50
Replace parachain/parathread boolean by enum ( #6198 )
...
* Replace parachain/parathread boolean by enum
* Address PR comments
* Update dependencies
* ParaType -> ParaKind
* Swap enum field order to avoid migration
* Rename paratype field to parakind
* Manual en-/decocing of Parakind
* Manual TypeInfo for ParaKind
* rename field back to parachain
* minor
* Update runtime/parachains/src/paras/mod.rs
Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com >
* Manual serde Serialize and Deserialize for ParaKind
* cargo fmt
* Update runtime/parachains/src/paras/mod.rs
Co-authored-by: Andronik <write@reusable.software >
* Add test for serde_json encoding/decoding
* Move serde_json dep to dev-deps
Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com >
Co-authored-by: Andronik <write@reusable.software >
2022-11-01 18:34:16 +01:00
Shawn Tabrizi
bccffcad12
Manual Para Lock ( #5451 )
...
* remove para lock check for now
* fmt
* manual para lock
* expose schedule_code_upgrade and set_current_head
* extrinsics and benchmarks
* use zero
* add weights
* fix variable name
* add and fix comments
* fix weights
* add back default lock
Co-authored-by: parity-processbot <>
2022-10-11 19:22:38 +00:00
Chris Sosnin
fd1856e1e9
paras: unblock offboarding when pvf-check concludes ( #6032 )
...
* Unblock offboarding for upgrading paras
* ".git/.scripts/fmt.sh" 1
Co-authored-by: command-bot <>
2022-09-26 19:02:05 +02:00
Sergej Sakac
937c4e76ae
Rename Origin ( #6020 )
...
* Rename Origin
* fmt
* fixes
* more fixes
* fix
* more fixing
* small fixes
* last touches
* update lockfile for {"substrate"}
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
Co-authored-by: parity-processbot <>
2022-09-20 22:53:12 +00:00
Sergej Sakac
8ea6076fe5
Companion for #11981 ( #5915 )
...
* Companion for #11981
* more renaming
* fmt
* fixes
* add generic type
* Companion for #11831
* fix
* revert changes
* Delete rename-outer-enum.diff
* revert
* Update run_benches_for_runtime.sh
* rename type Call & type Event
* passing tests
* fmt
* small fixes
* commit
* fix
* fmt
* commit
* error fixes
* fix
* small fix in test
* Update lib.rs
* Update lib.rs
* Update lib.rs
* Update lib.rs
* Update lib.rs
* Update lib.rs
* Update lib.rs
* remove RuntimeCall from pallet_grandpa
* last fix
* commit
* rename
* merge fix
* update lockfile for {"substrate"}
* cargo +nightly fmt
* fix
Co-authored-by: parity-processbot <>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2022-09-12 23:03:47 +00:00
Keith Yeung
ef3b001b4e
Companion for paritytech/substrate#12183 ( #5971 )
...
* Companion for paritytech/substrate#12183
* Fixes
* Fixes
* Fixes
* cargo fmt
* Fixes
* Fixes
* Fixes
* cargo fmt
* Update runtime/parachains/src/paras_inherent/mod.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* update lockfile for {"substrate"}
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: parity-processbot <>
2022-09-08 05:05:03 +00:00
Shawn Tabrizi
e28bf2e476
Companion for Weight v1.5 Follow Up ( #5949 )
...
* updates
* remove new
* fix up some stuff
* fix cargo files
* fix
* fix template
* update lockfile for {"substrate"}
* Update block_weights.rs
* remove unused
* remove unused
Co-authored-by: parity-processbot <>
2022-09-01 19:00:51 +00:00
Shawn Tabrizi
28e94d97dd
Companion for Weight v1.5 ( #5943 )
...
* fix to latest substrate pr
* update weights
* cargo build -p polkadot-runtime-parachains
* fix xcm-builder
* fix import
* fix a bunch
* fix a bunch of weight stuff
* kusama compile
* unused
* builds
* maybe fix
* cargo test -p polkadot-runtime-parachains
* xcm simulator example
* fix tests
* xcm sim fuzz
* fix runtime tests
* remove unused
* fix integration tests
* scalar div
* update lockfile for {"substrate"}
Co-authored-by: parity-processbot <>
2022-08-31 11:59:39 +00:00
Qinxuan Chen
74078d8eb9
Comanion for substrate#11136 ( #5218 )
...
* Comanion for substrate#11136
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* revert changes in bridge
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
2022-04-04 11:13:34 +02:00
Sergei Shulepov
c8fda4f1b6
paras: include_pvf_check_statement rt bench ( #4938 )
...
* paras: `include_pvf_check_statement` rt bench
Resolves #4933
This PR adds a benchmark for the `include_pvf_check_statement`
dispatchable. This is a necessary step to make it work without
modifications. That enables us to proceed with testing on Versi.
This introduces 5 new benchmarks. Those measure performance of the
`include_pvf_check_statement` under 2 different conditions:
1. regular vote submission. That's the common case.
2. submission of the last vote. That happens only once and leads to a
heavy finalization stage.
There are 2 different types of finalization (one for onboarding, one for
upgrading) and there are two outcomes: accepted and rejected. Those 4
are similar but I decided to cover them all and assign the maximum of
all 4. This is to avoid a situation when one of those paths becomes more
heavier than others and opens up an attack venue.
The regular vote submission weight is drastically different from the
submission last vote weight. That's why in case during runtime
finalization was not executed the weight consumed value will be lowered
down to the regular vote submission.
The finalization weight is proportional to the number of "causes", i.e.
the events that caused the PVF pre-checking vote in the first place, and
here we assume that the maximum number of causes is 100.
Theoretically, there is nothing that prevents an adversary to
register/upgrade to more than 100 parachains. In that case, the consumed
weight will be lower than the actual time consumed by the finalization
process. That can enable a DoS vector.
However, practically, it is not very possible. Right now it is very
expensive to call `schedule_para_initialize` because it requires a very
large lock up of funds. Moreover, finalizing a vote with 100 causes
leads to around 31ms time spent. Finalizing more will require more time.
However, finalizing with 200 causes will cause ≈62ms delay. This is not
that bad since even though we had a full block and the adversary tried
to finalize 200 causes it won't be able to even exceed the operational
extrinsic boundary of 250ms and even if so it won't make big difference.
That said, this should be addressed later on, esp. when we enable
parathreads, which will make creating causes easier. One of potential
solutions will be shifting the logic of finalization into
`on_initialize`/`on_finalize`. Another is to create a maximum number of
causes and then reject upgrades or onboardings if that was reached.
* cargo run --quiet --profile=production --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --profile=production --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --profile=production --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --profile=production --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs
* Fix import error
Co-authored-by: Parity Bot <admin@parity.io >
Co-authored-by: Robert Klotzner <robert.klotzner@gmx.at >
Co-authored-by: Lldenaurois <Ljdenaurois@gmail.com >
2022-03-24 17:52:40 +01:00
Robert Habermeier
49f7e5cce4
Finish migration to v2 primitives ( #5037 )
...
* remove v0 primitives from polkadot-primitives
* first pass: remove v0
* fix fallout in erasure-coding
* remove v1 primitives, consolidate to v2
* the great import update
* update runtime_api_impl_v1 to v2 as well
* guide: add `Version` request for runtime API
* add version query to runtime API
* reintroduce OldV1SessionInfo in a limited way
2022-03-09 14:01:13 -06:00
wigy
e8cb6cdaac
Companion to "Updating scale to v3" ( #4958 )
...
* Updating dependencies
* Adapting code to scale v3
* Upgrade bitvec to 1.0.0
* Fix bitvec arithmetics
* Update Cargo.lock
* Update sp-io
* Fixing the build
* Yanked scale-info 2.0.0
Co-authored-by: Bastian Köcher <info@kchr.de >
2022-02-25 13:07:06 +01:00
Sergei Shulepov
95a78e877f
paras: initialize_para_now and ParachainsCache ( #4934 )
...
This commit adds a new primitive called `ParachainsCache` to manipulate
the `Parachains` storage entry in a more convenient way.
Then, on top of that, this commit changes the logic of
`initialize_para_now` so that it is identical to what is used for
initialization of onboarding.
2022-02-22 14:52:27 +01:00
lumir-mrkva
2dcd204ea6
corrected paras code validation event comments ( #4932 )
...
the comments we're flipped between accepted and rejected events causing confusion, but usage of events is correct
2022-02-16 18:32:56 +01:00
Kian Paimani
3cb2d62665
HRMP benchmarks ( #3876 )
...
* wip template for hrmp benchmarks
* add all of the benchmarks, first draft
* File was not saved :/
* cargo +nightly fmt
* Use configs
* add configs
* Fix rococo
* Final touches
* revert fmt changes, one last time
* Fix wrappings
* Fix a bunch of tests
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_hrmp.rs
* add to westend
* actually use everything
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_hrmp.rs
* Update runtime/parachains/src/hrmp.rs
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* use real weight in wnd
* reorg
* minor cleanup
* weigh some of the internal stuff as well
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_hrmp.rs
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_hrmp.rs
* add files
* Master.into()
* add validation
* fmt
* fmt
* final fixes
* all runtimes build
* undo formatting
* Update runtime/parachains/src/hrmp.rs
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
* non-controversial changes
* do it the parachain-way: use const instead of type configs for simplicity.
* borrow assert_storage_consistency_exhaustive
* move assert_storage_consistency_exhaustive to Pallet, so it can be reused for benchmarks as well.
* fix typo
Co-authored-by: Parity Bot <admin@parity.io >
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
Co-authored-by: Sergey Shulepov <s.pepyakin@gmail.com >
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
2022-01-21 13:42:39 +00:00
Oliver Tale-Yazdi
3d61cc01db
co #10662 : Require MaxEncodedLen per default ( #4746 )
...
* Add `without_storage_info`
The MaxEncodedLen trait is now enforced by default in Substrate.
All pallets missing an implementation need to be marked with
`without_storage_info` now.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove `generate_storage_info`
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add more `without_storage_info`
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* update lockfile for {"substrate"}
Co-authored-by: parity-processbot <>
2022-01-20 12:36:22 +00:00
Sergei Shulepov
815021ab8a
paras: do not allow PVF vote submission if disabled ( #4684 )
...
if the PVF pre-checking is disabled the runtime dispatchable will reject
any attempts of submission. This is also concern the unsigned tx
validation.
Right now, the `include_pvf_check_statement` dispatchable is effectively
uncallable because of the weight set to the maximum value. If we were to
benchmark it, it would become includable in a block, but since there
will be no active votes, the dispatchable won't do anything.
However, it will execute some code, like signature validation and
querying some storage entries. To be completely safe, we can bail out
early if the `pvf_checking_enabled` config is disabled. That's what this
PR does.
2022-01-17 15:28:20 +01:00
Sergei Shulepov
21419a81d0
paras: Add runtime events for PVF pre-checking ( #4683 )
...
In this PR, paras module emit runtime events on certain PVF pre-checking
related conditions.
Specifically, there are 3 new events in the paras module:
1. PvfCheckStarted
2. PvfCheckAccepted
3. PvfCheckRejected
All of those have identifiers for the parachain that triggered the PVF
pre-checking and the validation code that goes through the pre-checking.
The mechanics of those are as follows. Each time a new PVF is added, be
it due to onboarding or upgrading, the `PvfCheckStarted` will be
triggered. If another parachain triggers a pre-checking process for the
validation code which is already being pre-checked, another
`PvfCheckStarted` event will be triggered with the corresponding para
id.
When the PVF pre-checking voting for a PVF was finished, several
`PvfCheckAccepted/Rejected` events will be triggered: one for each para id that
was subscribed to this check (i.e. was a "cause" for it).
If the PVF pre-checking is disabled, then one can still expect these
events to be fired. Since insta PVF approval is syncronous, the
`PvfCheckStarted` will be followed by the `PvfCheckAccepted` with the
same validation code and para id.
If somebody is interested in following validation code changes for a PVF
of a parachain, they would need to subscribe to those events. I did not
supply the topics for the events, since I am not sure if that's needed
or will be used, but they can be added later if needed.
2022-01-13 18:44:14 +01:00
Sergei Shulepov
20f9b2c421
paras: fix weight computation ( #4673 )
...
Looks like it is an artifact of prior code and now it is redundant.
2022-01-07 13:25:53 -06:00
Keith Yeung
5047ef8eff
Set CurrentCodeHash before running some dispatchable benchmarks ( #4645 )
...
* Set CurrentCodeHash before running some dispatchable benchmarks
* Use insert instead of put
* Actually hash the ValidationCode
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
Co-authored-by: Parity Bot <admin@parity.io >
2022-01-03 02:05:37 +00:00
Sergei Shulepov
575775a19f
paras: split tests ( #4636 )
...
This is only a module structure change: the tests module was promoted to
have its own file.
2022-01-02 22:03:34 -04:00
Sergei Shulepov
4bf62d85a6
paras: add governance control dispatchables ( #4575 )
...
* paras: add governance control dispatchables
Adds a couple of functions for governance control for the paras module
in the anticipation of PVF pre-checking enabling.
Specifically, this commit adds a function for pre-registering a PVF that
governance trusts enough. This function will come in handy in case there
is a parachain that does not follow the GoAhead signal. That is, does
not include https://github.com/paritytech/cumulus/pull/517 .
This may be not an exhaustive list of the functions that may come in
handy. Any suggestions to add more are welcome.
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs
Co-authored-by: Parity Bot <admin@parity.io >
2021-12-29 15:42:10 +01:00
Bernhard Schuster
4adb8466a3
dev-comment spelling mistakes ( #4434 )
2021-12-06 15:20:29 +01:00
Bernhard Schuster
1aa6a4aba4
move paras inherent filtering to runtime ( #4028 )
...
* move things around, add filter methods
* validator keys, modify availability bitfields according to disputes
* simplify, keep the filter -> sanitize generic for both usecases
* minor
* assure tests still work, reduce changeset
* integration
* start entropy passing
* fixins
* compile, 1 failing test
* filter with coverage
* fixins
* Update runtime/parachains/src/paras_inherent.rs
Co-authored-by: Robert Habermeier <rphmeier@gmail.com >
* slip of the pen
* improve test cases
* misc
* fix
* fixins
* test avoid extra into() calls in assert_noop!
* chores
* ff
* test fixup superfluous into call
* chore: pfmt
* improve apply_block_weight_limit to try to maximize the number of sufficiently backed
blocks and add extra bitfields in a round-robin fashion
* new code treats the lack of backed candidates as ok
* Use vrf based entropy
* fixup vrf random
* add warn
* slip of the pen
* fixup
* assure ordering
* rethink apply_weights
* mock
* use a closure as predicate check
* extract and use DisputedBitfield
* chore: simplify
* remove stray dbg
* chore: fmt
* address feedback
* fix test, halfway there
* stage1
* dbg stuff
* make group selection align
* fix session index
* fix wrongly returned candidates
* cleanup
* chore fmt
* fix ensure check
* make good case test work
* more tests for bitfields
* create sanitize_backed_candidates
* fixup tests
* update guide
* add check referenced in the guide
* improve weights code
* fmt
* fixins
* Update roadmap/implementers-guide/src/runtime/inclusion.md
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com >
* compiling + address review
* add comments
* fix weight calc
* address review comments and test failure
* fix
* fix: condition
* Fix random_sel function
* Fix overlength block check
* Zeke + Ladi commit for disputes filtering + integration test builder + runtime benchmarks + integration tests
* Add benchmarks for code upgrades
* Code upgrade bench; Feature gate TestWeightInfo
* Try and make CI happier
* Feature gate enter test to not(benchmarks)
* Make sure no unused imports/fn
* refactor, re-use, the beginning
* Fix issue with frame benchmarking dep compilation
* More precise feature gating for some derives
* integrate piece-wise
* foo
* fixins
* chore fmt
* fixins
* rename const generic
* Update runtime/parachains/src/paras_inherent.rs
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
* Fix compilation
* limit to test
* remove unused spam slots
* spellcheck
* remove a tick, fix a typo
* Add Code upgrade weights
* comment improvements + >=
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
* remove another tick
* Update runtime/parachains/src/paras_inherent/benchmarking.rs
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
* saturating fixins + some spaces
* fix
* benchmarking - preliminary results
* Add training wheels
* Refactor some early exit logic for enter
* Gracefully handle filtering bitfields & candidates (#4280 )
This updates the logic for sanitize_bitfields and sanitize_backed_candidates to never error when there is an issue, but instead to simply skip the problematic items.
* Refactor inherent data weight limiting logic (#4287 )
* Apply suggestions from code review
* Update runtime/parachains/src/builder.rs
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
* Update runtime/parachains/src/builder.rs
* Update runtime/parachains/src/paras_inherent.rs
* final pass
* Run cargo +nightly-2021-10-29 fmt
* Update implementors guide with `sanitize_*` & `enter` (#4294 )
* Make spell check happier
* Make wasm runtimes compile with benchmarks enabled (#4303 )
* comment stuff out, use old toml
* Seems to be working?
* Remove feature gating from builder
* Remove commented out stuff
* Remove generic from digest
* Update weight files for runtime
Co-authored-by: Robert Habermeier <rphmeier@gmail.com >
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com >
Co-authored-by: Lldenaurois <Ljdenaurois@gmail.com >
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
Co-authored-by: Bastian Köcher <info@kchr.de >
2021-11-16 18:39:39 +00:00
Zeke Mostov
dc38cf8959
Add benchmarking to rococo; Remove weights from runtime_parachains ( #3914 )
...
* Add benchmarking to rococo; Remove weights from runtime_parachains
* cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs --header=./file_header.txt
* Impl TestWeightInfo for Paras and Configuration
* fmt
* cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./runtime/rococo/src/weights/runtime_parachains_configuration.rs --header=./file_header.txt
* Fix CI complaint: error: unused variable: `c`
* polkadot-runtime-common & polkadot-test-runtime compile
* xcm-simulator compile
* change TestWeightInfo to max_block
* cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs --header=./file_header.txt
* ordering
* cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs --header=./file_header.txt
* Replace max_block with Weight::MAX
Co-authored-by: Parity Bot <admin@parity.io >
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
2021-10-06 09:38:29 +00:00
Shawn Tabrizi
bc7326383d
individual benchmark tests ( #4018 )
2021-10-05 15:53:20 -04:00
Keith Yeung
db0b7e0048
Add benchmarking for parachain runtime paras pallet ( #3888 )
...
* Crate basic barebones benchmarking infrastructure for paras
* Fill in benchmarking contents
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs
* Use autogenerated WeightInfos for kusama and westend
* cargo fmt
* Use saturating_sub
* Add missing import
* Try and hit the worst possible time complexity as much as possible
* cargo fmt
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs
* Add a MAX_HEAD_DATA_SIZE constant
* Prefill vectors with sample data for worst case complexity
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs
* Improve comment on SAMPLE_SIZE constant
Co-authored-by: Parity Bot <admin@parity.io >
2021-09-22 01:14:12 +00:00