Ethereum developers faced significant challenges during the Pectra upgrade on the Sepolia test network, caused by coding errors in the deposit contract.
Source of the Technical Error and Its Impacts
Launched on March 5, the Pectra update unexpectedly revealed errors due to a 'deposit' event being triggered instead of a transfer in the contract. This caused discrepancies in transaction pools and empty block production. Developer Marius van der Wijden noted initial investigations linked the error to reliable validators, but the source was a new account. These issues worsened node synchronization and increased transaction confirmation times, problems previously observed on the Holesky test network.
Exploitation Triggered by Zero Token Transfers
The complexity increased due to the ERC-20 standard allowing zero token transfers. A user exploited this vulnerability by sending numerous transactions interacting with the deposit contract. The attacker likely used an account funded by test network faucets.
Resolution and Future Steps
The team released a fix that automatically filtered transactions with the deposit contract, allowing most nodes to update by 14:00. Normal network operations were restored. The team emphasized tightening testing processes to prevent such issues in the future.
Ethereum developers quickly stabilized network operation by identifying and fixing errors, highlighting the need for thorough testing before upgrades.