Yesterday, Ethereum developers carried out the first major test of the blockchain’s upcoming move to proof of stake.
Up until now developers had largely been testing out the big change on testnets, which are dedicated clones of the Ethereum blockchain designed for testing purposes. What was different yesterday was they carried out a test on a version of the actual mainnet, in order to try to see if the code worked on the real blockchain.
Since the developers did not want to actually carry out the change in full, they created what’s called a “shadow fork” to test it. This is an experimental exercise where some of the validator nodes split off from the main network and made the upgrade on their own. It did not affect the rest of the network.
“Shadow forks give us a more realistic environment to test in than launching new testnets, because existing testnets already have transactions happening organically on them, and a large state size and block history which put nodes under more stress than new testnets,” Tim Beiko, who runs the core protocol meetings for Ethereum, explained in a Github post.
The event was designed to help the Ethereum developers prepare for "the merge" — an anticipated event when Ethereum changes its consensus algorithm from its proof of work to proof of stake. The Ethereum team has planned a switch to proof of stake since 2016 and it looks like it’s finally closing in on its goal.
The goal of the shadow fork was to check if the validator nodes from both of Ethereum’s two chains (one proof of work, the other proof of stake) can work together once their data has been “merged.” Another objective for the shadow fork was to see whether client software used to run Ethereum nodes — like Nethermind, Besu, Geth, and Erigon — ran normally and without bugs.
The shadow fork merged data from its two parallel blockchains — known as the execution layer and the consensus layer — and created an experimental network around 12 PM UTC time.
How did the shadow fork go?
Jayanthi and other developers reported that the event was largely successful. The forked network was able to produce blocks and finalize transactions entirely using the proof-of-stake algorithm. The validator nodes produced about 26,176 at an average block time of about 13 seconds, according to a block explorer designated to this fork.
According to Ethereum DevOps engineer Parithosh Jayanthi, the Ethereum team only noticed "minor issues” in two Ethereum clients: Nethermind and Besu.
Christine Kim, a researcher at Galaxy Digital, said that Beiko emphasized the outcome of this shadow fork would be key in deciding the timing of the merge. More details on the topic are expected to surface in an upcoming developers call on 15 April.
Yesterday’s shadow fork was the first of two such scheduled events, and the second is set to occur on April 22.
© 2023 The Block. All Rights Reserved. This article is provided for informational purposes only. It is not offered or intended to be used as legal, tax, investment, financial, or other advice.