slot-based-collator: Allow multiple blocks per slot (#7569)
**Summary:** This PR enables authoring of multiple blocks in one AURA slot in the slot-based collator and stabilizes the slot-based collator. ## CLI Changes The flag `--experimental-use-slot-based` is now marked as deprecated. I opted to introduce `--authoring slot-based` instead of just removing the `experimental` prefix. By introducing the `authoring` variant, we get some future-proofing in case we want to introduce further options. ## Change Description With elastic-scaling, we are able to author multiple blocks with a single relay-chain parent. In the initial iteration, the interval between two blocks was determined by the `slot_duration` of the parachain. This PR introduces a more flexible model, where we try to author multiple blocks in a single slot if the runtime allows it. The block authoring loop is largely the same. The [`SlotTimer`](https://github.com/paritytech/polkadot-sdk/blob/f1935bd9/cumulus/cli...
Showing
- .github/workflows/build-publish-images.yml 63 additions, 0 deletions.github/workflows/build-publish-images.yml
- .github/workflows/zombienet-reusable-preflight.yml 1 addition, 1 deletion.github/workflows/zombienet-reusable-preflight.yml
- .github/workflows/zombienet_cumulus.yml 54 additions, 0 deletions.github/workflows/zombienet_cumulus.yml
- .github/zombienet-env 1 addition, 1 deletion.github/zombienet-env
- Cargo.lock 36 additions, 0 deletionsCargo.lock
- Cargo.toml 3 additions, 0 deletionsCargo.toml
- cumulus/client/consensus/aura/Cargo.toml 1 addition, 0 deletionscumulus/client/consensus/aura/Cargo.toml
- cumulus/client/consensus/aura/src/collators/slot_based/block_builder_task.rs 28 additions, 77 deletions...ensus/aura/src/collators/slot_based/block_builder_task.rs
- cumulus/client/consensus/aura/src/collators/slot_based/mod.rs 58 additions, 15 deletions...lus/client/consensus/aura/src/collators/slot_based/mod.rs
- cumulus/client/consensus/aura/src/collators/slot_based/slot_timer.rs 269 additions, 0 deletions...ent/consensus/aura/src/collators/slot_based/slot_timer.rs
- cumulus/pallets/aura-ext/Cargo.toml 1 addition, 0 deletionscumulus/pallets/aura-ext/Cargo.toml
- cumulus/pallets/aura-ext/src/consensus_hook.rs 28 additions, 8 deletionscumulus/pallets/aura-ext/src/consensus_hook.rs
- cumulus/pallets/aura-ext/src/test.rs 103 additions, 66 deletionscumulus/pallets/aura-ext/src/test.rs
- cumulus/polkadot-omni-node/lib/src/cli.rs 38 additions, 5 deletionscumulus/polkadot-omni-node/lib/src/cli.rs
- cumulus/polkadot-omni-node/lib/src/command.rs 8 additions, 0 deletionscumulus/polkadot-omni-node/lib/src/command.rs
- cumulus/polkadot-omni-node/lib/src/common/mod.rs 5 additions, 1 deletioncumulus/polkadot-omni-node/lib/src/common/mod.rs
- cumulus/polkadot-omni-node/lib/src/nodes/aura.rs 5 additions, 3 deletionscumulus/polkadot-omni-node/lib/src/nodes/aura.rs
- cumulus/test/runtime/Cargo.toml 5 additions, 0 deletionscumulus/test/runtime/Cargo.toml
- cumulus/test/runtime/build.rs 8 additions, 0 deletionscumulus/test/runtime/build.rs
- cumulus/test/runtime/src/lib.rs 29 additions, 11 deletionscumulus/test/runtime/src/lib.rs
Please register or sign in to comment