Make parachain template great again (and async backing ready)#4295
Make parachain template great again (and async backing ready)#4295s0me0ne-unkn0wn merged 3 commits intomasterfrom
Conversation
| // Very limited proposal time. | ||
| authoring_duration: Duration::from_millis(500), | ||
| collation_request_receiver: None, | ||
| authoring_duration: Duration::from_millis(1500), |
There was a problem hiding this comment.
Should we go ahead and bump it to 2000? All the mainnets and Rococo are already using 2.5 sec backing timeout. It's still 2 seconds for Westend.
There was a problem hiding this comment.
I am wondering if we should even increase it to 2.5s.
If I see it correctly we are subtracting 1/3 of the time specified here for "evaluation and block finalization": https://github.com/paritytech/polkadot-sdk/blob/master/substrate/client/basic-authorship/src/basic_authorship.rs#L291
So that means of the 2s we will hit the timeout for extrinsic application after ~1.3s. However the runtime specified a ref time weight of 2s. So even with a correctly benchmarked runtime we could hit this limit easily, assuming reference hardware. Probably this works well in reality because our reference hardware is not super fast and most collators outperform it?
For backing a higher authoring should not be problem, because the ref_time will still limit the execution time.
There was a problem hiding this comment.
I am wondering if we should even increase it to 2.5s.
We're still trying to keep a gap between backing timeout and authoring duration as the backing has bigger overhead, and that's why we bumped the backing timeout in the first place -- with both being 2 sec, backers were timing out on Versi sometimes.
kianenigma
left a comment
There was a problem hiding this comment.
Would love to see the polkadot-launch stuff replaced here with Zombienet, but please coordinate with @gupnik if he's already working on it.
| // Very limited proposal time. | ||
| authoring_duration: Duration::from_millis(500), | ||
| collation_request_receiver: None, | ||
| authoring_duration: Duration::from_millis(1500), |
* 'master' of https://github.com/metaspan/polkadot-sdk: (65 commits) Introduces `TypeWithDefault<T, D: Get<T>>` (paritytech#4034) Publish `polkadot-sdk-frame` crate (paritytech#4370) Add validate field to prdoc (paritytech#4368) State trie migration on asset-hub westend and collectives westend (paritytech#4185) Fix: dust unbonded for zero existential deposit (paritytech#4364) Bridge: added subcommand to relay single parachain header (paritytech#4365) Bridge: fix zombienet tests (paritytech#4367) [WIP][CI] Add more GHA jobs (paritytech#4270) Allow for 0 existential deposit in benchmarks for `pallet_staking`, `pallet_session`, and `pallet_balances` (paritytech#4346) Deprecate `NativeElseWasmExecutor` (paritytech#4329) More `xcm::v4` cleanup and `xcm_fee_payment_runtime_api::XcmPaymentApi` nits (paritytech#4355) sc-tracing: enable env-filter feature (paritytech#4357) deps: update jsonrpsee to v0.22.5 (paritytech#4330) Add PoV-reclaim enablement guide to polkadot-sdk-docs (paritytech#4244) cargo: Update experimental litep2p to latest version (paritytech#4344) Bridge: ignore client errors when calling recently added `*_free_headers_interval` methods (paritytech#4350) Make parachain template great again (and async backing ready) (paritytech#4295) [Backport] Version bumps and reorg prdocs from 1.11.0 (paritytech#4336) HRMP - set `DefaultChannelSizeAndCapacityWithSystem` with dynamic values according to the `ActiveConfig` (paritytech#4332) Statement Distribution Per Peer Rate Limit (paritytech#3444) ...
…tech#4295) Closes paritytech#4272. It turned out that not only the node part but also the runtime wasn't async backing ready. Now, both of them are using proper APIs and producing 6-second blocks out of the box.
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) issue-2025 issue-1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) issue-2025 issue-1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) issue-2025 issue-1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) issue-2025 issue-1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) issue-2025 issue-1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) issue-2025 issue-1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) #2025 #1983
- Upgrade Polkadot-sdk 1.10.0 to 1.13.0 - Update weights to reflect the new version.1.13.0 Notable Changes: Polkadot-sdk 1.12.0 - [Improve MockValidationDataInherentDataProvider to support async backing](paritytech/polkadot-sdk#4442) - [Balances-Pallet add burn_allow_death extrinsic](paritytech/polkadot-sdk#3964) - [Add Async Backing to Parachain Template](paritytech/polkadot-sdk#4295) Polkadot-sdk 1.13.0 - [DeprecatedRuntimeGenesisConfig generic type parameter in GenericChainSpec struct](paritytech/polkadot-sdk#4410) - [Move the `para_id` from `MockXcmConfig` to `MockValidationDataInherentDataProvider` to make it more prominent](paritytech/polkadot-sdk#4555) - [Remove parameterized-consensus-hook feature](paritytech/polkadot-sdk#4380) For more details, please refer to: - [Polkadot-sdk release 1.12.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.12.0) - [Polkadot-sdk release 1.13.0](https://github.com/paritytech/polkadot-sdk/releases/polkadot-v1.13.0) - [Async Backing](https://wiki.polkadot.network/docs/maintain-guides-async-backing) #2025 #1983
Closes #4272.
It turned out that not only the node part but also the runtime wasn't async backing ready. Now, both of them are using proper APIs and producing 6-second blocks out of the box.