繁体   English   中英

以太坊交易(调用合约函数)是否会因 assert()/require()/revert() 或 gas 问题以外的原因而失败?

[英]Can Ethereum transaction (calling contract function) fail for reasons other than assert()/require()/revert() or gas issues?

当运行一个不需要gas进行交易的私有以太坊网络时,除了显式调用assert()/require()/revert()之外,合约函数交易是否会因一些“不可预测”的问题而失败,例如除以0或其他一些EVM 或 EVM 以外的问题?

  • 被零除

  • Solidity 0.8+ 中的整数溢出/下溢(以前的版本让数字溢出,0.8 抛出异常)

  • 访问越界数组索引

  • 对未实现被调用函数的地址的消息调用(又名内部事务)(可能是自毁或更改了代理后面的实现)

这些我现在能想到的。 我敢肯定还有更多示例,通常是由某些逻辑错误引起的运行时错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM