Substrate fork-free upgrade is so smooth, who still uses hard fork?
Editor's Note: This article comes fromPolkaWorld(ID:gh_6c4c2038ddba), reproduced by Odaily with authorization.
Editor's Note: This article comes from Substrate The chain has a trick that can be easily upgraded without forks.
hard fork
secondary title
hard fork
It’s called a fork because everyone who doesn’t upgrade is left on a retired, outdated fork and generates blocks according to rules in the old code, incompatible with the new main chain. Once these vagrants update, their nodes will reconnect to the main chain and sync, and the fork will disappear.
Hard forks are often a very difficult process, mainly because you never really know who is running the software, and organizing global code updates is very difficult. This is especially true in decentralized systems with reasonable anonymity. You rely on the people running the nodes to actively find out about updates, and you have to trust them to update when they should.
secondary title
The Substrate way
Substrate-based chains such as Kusama and Polkadot have unique solutions to this problem.
Substrate-based chains can be upgraded without coordinating a large number of people to update some software. Here's how it does it:
In Substrate-based chains, what is called a WebAssembly Blob or WASM Blob is stored on the chain itself. This blob contains all the logic the chain needs to build new blocks. The runtime of the chain itself is contained in this WASM blob.
secondary title
On-chain governance
On-chain governanceOn-chain governance
On-chain governance
Token holders of any Substrate-based chain can propose changes to the chain itself. The proposal can be something drastic like changing the runtime of the entire chain, or something less impactful like changing a constant on the chain, such as changing the maximum number of validators.


