Prior to the Shanghai hard fork, a number of issues were found while testing on Ethereum's Zhejiang testnet. Yet none of them prevented the ETH staking withdrawals from happening.
According to Marius VanDerWijden, a core engineer working on Ethereum's planned Shanghai-Capella upgrade, a problem was found on testnet Zhejiang. Added VanDerWijden:
“The last 4 and a half stressful hours of debugging culminated in this amazing bug fix. We got reports that geth nodes wouldn’t sync the Zhejiang devnet correctly. The issue was that if a block body was empty (no tx, no withdrawals) we wouldn’t initialize it correctly.”
Ethereum core developer Tim Beiko asserts that this weakness can be "easily rectified" and that the engineers can "fast" pass the test. Also, a specific Hive test for this situation will be provided by the developers.
The most recent withdrawal devnet release reported a stress test with 600,000 validators, 360,000 of whom updated their withdrawal credentials at the time of the fork. Client memory and CPU usage increased, and over the coming days, engineers will evaluate the proportion of lost to recorded credential update notifications.
The Zhejiang testnet aims to stress BLS, a digital signature mechanism designed to prevent withdrawals and fraud. To ensure that every block on the Ethereum testnet complies with the consensus rules, validators sign and attest to each block. A signature mechanism like BLS can be used to resolve this problem.
A flaw between Prysm, a client for proof-of-stake, and Besu, a client designed for permission use cases, was also discovered during the stress test. Beiko claims that Besu's response limitations prevent it from reaching the required number of answers that the Prysm client need to sync correctly. The Besu team is looking into the matter.
The much-anticipated Shanghai-Capella upgrade, which will improve Ethereum's compute, transactions, and block validation, is about to take place. Nevertheless, it would most importantly make it possible for validators to get access to their locked ETH on the Proof-of-Stake Beacon Chain, which was launched in 2020.