Introducing Snapsync
Starting 14 March, we began applying the Snapsync release in Go-Opera. This is the second most significant network upgrade to date.
Snapsync improves network reliability and decentralization, and maintains network performance even as Fantom rapidly scales.
All validators and third-party nodes are required to perform the upgrade: https://github.com/Fantom-foundation/lachesis_launch/tree/release/opera-v1.1.0-rc4
Please note that new genesis files are currently being generated, and will be available shortly for new nodes.
Key highlights in the upgrade
- Snapsync allows new nodes joining the network to sync faster. On testnet, nodes synced in 7 hours using snap mode. Without snap mode, syncing took 24 hours.
- Unlike Ethereum, Fantom is asynchronous. Snapsync is built on the "Lachesis Light Repeater" (LLR), a variation on our consensus algorithm. The LLR stores the minimal required information from the chain to allow light-weight stateless syncing. Lachesis remains the main consensus protocol to rapidly confirm transactions asynchronously.
- The gas per second will be increased over time to increase network throughput without affecting transaction fees.
- Performance-wise, the average TTF (time to finality) will still be approximately one second on average.
- All London changes in EIP-1559 are included except automatic baseFee/minGasPrice adjustment and baseFee burning. Instead, 30% of all transaction fees continue to be burned. The team is working on adapting a new gas pricing model for the next major upgrade.
- Emission of events is kept as efficient as in the previous release. The emission speed of events is automatically adjusted depending on network traffic.
- The chain history up to the point of migration can be written into a Genesis file. There are various types of Genesis files to be generated, similar to the testnet Genesis files.
- To set up a new node after Snapsync is enabled, node operators can download the Snapsync Genesis file without needing to process previous events. The simple process of downloading the Genesis file simplifies node onboarding and sets the stage for many more validators to join the network.
- Snapsync implementation further improves the decentralization of the network by allowing nodes to generate and validate Genesis files. Node operators can generate custom genesis files from their own nodes and then validate the generated hashes with the hashes generated by other nodes. For more detail, please consult the Fantom Developer documentation.
What’s next
The migration will be seamless, users can still submit transactions and there will be no interruption in Fantom network during the Berlin, London and LLR activations.
After the upgrade and activation are completed, users will enjoy fast transaction confirmation times, and new read nodes will be able to use “--syncmode snap” to join the network at exponentially faster rates than before the upgrade.