Latest round of Ethereum Shapella testnet development reveals a few bugs
Testing on Ethereum’s Zhejiang testnet ahead of the Shanghai-Capella update revealed some bugs, but nothing that will affect the timeline for the introduction of staking to the network.
Developer Marius VanDerWijden documented a syncing bug encountered by other clients that developers are confident can be patched, according to a thread from the Ethereum Foundation’s Tim Beiko. The bug won’t affect any established timelines for the proposed upgrade set for the Sepolia testnet scheduled for Feb. 28, he noted.
The latest withdrawal devnet update detailed a stress test consisting of 600,000 validators, 360,000 of which performed withdrawal credential updates at the time of the fork. Client spikes in RAM and CPU occurred and developers will gauge the number of lost versus recorded credential update messages over the coming days, said Beiko.
The stress test also revealed a bug between a proof-of-stake client, Prysm, and the Besu client which is designed for permissioned use cases. To sync properly, Prysm client expects a certain number of responses; however, Besu imposes response limitations that bring it below the necessary syncing threshold, Beiko said. The Besu team is looking into the matter.
After a discussion on how to best optimize initial client orientation, developers ultimately decided to completely ban blobless 4844 transactions, which would change client assumptions around the transactions and could complicate setup.
Developers also discussed how to move ahead with the deprecation of the SELFDESTRUCT keyword, which terminates a contract, removes the contract’s bytecode from the blockchain, and reroutes funds on the contact to a specified address.
While the path forward remains unclear, there are three current proposals on the subject in discussion as developers seek to find “deactivating options that don’t break things,” Beiko said.
“The challenge here is it opens up a nasty attack vector: deploy a contract, fill storage in a certain way, and when you redeploy the contract, the old storage is still there, and could be accessed in malicious ways,” Beiko said.