引言
以太坊核心开发团队近日发布了go-ethereum (Geth) v1.15.7版本,这是一个以紧急修复和性能优化为主的更新。本次更新重点解决了存档节点数据库可能崩溃的严重问题,同时优化了交易池逻辑和内存管理,为开发者和节点运营者提供了更稳定的运行环境。
核心更新亮点
1.关键漏洞修复:存档节点数据安全
•问题:在--state.scheme=hash模式下,日志索引器可能错误删除Trie节点,导致存档节点数据库损坏。
•修复:通过补丁彻底解决此问题,确保数据完整性。
2.交易池(TxPool)优化
•Pending Nonce追踪修复:此前本地交易池可能错误计算待处理交易的nonce值,现已修正。
•Reorg问题修复:针对ethclient/simulated.Backend中的交易池重组逻辑进行了优化,减少链重组时的异常。
3.日志索引器更智能
• 当数据库中存在缺失的收据时,日志索引器将自动禁用自身,避免进一步错误。
4.内存占用大幅降低
• Trie操作的内存分配效率显著提升,节点运行时的资源消耗进一步减少。
5.开发者工具增强
•eth_createAccessList支持状态覆盖:现在可以像eth_call一样自定义状态参数。
•排除7702权限:访问列表生成时自动过滤特定权限地址,简化开发流程。
•abigen工具改进:正确转发访问列表至eth_estimateGas,提升合约开发体验。
升级建议
•存档节点运营者:必须立即升级,避免数据库损坏风险。
•开发者:建议更新以利用新的eth_createAccessList功能和交易池优化。
•普通节点:内存优化和稳定性提升值得升级。
下载方式
•预编译二进制文件:官方下载页[1]
•Docker镜像:ethereum/client-go
•Ubuntu:通过Launchpad PPA安装
•OSX:使用Homebrew Tap更新
结语
Geth v1.15.7虽是小版本更新,但解决了多个关键问题,尤其是对存档节点和交易池的修复堪称“及时雨”。以太坊生态的持续优化离不开开发团队的快速响应,建议所有用户尽快升级!
引用链接
[1]官方下载页:https://geth.ethereum.org/downloads/
·
欢迎关注“福大大架构师每日一题”,让AI助力您的未来发展。
·
领取专属 10元无门槛券
私享最新 技术干货