zkSync noted that this function uses a hardcoded fixed gas amount of 2300, which is not guaranteed to work on Ethereum because the gas consumption could be more or changed in the future.
The L2 solution said it had warned of this issue as far back as 2019.
zkSync further explained that its Era mainnet is not an equivalent of Ethereum Virtual Machine (EVM). It noted that:
“This is a deliberate design choice. Era has a diverging, dynamic gas metering, which allows some transaction types to be 10x to 1000x cheaper than on any other EVM rollup!”
The solution
zkSync said it identified “an elegant solution which can solve a broader class of gas-related problems. It will require minimal changes in the gas metering of the protocol but will allow for full recovery of the funds.”
The L2 network said it checked the source code of several popular crypto projects and found that they complied with its previous warning.
Meanwhile, the scaling solution pointed out that these issues could have been prevented if Gemholic first deployed the contract on a testnet. zkSync said:
“Unfortunately, the contracts were deployed on Era mainnet without having been tried on the testnet or local node, which would have immediately caught the problem.”
zkSync has enjoyed rapid adoption since its launch in March. The total value of assets locked on the network has risen to fourth among other L2 networks, according to L2beats data. The project said its growth is “the most any scaling solution has ever undergone in such a short period.”