以太坊基金会警告:Glamsterdam 燃气重定价可能导致部分合约失效
要点速览
- •EIP-8037 将提高并标准化创建账户、存储槽和已部署字节码的 gas 成本。
- •EIP-8038 将提高访问现有状态的 gas 成本,包括 SLOAD、SSTORE 和冷账户访问。
- •在提议的定价下,大多数历史主网交易结果保持不变,但少数交易表现不同。
- •依赖固定 gas 假设的合约,包括 2,300-gas transfer 和 send stipends,若不更新代码可能仍会失效。
- •以太坊基金会已提供受影响合约数据库,并建议开发者在主网激活前于 glam-devnet-8 上测试修复。

以太坊基金会警告称,正在推进的 Glamsterdam gas 重定价可能会导致一些智能合约在开发者未更新的情况下失效。
EIP-8037 和 EIP-8038 将提高并标准化以太坊上状态创建和访问的 gas 成本。开发者可以在 Glamsterdam devnet 上测试合约,而钱包和 RPC 提供商则需要为新的费率表更新 gas 估算。
以太坊开发者正在面对计划中的 Glamsterdam 升级带来的新 gas 规则,部分合约在未做修改的情况下可能无法继续运行。以太坊基金会表示,EIP-8037 和 EIP-8038 将改变状态创建和访问的成本。预计大多数合约不会受到影响,但依赖硬编码 gas 假设的开发者可能需要在重定价到达主网之前更新代码。
由于这些变化影响的是核心 EVM 操作的定价,实际影响与其说取决于应用的大类,不如说取决于嵌入在合约逻辑和工具中的具体 gas 假设。因此,对于自上一轮网络升级后就未检查旧常量的团队来说,测试尤为重要。
Glamsterdam 将改变以太坊 Gas 成本
这两项 EIP 聚焦于以太坊如何对全网的状态操作收费。EIP-8037 将提高并统一创建账户、存储槽和已部署字节码的成本。
EIP-8038 则会提高访问现有状态的成本,包括 SLOAD、SSTORE 和冷账户访问。它也会改变 EXTCODESIZE 和 EXTCODECOPY 操作的成本。
根据以太坊基金会的说法,这些变化反映了以太坊更大状态规模下,相关操作经测量后的工作负载。这些操作的 gas 价格上一次调整是在 2021 年 Berlin 升级期间。
基金会指出,近期 gas 上限的提高加速了状态增长。新的定价模型采用了一个性能目标,支撑大约高出三倍的基础吞吐量。
部分智能合约可能失效
以太坊基金会使用提议中的 gas 费率表回放了历史主网交易。大多数交易在新的定价规则下得出了相同结果,但仍有少数交易在重定价后表现不同。
有些交易仍然成功,但消耗的 gas 数量不同。另一些则只是因为原始 gas 上限已不足而失败。开发者可以通过提高所提供的 gas 上限来处理这些情况。
还有一小部分合约即使在显著提高上限后仍可能损坏。这些合约通常依赖代码中的固定 gas 假设。Solidity 的 2,300-gas transfer 和 send stipends 就是例子。
硬编码的调用值、gasleft() 检查以及固定 gas 上限也可能带来问题。基金会表示,受影响最严重的合约团队已经在接收直接联系。
开发者可在主网前测试
维护 Layer 1 合约的开发者可以使用合约地址在受影响合约数据库中进行查询。该工具会识别失败类型以及导致每个问题的重定价原因。
基金会还建议开发者在名为 glam-devnet-8 的 Platåberget testnet 上测试修复方案。钱包和 RPC 开发者必须更新 gas 估算以反映新的费率表。
否则,缓存的 gas 常量可能会低估交易成本并导致失败。普通用户无需采取任何行动,因为更新后的钱包和基础设施会处理这些变化。
该重定价已在 devnet 上生效,并将在主网激活前转入公开 testnet。