- องค์กร Ethereum เตือนว่าการปรับราคาแก๊สของ Glamsterdam อาจทำให้สัญญาอัจฉริยะบางส่วนล้มเหลวหากไม่มีการอัปเดตจากนักพัฒนา
- EIP-8037 และ EIP-8038 จะเพิ่มและตรึงต้นทุนแก๊สสำหรับการสร้างและเข้าถึงสถานะบน Ethereum
- นักพัฒนาสามารถทดสอบสัญญาบน Glamsterdam devnets ขณะที่วอลเล็ตและผู้ให้บริการ RPC ต้องอัปเดตการประมาณค่าแก๊สตามตารางใหม่
นักพัฒนา Ethereum เผชิญ กับกฎค่าแก๊สใหม่ภายใต้การอัปเกรด Glamsterdam ที่กำลังจะมา ซึ่งสัญญาบางส่วนอาจล้มเหลวหากไม่มีการเปลี่ยนแปลง เครือข่าย Ethereum Foundation ระบุว่า EIP-8037 และ EIP-8038 จะเปลี่ยนต้นทุนในการสร้างและเข้าถึงสถานะ สัญญาส่วนใหญ่ยังไม่ได้รับผลกระทบ แต่นักพัฒนาที่ใช้สมมติฐานค่าแก๊สที่ระบุไว้ล่วงหน้าอาจต้องอัปเดตก่อนที่การปรับราคาจะไปถึง Mainnet
Glamsterdam เปลี่ยนแปลงค่าแก๊สของ Ethereum
EIP ทั้งสองฉบับมุ่งเน้นที่วิธีการที่ Ethereum เรียกเก็บค่าใช้จ่ายสำหรับการดำเนินการสถานะทั่วทั้งเครือข่าย EIP-8037 เพิ่มและตรึงค่าใช้จ่ายสำหรับการสร้างบัญชี ช่องการจัดเก็บ และไบต์โค้ดที่ถูกนำไปใช้งาน
ในขณะเดียวกัน EIP-8038 เพิ่มต้นทุนในการเข้าถึงสถานะที่มีอยู่ รวมถึง SLOAD, SSTORE และการเข้าถึงบัญชีที่ยังไม่เคยใช้งาน นอกจากนี้ยังเปลี่ยนต้นทุนสำหรับการดำเนินการ EXTCODESIZE และ EXTCODECOPY
ตามที่ Ethereum Foundation ระบุ การเปลี่ยนแปลงเหล่านี้สะท้อนถึงปริมาณงานที่วัดได้ของการดำเนินการบนสถานะที่ใหญ่ขึ้นของ Ethereum ราคาแก๊สสำหรับการดำเนินการเหล่านี้เปลี่ยนแปลงครั้งล่าสุดในช่วงอัปเกรดเบอร์ลินปี 2021
ที่สังเกตได้คือ การเพิ่มขีดจำกัดแก๊สเมื่อเร็วๆ นี้ได้เร่งการเติบโตของสถานะ โมเดลการกำหนดราคาใหม่ใช้เป้าหมายประสิทธิภาพที่รองรับปริมาณการดำเนินการพื้นฐานสูงกว่าประมาณสามเท่า
สัญญาอัจฉริยะบางส่วนอาจล้มเหลว
Ethereum Foundation ได้เล่นซ้ำธุรกรรมบน Mainnet ในอดีตโดยใช้ตารางค่าแก๊สที่เสนอ ธุรกรรมส่วนใหญ่ให้ผลลัพธ์เดียวกันภายใต้กฎการกำหนดราคาใหม่ อย่างไรก็ตาม กลุ่มเล็กๆ แสดงผลลัพธ์ที่ต่างออกไปหลังจากการปรับราคาใหม่
บางธุรกรรมยังประสบความสำเร็จแต่ใช้ปริมาณแก๊สต่างกัน บางรายล้มเหลวเพียงเพราะขีดจำกัดแก๊สเดิมไม่เพียงพอ นักพัฒนาสามารถแก้ไขกรณีเหล่านี้ได้โดยเพิ่มขีดจำกัดแก๊สที่จัดให้
กลุ่มที่เล็กกว่าอาจยังคงไม่สามารถใช้งานได้แม้มีขีดจำกัดสูงกว่ามากมาก สัญญาเหล่านี้มักพึ่งพาสมมติฐานค่าแก๊สที่แน่นอนภายในโค้ดของตน ตัวอย่างเช่น ค่าแก๊ส 2,300 สำหรับการโอนและค่าจ่ายของ Solidity
ค่าการเรียกที่กำหนดค่าคงที่ การตรวจสอบ gasleft() และขีดจำกัดแก๊สที่กำหนดค่าคงที่ก็สามารถสร้างปัญหาได้เช่นกัน ฟันเดชั่นกล่าวว่าทีมที่อยู่เบื้องหลังสัญญาที่ได้รับผลกระทบมากที่สุดกำลังได้รับการติดต่อโดยตรงอยู่แล้ว
นักพัฒนาสามารถทดสอบก่อน Mainnet
นักพัฒนาที่ดูแลสัญญา Layer 1 สามารถค้นหาในฐานข้อมูลสัญญาที่ได้รับผลกระทบโดยใช้ที่อยู่สัญญาของตน เครื่องมือนี้จะระบุประเภทความล้มเหลวและราคาใหม่ที่เป็นสาเหตุของปัญหาแต่ละข้อ
องค์กรยังแนะนำนักพัฒนาให้ทดสอบการแก้ไขบน Testnet Platåberget ที่รู้จักในชื่อ glam-devnet-8 นักพัฒนาวอลเล็ตและ RPC ต้องอัปเดตการประมาณค่าแก๊สให้สอดคล้องกับตารางใหม่
ค่าคงที่ของแก๊สที่ถูกจัดเก็บไว้อาจทำให้ต้นทุนการทำธุรกรรมต่ำเกินไปและก่อให้เกิดความล้มเหลว ผู้ใช้ทั่วไปไม่จำเป็นต้องดำเนินการใดๆ เพราะวอลเล็ตและโครงสร้างพื้นฐานที่อัปเดตแล้วจะจัดการการเปลี่ยนแปลงเหล่านี้
การปรับราคาได้เปิดใช้งานแล้วบน devnets และจะเคลื่อนย้ายไปยัง testnets สาธารณะก่อนการเปิดใช้งานบน Mainnet


