[Runtime] Bound XCMP queue (#2302)

Remove `without_storage_info` from the XCMP queue pallet. Part of
https://github.com/paritytech/polkadot-sdk/issues/323

Changes:
- Limit the number of channels that can be suspended at the same time.
- Limit the number of channels that can have messages or signals pending
at the same time.

A No-OP migration is put in place to ensure that all `BoundedVec`s still
decode and not truncate after upgrade. The storage version is thereby
bumped to 4 to have our tooling remind us to deploy that migration.

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com>
This commit is contained in:
Oliver Tale-Yazdi
2024-01-29 17:36:23 +01:00
committed by GitHub
parent a664908304
commit b8f55d1b76
23 changed files with 367 additions and 65 deletions
+20
View File
@@ -0,0 +1,20 @@
title: Storage bound the XCMP queue pallet
doc:
- audience: Runtime Dev
description: |
Enforce upper limits for the number of suspended channels and on
the number of channels that have messages pending. This is needed to use
the worst-case PoV benchmarking.
migrations:
db: []
runtime:
- reference: cumulus_pallet_xcmp_queue::migration::v5::MigrateV4ToV5
description: A No-OP migration is deployed to ensure that all `BoundedVec`s` still decode as expected.
crates:
- name: cumulus-pallet-xcmp-queue
host_functions: []