[Root] Referendum #173

Executed
No context provided.
Who can edit?
Reply
Up
Share
Status
Decision14d
Confirmation
1d
Attempts
1
Tally
99%Aye
50.0%Threshold
1%Nay
Aye
166.99KKSM
Nay
1.7KKSM
  • 0.0%
  • 0.0%

    Threshold

  • 0.0%
Support
1.89%
246.95KKSM
Issuance
13.06MKSM
Votes
Nested
Flattened
Calls
Check how referenda works here.
Call
Metadata
Timeline6
Votes Bubble
Statistics
Comments

(Sorry cannot edit above due to signer restrictions)

Fix HostConfiguration (maxCodeSize to 3 MiB)

The current Kusama HostConfiguration does not fulfill all assumptions about its consistency. This proposal aims at correcting that by modifying the on-chain config.

Problem

The HostConfiguration::consistency_check function asserts that the on-chain max_code_size is never larger than MAX_CODE_SIZE. This is violated on Kusama since the concrete max_code_size on-chain is 10 MiB and MAX_CODE_SIZE is only 3 MiB.
You can verify this by querying PolkadotJS:

let config = await api.query.configuration.activeConfig();
console.log(config.maxCodeSize / (1024*1024), "MiB");
// Prints 10 MiB

It is neccecary to correct this since otherwise the consistency_check will stay a No-OP with the assumption: "You cannot break something that is already broken".

Proposal

Set the on-chain max_code_size back to a sane value of 3 MiB. A larger value is not expected to work due to networking restrictions. Related discussions about this are in polkadot/#7108 and polkadot/#7105.

Impact on Para*s

Parachain/Parathread teams should check that all queued runtime upgrade have a size of at most 3 MiB (the Runtime Size as reported by srtool). A sweep across all parachains showed that the largest is currently 1.7 MiB, that is about 57% of the new limit. So no problem here.

Impact on Developers

-

Reply
Up