Skip to content
  1. Apr 01, 2022
  2. Mar 30, 2022
  3. Mar 29, 2022
  4. Mar 24, 2022
    • Sergei Shulepov's avatar
      paras: `include_pvf_check_statement` rt bench (#4938) · c8fda4f1
      Sergei Shulepov authored
      
      
      * 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: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarRobert Klotzner <[email protected]>
      Co-authored-by: default avatarLldenaurois <[email protected]>
      c8fda4f1
  5. Mar 22, 2022
    • Bruno Galvao's avatar
      add weights that need to be generated for rococo (#5052) · f8b979b7
      Bruno Galvao authored
      * add weights that need to be generated for rococo
      
      * remove frame_system
      
      * touch balances weight file
      
      * add empty im-online weight file
      
      * add empty pallet indices weight file
      
      * add empty pallet multisig weight file
      
      * add empty pallet proxy weight file
      
      * add empty pallet session weight file
      
      * add empty pallet timestamp weight file
      
      * add empty pallet utility weight file
      
      * add empty para pallets weight files
      
      * remove utility for now
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-im-online --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-multisig --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-proxy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-timestamp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_common::auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_common_auctions.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-indices --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_common::paras_registrar --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_common_paras_registrar.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_common::slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_common_slots.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_configuration.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_hrmp.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::initializer --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_initializer.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
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * update ump for weights sink_process_upward_message -> process_upward_message (#5103)
      
      * update ump for weights sink_process_upward_message -> process_upward_message
      
      * update autogen files
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::disputes --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_disputes.rs
      
      * add frame_system weights for Rococo
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=frame_system --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * add pallet-utility runtime benchmarks
      
      * add utility benchmark
      
      * add utility pallet
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-utility --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * fix cargo format issues
      
      * add pallet_session weights
      
      - since pallet session benchmarking is coupled with pallet staking, for the time being we will use the weights from westend
      
      https://github.com/paritytech/polkadot/pull/5052#issuecomment-1072903719
      
      
      
      * remove newline
      
      * use some of the new weights
      
      * add pallet-utility/std
      
      * add collective and membership benchmarks
      
      * add WeightInfo
      
      * copy weights from Polkadot for now, needs to be updated with relevant weights
      
      * add weights
      
      * copy weights from Polkadot pallet session
      
      * remove newline
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarDan Shields <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      f8b979b7
  6. Mar 21, 2022
    • Svyatoslav Nikolsky's avatar
      Update bridges subtree (#5165) · 8e01ba9c
      Svyatoslav Nikolsky authored
      * Squashed 'bridges/' changes from 1602249f0a..f220d2fcca
      
      f220d2fcca Polkadot staging update (#1356)
      02fd3d497c fix parse_transaction on Rialto+Millau (#1360)
      bc191fd9a2 update parity-scale-codec to 3.1.2 (#1359)
      a37226e79c update chain versions (#1358)
      ff5d539fcb Update Substrate/Polkadot/Cumulus references (#1353)
      1581f60cd5 Support dedicated lanes for pallets (#962)
      0a7ccf5c57 ignore more "increase" alerts that are sometimes signalling NoData at startup (#1351)
      31165127cc added no_stack_overflow_when_decoding_nested_call_during_dispatch test (#1349)
      7000619eb8 replace From<>InboundLaneApi with direct storage reads (#1348)
      515df10ccc added alerts for relay balances (#1347)
      b56f6a87de Mortal conversion rate updater transactions (#1257)
      20f2f331ec edition = "2021" (#1346)
      99147d4f75 update regex to 1.5.5 (#1345)
      686191f379 use DecodeLimit when decoding incoming calls (#1344)
      a70c276006 get rid of '[No Data] Messages from Millau to Rialto are not being delivered' warnings (#1342)
      01f29b8ac1 fix conversion rate metric in dashboards (#1341)
      51c3bf351f Increase rate from metric when estimating fee (#1340)
      3bb9c4f68f fix generator scripts to be consistent with updatedrelay output (#1339)
      0475a1667b fixed mess with conversion rates (#1338)
      d8fdd7d716 synchronize relay cli changes and token swap generator script (#1337)
      6e928137a5 fix conversion rate override in token swap (#1336)
      62d4a4811d override conversion rate in tokens swap generator (#1335)
      ed9e1c839c fi typo in generator script (#1334)
      3254b5af7a Override conversion rate when computing message fee (#1261)
      66df68b5b8 Revert "Revert "override conversion rate in estimate-message-fee RPC (#1189)" (#1275)" (#1333)
      0ca6fc6ef8 fix clippy issues (#1332)
      5414b2fffb Reinitialize bridge relay subcommand (#1331)
      a63d95ba7d removed extra *_RUNTIME_VERSION consts from relay code (#1330)
      59fb18a310 fix typo in alert expression (#1329)
      a6267a47ee Using-same-fork metric for finality and complex relay (#1327)
      88d684d37e use mortal transactions in transaction resubmitter (#1326)
      8ff88b6844 impl Decode for SignedExtensions (otherwise transaction resubmitter panicks) (#1325)
      1ed09854f0 Encode and estimate Rococo/Wococo/Kusama/Polkadot messages (#1322)
      ddb4517e13 Add some tests to check integrity of chain constants + bridge configuration (#1316)
      bdeedb7ab9 Fix issues from cargo deny (#1311)
      d3d79d01e0 expose fee multiplier metrics in messages relay (#1312)
      c8b3f0ea16 Endow relayer account at target chain in message benchmarks (#1310)
      f51ecd92b6 fix benchmarks before using it in Polkadot/Kusama/Rococo runtimes (#1309)
      6935c619ad increase relay balance guard limits for Polkadot<>Kusama bridge (#1308)
      7e31834c66 Fix mandatory headers scanning in on-demand relay (#1306)
      92ddc3ea7a Polkadot-staging update (#1305)
      3787193a31 fix session length of Rococo and Wococo (#1304)
      eb468d29c0 Revert nightly docker pin (#1301)
      e2d4c073e1 Use raw balance value if tokenDecimals property is missing (#1299)
      108f4b29d1 Fix ss58 prefixes of Polkadot, Kusama and Westend used by relay (#1298)
      64fbd2705e bump chain spec versions (#1297)
      5707777b86 Bump Substrate/Polkadot/Cumulus refs (#1295)
      29eecdf1fa Merge pull request #1294 from paritytech/polkadot-staging-update
      1f0c05368e Relay balance metrics (#1291)
      6356bb90b3 when messages pallet is halted, relay shall not submit messages delivery/confirmation transactions (#1289)
      800dc2df8d when GRANDPA pallet is halted, relay shall not submit finality transactions (#1288)
      3dd8e4f936 disable BEEFY allerts for Rialto (#1285)
      f58fed7380 support version mode cli options in send-message subcommand (#1284)
      3aac448da3 reuse polkadot-service code (#1273)
      2bdbb651e1 replace latest_confirmed_nonce runtime APIs with direct storage reads (#1282)
      5f9c6d241f move "common" code of messages pallet benchmarks helpers to the common library (#1281)
      173d2d8229 Merge pull request #1280 from paritytech/polkadot-staging-update
      8b9c4ec16d do not start spec_version guard when version mode is set to auto (#1278)
      e98d682de2 removed extra messages benchmarks (#1279)
      c730e25b61 Move benchmarks from Rialto to Millau (#1277)
      54146416e7 Merge pull request #1276 from paritytech/polkadot-staging-update
      df70118174 Merge branch 'master' into polkadot-staging-update
      ed7def64c4 Revert "override conversion rate in estimate-message-fee RPC (#1189)" (#1275)
      38c6c3a49f Use "production" floating tag when uilding docker image from version git tags (#1272)
      ded9ff6dbb Replace InboundLaneApi::latest_received_nonce with direct storage read (#1269)
      f704a741ee Polkadot staging update (#1270)
      8c65f0d7ab verify that GRANDPA pallet is not initialized before submitting initialization transaction (#1267)
      e7e83d8944 remove OutboundLaneApi::latest_received_nonce (#1262)
      9f4b34acf1 bump rococo version (#1263)
      82c08c5a87 read latest_generated_nonce directly from storage (#1260)
      50ffb5dd08 override conversion rate in estimate-message-fee RPC (#1189)
      467ca5ef59 move storage keys computation to primitivs (#1254)
      4f9884066b remporary use pinned bridges-ci image in Dockerfile (#1258)
      edfcb74e00 Change submit transaction spec_version and transaction_version query from chain (#1248)
      4009d970d0 pin bridges-ci image (#1256)
      65e51b5e1c decrease startup sleep to 5s for relays and to 120s for generators + remove curl (#1251)
      3bc74355d9 Add missing RPC APIs to rialto parachain node (#1250)
      80c9429284 Bump relay version to 1.0.0 (#1249)
      9ead06af2a runtimes: fix call_size() test (#1245)
      4fc8a29357 Use same endowed accounts set on dev/local chains (#1244)
      fed54371c2 Refactor message relay helpers (#1234)
      a15b4faae7 post-merge build fix (#1243)
      52232d8d54 Fix transactions mortality (#1196)
      c07bba931f Expose prometheus BEEFY metrics and add them to grafana dashboard (#1242)
      f927775bd5 Refactor finality relay helpers (#1220)
      7bf76f14a8 Update Rococo/Wococo version + prepare relay for Rococo<>Wococo bridge (#1241)
      e860fecd04 Enable offchain indexing for Rialto/Millau nodes (#1239)
      04d4d1c6b4 Enable Beefy debug logs in test deployment (#1237)
      cd771f1089 Fix storage parameter name computation (#1238)
      816ddd2dd2 Integrate BEEFY with Rialto & Millau runtimes (#1227)
      d94b62b1ac update dependencies (#1229)
      98eb9ee13d Add mut support (#1232)
      ffef6f89f9 fixed set_operational in GRANDPA pallet (#1226)
      bd2f8bfbd7 Add CODEOWNERS file (#1219)
      6b5cf2b591 Unify metric names (#1209)
      d1541e797e remove abandoned exchange relay (#1217)
      39140d0b34 Remove unused `relays/headers` (#1216)
      9bc071d42b Remove unused PoA<>Substrate bridge (#1210)
      877e8d01e3 Fix UI deployment. (#1211)
      6cd5775ebe Add `AtLeast32BitUnsigned` for MessageLance::SourceChainBalance (#1207)
      
      git-subtree-dir: bridges
      git-subtree-split: f220d2fccabbf141101d19456ecb4e3576a1d797
      
      * fix compilation warnings
      8e01ba9c
  7. Mar 18, 2022
  8. Mar 15, 2022
  9. Mar 14, 2022
  10. Mar 12, 2022
  11. Mar 11, 2022
  12. Mar 09, 2022
    • asynchronous rob's avatar
      Finish migration to v2 primitives (#5037) · 49f7e5cc
      asynchronous rob authored
      * 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
      49f7e5cc
  13. Mar 02, 2022
  14. Feb 26, 2022
    • Falco Hirschenberger's avatar
      Add benchmarking for parachain runtime `ump` pallet (#3889) · fc919376
      Falco Hirschenberger authored
      
      
      * Claim grounds, not working yet.
      
      * still wip, nothing to see
      
      * Module visibility problem
      
      * Add benchmarks for all parachain-enabled chains
      
      * Add missing mock weights
      
      * Fix mock weight info
      
      * Add max-weight to extrinsic weight
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * sorting declarations
      
      * Use a maximum size message to benchmark worst-case
      
      * remove warning
      
      * Fix msg size overflow in tests
      
      * Use benchmarked weight in PostInfo
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      
      * Delete obsolete file
      
      * Compile fix
      
      * Fix spelling
      
      * Add benchmark for `UmpSink::process_upward_message`
      
      It benchmarks the time to process a message, mainly the size-dependent
      decoding time. This is used interally for refunding weight from
      `service_overweight`
      
      * Fix warning
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Give mock weights for tests a name instead of ()
      
      * Add benchmark for `initializer_on_new_session` aka.
      `perform_outgoing_para_cleanup`
      
      * Remove unnescessary pub specifier and change folding to a for loop
      
      suggestions by @pepyakin
      
      
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Add comment on weight calculation and expected slight overestimation
      
      * Introduce a size bound constant for upward messages
      
      * Use KiB not kB for message size bound
      
      * Enforce max-message size bound
      
      * Use a const for upward message size bound.
      
      * Decrease max_upward_message_sizes to 50KiB as suggested by @pepyakin
      
      * Fix creating overweight messages
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * Remove unused variable
      
      * Rename benchmark function to the function actually benchmarked and some
      code cleanup
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * Better variable naming
      
      * Fix build
      
      * Fix build
      
      * Fix some remarks from @pepyakin
      
      
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avataremostov <[email protected]>
      fc919376
  15. Feb 25, 2022
  16. Feb 24, 2022
  17. Feb 12, 2022
    • Shawn Tabrizi's avatar
      Allow two Parachains to swap (#4772) · d5f51273
      Shawn Tabrizi authored
      
      
      * add support for parachain to parachain swap
      
      * enable swaps on kusama
      
      * sanity test in paras_registrar
      
      * express more errors
      
      * finish up tests
      
      * fmt
      
      * make fields pub
      
      * refactor integration tests to use real accounts
      
      * Update Crowdloan Account to FundIndex (#4824)
      
      * update fund account to use index
      
      * fix integration tests
      
      * Update runtime/common/src/crowdloan.rs
      
      * finish parachain swap test
      
      * format
      
      * fix warning
      
      * fix spacing
      
      * fix formatting
      
      * write migrations
      
      * add migration
      
      * fixes
      
      * more fixes to migration
      
      * Update runtime/common/src/crowdloan/mod.rs
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      
      * Update runtime/common/src/paras_registrar.rs
      
      * Update migration.rs
      
      * extract swap function
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      d5f51273
  18. Feb 11, 2022
  19. Feb 08, 2022
  20. Feb 02, 2022
  21. Jan 21, 2022
    • Oliver Tale-Yazdi's avatar
      Use `define_benchmarks!` (#4760) · cc1201ef
      Oliver Tale-Yazdi authored
      
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      cc1201ef
    • Kian Paimani's avatar
      HRMP benchmarks (#3876) · 3cb2d626
      Kian Paimani authored
      
      
      * 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: default avatarKeith Yeung <[email protected]>
      
      * 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: default avatarZeke Mostov <[email protected]>
      
      * 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: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarSergey Shulepov <[email protected]>
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      3cb2d626
  22. Jan 20, 2022
  23. Jan 17, 2022
  24. Jan 13, 2022
    • Alexander Popiak's avatar
      Add `fast-runtime` Cargo Feature for Quick Test Runs (#4332) · 401540ee
      Alexander Popiak authored
      
      
      * add fast-runtime feature for reduced session times
      
      * make democracy periods fast on fast-runtime
      
      * propagate fast-runtime feature through cargo.toml files
      
      * add fast motion and term durations to Kusama
      
      * Update runtime/westend/Cargo.toml
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * set session time to 2 minutes to avoid block production issues
      
      * formatting
      
      * update Substrate
      
      * set democracy fast periods back to 1min
      
      * set launch period and enactment period to 1 block in fast-runtime
      
      * remove unnecessary westend period configs
      
      * add prod_or_test macro to allow specifying prod, test and env values for parameter types
      
      * move prod_or_test macro into common module and use it consistently
      
      * rename macro to prod_or_fast
      
      * cargo +nightly fmt
      
      * bump impl_versions
      
      * newline
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * add note that env variable is evaluated at compile time
      
      * newline
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * newline
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * cargo fmt
      
      * impl_version: 0
      
      * impl_version: 0
      
      * use prod_or_fast macro for LeasePeriod and LeaseOffset
      
      * use prod_or_fast macro in WND and ROC constants
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarGiles Cope <[email protected]>
      401540ee
  25. Jan 11, 2022
  26. Dec 29, 2021
    • Sergey Pepyakin's avatar
      paras: add governance control dispatchables (#4575) · 4bf62d85
      Sergey Pepyakin authored
      * 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: default avatarParity Bot <[email protected]>
      4bf62d85
  27. Dec 28, 2021
  28. Dec 27, 2021
    • ordian's avatar
      session-info: add new fields + migration (#4545) · b342ae11
      ordian authored
      
      
      * session_info: v2 + migration
      
      * use primitives::v2
      
      * use polkadot_primitives::v2
      
      * impl primitives::v2
      
      * fix approval-voting tests
      
      * fix other tests
      
      * hook storage migration up
      
      * backwards compat (1)
      
      * backwards compat (2)
      
      * fmt
      
      * fix tests
      
      * FMT
      
      * do not reexport v1 in v2
      
      * fmt
      
      * set storage version to 1
      
      Co-authored-by: default avatarJavier Viola <[email protected]>
      b342ae11
  29. Dec 25, 2021
  30. Dec 24, 2021
    • cheme's avatar
      Companion for substrate#9732 (#4104) · 48dc6750
      cheme authored
      * merge master (do not compile)
      
      * fix
      
      * lock
      
      * update lock
      
      * Update to refactoring.
      
      * runtime version
      
      * fmt
      
      * remove trie patch
      
      * remove patch
      
      * No layout alias for bridge proof.
      
      * update depupdate depss
      
      * No switch until migration.
      
      * master lock
      
      * test
      
      * test
      
      * Revert "test"
      
      This reverts commit 57325ef73332bf4b054aa4a667bb716fcf8a0d89.
      
      * Revert "test"
      
      This reverts commit ce74d0e2062806f72c0e9e9ca07b14165f43521e.
      
      * rename feature
      
      * state version as parameter, use the feature only on runtimes.
      
      * update
      
      * update to state version in runtime
      
      * state version from storage
      
      * update lockfile for substrate
      
      Co-authored-by: parity-processbot <>
      48dc6750
  31. Dec 21, 2021
  32. Dec 17, 2021
  33. Dec 16, 2021