Older versions of Geth could contain consensus flaws on the network. The correction of the error was ready five versions ago, but the clients still needed updating.
On November 11th, the ecosystem around the Ethereum project suddenly dawned with a chain split. This could have occurred due to delays in updating the clients of its nodes. One of the most prominent is that of the Infura Company, which reportedly ran an old version of the Geth client.
Blockchair developer Nikita Zhavoronkov described the situation. He said that, at some point, the Ethereum developers introduced a change to the code. This may have led to a chain split starting from block 11234873 (07:08 UTC). Those that have not upgraded (@Blockchair, @infura_io, some miners, and many others) got stuck in a minority chain (~ 30 blocks in 2 hours).
According to the programmer, this was technically a hard fork that occurred unannounced. He also questioned the situation by saying that it was a “failure” for the Ethereum consensus, which no one should underestimate. He considers what happened to be the most serious problem Ethereum has faced since the DAO debacle in 2016.
Infura’s Maneuvers about What Happened on Ethereum
In the case of Infura, the error led to multiple delays and drop-in services. This occurred because the company offers support to various companies that do not run their own nodes but rather use their services as an outsourced provider.
In an alert (08:12 UTC), Infura warned that they had recorded a “service outage” for their Ethereum API. They identified the problem (09:47 UTC) without providing details on what happened.
Two hours after the incident, they indicated that they traced the root cause to various components within their infrastructure, locked to an older stable version of the go-ethereum client. A critical consensus error in block 11234873 affected several versions of Geth, including 1.9.9 and 1.9.13. Components that worked on 1.9.19 and later had no problems.
Stopped Services and User Reactions
On his Twitter account, the CEO of the Binance exchange, Changpeng Zhao, posted that they had temporarily suspended withdrawals, but that the funds were safe. An hour later, he informed about the resumption of both deposits and withdrawals for ERC20 tokens.
Paolo Ardonio, Chief Technology Officer of the Bitfinex exchange, warned that exchanges should run their own Ethereum nodes. In this regard, Zhao himself said that they have it on Binance, but that he was not “sure if it will be in an orphan chain.”
Reddit users also expressed their views, highlighting the issue of centralization of services. One of them, identified as nice2yz, said: “What happened to decentralization? This is shameful for services that are not running their own nodes.”
Another user, eastsideski, said that “there are many alternatives to Infura, but most dApps (and apparently even exchanges) have been too lazy to switch.”
Information services such as CoinMarketCap alerted that Infura was experiencing problems, which led to delays in reflecting quotations. At the time of writing this article, Ether (ETH) is trading at USD 461 per unit.
By Alexander Salazar