Move to 6s Blocktimes
When async backing is supported on Polkadot, Frequency can move to a default of 6s block times.
- [x] Polkadot enabled 6s block times
Tasks
- [x] Upgrade Polkadot-SDK to v1.8.0+
- [x] Update our blocktime from 12 to 6 via
MILLISECS_PER_BLOCK - [x] Review and update Governance times via migration
- [x] #2141
- [x] Review and possibly update message pagination
- [x] Change the default interval sealing time
Helpful resources
- https://polkadot.network/blog/the-way-to-a-10x-throughput-lift-on-parachains
Should we also update the mortality window for signature verification?
Hi @wilwade, @aramikm and I took a look at the “Review and possibly update message pagination” check item, but we couldn’t find anything that seemed like it needed updating. Could you clarify what changes you’re thinking of? Just want to make sure we get those updates in. Thanks!
Do we know the intended duration for the following constant?
/// The number of blocks for Stateful mortality is 24 hours
pub type StatefulMortalityWindowSize = ConstU32<14400>;
The comment mentions that the mortality window is meant to be 24 hours, but with a 12-second block time, it actually covers two days. Once we update to 6-second block times, it would match the 1-day duration.
Could you clarify the correct intention here — should the mortality window be 1 day or 2 days?
Should we also update the mortality window for signature verification?
Yes!
The other ones @aramikm is better to answer than I.
@wilwade For the “Review and update Governance times via migration” task, I went through all the constants to check if any needed updating but couldn't find any that required changes. I also looked into whether any migrations were necessary and didn't find anything there either. Additionally, I checked the Polkadot releases for references to any related migrations but found nothing. I also checked with @shannonwells to see if there was anything she was aware of, but nothing came up.
Was there a specific migration you had in mind?
@enddynayn I do not know of any other particular ones.
I did a quick look through the ones I was worried about (like CouncilMotionDuration), but they all look like they are defined as config values not genesis config. (and based on DAYS / HOURS / etc... which is all defined by the MILLISECS_PER_BLOCK)
I don't see any other genesis_config on a quick look either, so I think we got them all!
@wilwade Got it, I noticed those as well and went through the config parameters. Thanks for taking another look.
Merged.