Kintsugi-Testnet causes the Ethereum chain to split up temporarily
The Ethereum Network Consolidation Event is the transition from the current Proof-of-Work (PoW) model to the Proof-of-Stake (PoS) consensus model. Once the process is complete, the existing Ethereum mainnet and the new beacon chain, commonly known as Ethereum 2.0, will merge into one blockchain.
For standardized tests, the Kintsugi test network was made available in December, the purpose of which is to operate the system under different circumstances and to observe how it behaves. One of the developers participating in the Kintsugi testnet is Marius van der Wijden, a core Ethereum developer who works with the Geth (Go-Ethereum) customer team, and says:
“Testnet has been working perfectly for some time. Last week I created the fuzzer tool that sends invalid blocks. A block contains a lot of information, such as transactions, hash of the previous block, gas limit … “.
Some implementations don’t work well
Fuzzer is a popular testing tool used by developers to generate random input for functions or other pieces of code. This tool generates incorrect entries and sees what is happening to the system.
The fuzzer set up by Wijden generates a valid block and changes one of its elements to make it invalid. In this case, the fuzzer has changed the block hash to the parent hash.
“Nodes should reject such a modified block. However, because the parent hash pointed to a valid block, some implementations didn’t work really well. The system verified the block instead of looking it up in the cache. Since the previous block is valid and is in the cache, the system assumes that the new block is also valid. “
Network separation
As a result, half of the network, Geth’s clients, rejected the block while the other half, Nethermind and Besu clients, accepted the block, breaking the chain.
According to Wijden, according to Wijden, the nodes of the geth chain, including the Lighthouse-Geth, Prysm-Geth, Lodestar-Geth, Nimbus-Geth, and Teku-Geth, have also been split.
“This separation is still under investigation, but it appears that some of Teku’s caching mechanisms are flawed.”
Since several different forks of the Kintsugi testnet currently exist and each node thinks it is on the correct fork, the network will not be complete. Wijden said:
“We’ll find a way to bring the network together. We updated the Nethermind app and these nodes are now in the correct chain. The fix for Teku is still needed as it makes up more than 33% of the nodes in the network, otherwise the chain would not be complete. “
The crash brings some good signals
According to Wijden, this incident did not delay the introduction of additional checks for the Ethereum merge event or the merge process.
In fact, this breakdown really helps in checking that the network is working properly.
“Not being able to execute commands for a long time is a challenge for nodes Ethereum, and it is very important for the development team to see how they work. We assume that the test network will be ready to use at some point, but we don’t think we’ll have to fix the system manually. This incident gives us the opportunity to test the interesting aspects of the network. “
“I don’t think this will delay the merger as the merger is not yet planned. But it shows how important tests are. I think the merger is going well. We need a few more weeks for the software to peak and then a few more months to test it. “
What if an error occurs on the mainnet?
An interesting question is what happens when such an error occurs on the mainnet.
“We started testing pretty early, so we expected to see some bugs like this one. However, such a bug on the mainnet would be quite annoying for us, so we need to find the bug, fix it, publish the code, and then let all the creators know that they should update their nodes. In my opinion, the last step is the most difficult as some users don’t closely follow the development process.
Join Bitcoin Magazine Telegram to keep track of news and comment on this article: https://t.me/coincunews
Follow the Youtube Channel | Subscribe to telegram channel | Follow Facebook page