- La Fondation Ethereum avertit que la réévaluation du gaz de Glamsterdam pourrait entraîner l'échec de certains contrats intelligents sans mises à jour des développeurs.
- EIP-8037 et EIP-8038 augmenteront et standardiseront les coûts de gaz pour la création et l'accès à l'état sur Ethereum.
- Les développeurs peuvent tester les contrats sur les devnets de Glamsterdam, tandis que les wallets et les fournisseurs RPC doivent mettre à jour l'estimation du gaz selon le nouveau calendrier.
Les développeurs d'Ethereum font face à de nouvelles règles de gaz dans le cadre de la prochaine mise à jour Glamsterdam, certains contrats risquant de ne plus fonctionner sans modifications. La Fondation Ethereum a indiqué que les EIP-8037 et EIP-8038 modifieront les coûts de création et d'accès à l'état. La plupart des contrats ne sont pas concernés, mais les développeurs utilisant des hypothèses de gaz codées en dur devront peut-être mettre à jour leurs contrats avant que le nouveau prix ne soit appliqué sur le mainnet.
Glamsterdam modifie les coûts de gaz ethereum
Les deux EIP ciblent la manière dont Ethereum facture les opérations d'état sur l'ensemble du réseau. L'EIP-8037 augmente et standardise les coûts pour la création de comptes, de cases de stockage et de bytecode déployé.
Entre-temps, l'EIP-8038 augmente les coûts d'accès à l'état existant, notamment pour SLOAD, SSTORE et l'accès aux comptes à froid. Elle modifie également les coûts des opérations EXTCODESIZE et EXTCODECOPY.
Selon la Fondation Ethereum, ces modifications reflètent la charge de travail mesurée des opérations sur l'état plus vaste d'Ethereum. Les prix de gaz pour ces opérations ont dernièrement été modifiés lors de la mise à jour Berlin de 2021.
Notamment, les récentes augmentations de la limite de gaz ont accéléré la croissance de l'état. Le nouveau modèle de tarification utilise une cible de performance permettant environ trois fois plus de débit de base.
Certains contrats intelligents pourraient échouer
La Ethereum Foundation a rejoué des transactions historiques du mainnet en utilisant le calendrier de gaz proposé. La plupart des transactions ont produit le même résultat selon les nouvelles règles de tarification. Toutefois, un plus petit groupe a affiché des résultats différents après la réévaluation.
Certaines transactions ont tout de même réussi, mais ont utilisé des montants de gaz différents. D'autres n'ont échoué que parce que leurs limites de gaz initiales sont devenues insuffisantes. Les développeurs peuvent résoudre ces cas en augmentant la limite de gaz fournie.
Un groupe plus petit pourrait rester en panne malgré des limites considérablement plus élevées. Ces contrats dépendent souvent d'hypothèses de gaz fixes dans leur code. Les exemples incluent les transferts et les allocations de gaz de 2 300 de Solidity.
Les valeurs d'appel codées en dur, les vérifications de gasleft() et les limites de gaz fixes peuvent également créer des problèmes. La Fondation a déclaré que les équipes derrière les contrats les plus touchés reçoivent déjà un contact direct.
Les développeurs peuvent tester avant le mainnet
Les développeurs qui maintiennent les contrats Layer 1 peuvent rechercher dans la base de données des contrats affectés en utilisant leur adresse de contrat. L'outil identifie les types d'échec et la réévaluation responsables de chaque problème.
La Fondation a également conseillé aux développeurs de tester les correctifs sur la testnet Platåberget, connue sous le nom de glam-devnet-8. Les développeurs de wallet et de RPC doivent mettre à jour l'estimation du gaz pour refléter le nouveau calendrier.
Les constantes de gaz mises en cache pourraient autrement sous-estimer les coûts de transaction et provoquer des échecs. Les utilisateurs réguliers n'ont aucune action à entreprendre, car les wallets et l'infrastructure mis à jour géreront les changements.
La réévaluation est déjà en ligne sur les devnets et sera déployée sur les testnets publiques avant l'activation du mainnet.


