Разработчиков Ethereum призвали пересмотреть предположения о gas перед обновлением Glamsterdam
Ключевые выводы
- •EIP-8037 пересмотрит стоимость создания нового state, включая новые аккаунты, слоты хранения и развернутый bytecode.
- •EIP-8038 повысит стоимость доступа к существующему state, включая SSTORE, SLOAD и холодный доступ к аккаунтам.
- •Анализ воспроизведения транзакций показывает, что большинство smart contracts будет работать без изменений, а меньшей части может потребоваться больше gas или ручная проверка.
- •Наибольший риск у контрактов, которые опираются на фиксированные допущения о gas, включая жестко заданные stipend'ы, логику на основе gasleft() и негибкие лимиты предварительно подписанных транзакций.
- •Кошелькам, RPC-сервисам и node-инструментам нужно обновить логику оценки gas, поскольку кэшированные константы могут занижать потребности после введения новой схемы.

Сеть Ethereum готовится к обновлению Glamsterdam — протокольному апдейту, который пересмотрит комиссии gas для операций, связанных со state, через две запланированные инициативы: EIP-8037 и EIP-8038. Изменения призваны привести ценообразование gas в соответствие с фактическими вычислительными и хранилищными ресурсами, которые потребляют транзакции, устраняя расхождение, усилившееся с момента последней корректировки во время хардфорка Berlin в 2021 году.
По данным Ethereum Foundation, EIP-8037 нацелен на стоимость создания нового state — включая новые аккаунты, слоты хранения и развернутый bytecode — путем увеличения и унификации этих сборов с отдельным учетом. Такой подход должен помочь удерживать рост state на устойчивом уровне, даже если лимиты block gas продолжат расти.
EIP-8038, в свою очередь, повышает стоимость доступа к существующему state, включая операции вроде SSTORE, SLOAD, холодного доступа к аккаунту, а также EXTCODESIZE и EXTCODECOPY, чтобы отражать текущие показатели производительности на фоне увеличившегося размера state в сети. Организация отмечает, что график пересмотра цен рассчитан на поддержку примерно трехкратного увеличения базовой пропускной способности, что делает его необходимым условием для дальнейшего масштабирования без ухудшения работы node operators.
Оценка влияния на разработчиков
Анализ исторических транзакций mainnet, воспроизведенных по новой схеме, показывает, что подавляющее большинство smart contracts будет исполняться без изменений, и лишь небольшая часть столкнется с изменением поведения. Транзакции делятся на четыре категории: без изменений; успешные с измененным расходом gas; исчерпывающие исходный лимит gas, но завершающиеся при его увеличении; и неуспешные даже при существенно повышенных лимитах.
Контракты из последней категории обычно зависят от хрупких предположений о стоимости gas, включая жестко заданные stipend'ы, такие как 2,300 gas, закрепленные в функциях transfer и send в Solidity, явные значения gas во внешних вызовах, условную логику на основе gasleft() или предварительно подписанные транзакции с негибкими лимитами. Ethereum Foundation уже начала прямую коммуникацию с наиболее затронутыми командами разработчиков и подготовила отчет о наиболее пострадавших организациях.
Разработчикам и операторам инфраструктуры рекомендуется проверять статус контрактов через официальный инструмент поиска и проводить тестирование в тестовой сети Platåberget, которая уже работает по новой схеме. Контракты, которые можно исправить за счет повышения лимитов gas, потребуют обновлений frontend или инфраструктуры, тогда как потенциально сломанные контракты нуждаются в ручной проверке отмеченных call sites.
Поставщикам кошельков, RPC-сервисам и инструментам для node также необходимо обновить логику оценки gas, поскольку кэшированные константы будут занижать значения по новым правилам. Обычным пользователям не требуется предпринимать никаких действий, так как обновленные кошельки и сервисы, как ожидается, автоматически обработают переход. Пересмотр цен уже действует в development networks и будет поэтапно распространен на публичные testnet перед активацией в mainnet.