FISCO BCOS Transaction execution error合约执行失败原因

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FISCO BCOS Transaction execution error合约执行失败原因相关的知识,希望对你有一定的参考价值。

 根据TransactionExceptionID查询错误原因

交易回执状态

status(十进制/十六进制)message含义
0(0x0)None正常
1(0x1)Unknown未知异常
2(0x2)BadRLP无效RLP异常
3(0x3)InvalidFormat无效格式异常
4(0x4)OutOfGasIntrinsic部署的合约长度超过gas限制/调用合约接口参数超过gas限制
5(0x5)InvalidSignature无效的签名异常
6(0x6)InvalidNonce无效nonce异常
7(0x7)NotEnoughCashcash不足异常
8(0x8)OutOfGasBase调用合约的参数过长 (RC版本)
9(0x9)BlockGasLimitReachedGasLimit异常
10(0xa)BadInstruction错误指令异常
11(0xb)BadJumpDestination错误目的跳转异常
12(0xc)OutOfGas合约执行时gas不足 / 部署的合约长度超过最长上限
13(0xd)OutOfStack栈溢出异常
14(0xe)StackUnderflow栈下限溢位异常
15(0xf)NonceCheckFailnonce检测失败异常
16(0x10)BlockLimitCheckFailblocklimit检测失败异常
17(0x11)FilterCheckFailfilter检测失败异常
18(0x12)NoDeployPermission非法部署合约异常
19(0x13)NoCallPermission非法call合约异常
20(0x14)NoTxPermission非法交易异常
21(0x15)PrecompiledErrorprecompiled错误异常
22(0x16)RevertInstructionrevert指令异常
23(0x17)InvalidZeroSignatureFormat无效签名格式异常
24(0x18)AddressAlreadyUsed地址占用异常
25(0x19)PermissionDenied无权限异常
26(0x1a)CallAddressError被调用的合约地址不存在
27(0x1b)GasOverflowGas溢出错误
28(0x1c)TxPoolIsFull交易池已满异常
29(0x1d)TransactionRefused交易被拒绝异常
30(0x1e)ContractFrozen合约被冻结异常
31(0x1f)AccountFrozen账户被冻结异常
10000(0x2710)AlreadyKnown交易已经在交易池中
10001(0x2711)AlreadyInChain交易已经上链异常
10002(0x2712)InvalidChainId无效的链ID异常
10003(0x2713)InvalidGroupId无效的群组ID异常
10004(0x2714)RequestNotBelongToTheGroup请求不属于群组异常
10005(0x2715)MalformedTx交易格式错误
10006(0x2716)OverGroupMemoryLimit超出群组内存限制异常

 

FISCO BCOS完整的错误码描述请参考这里.

1. out of gas
问题描述:

交易回执状态值为0xc,错误描述out-of-gas during EVM execution。 这个错误可能的原因:

合约逻辑比较复杂。
合约逻辑问题,数组结构体没有初始化,或者出现死循环。
解决方法:

使用控制台加大tx_gas_limit的值,操作流程参考: 控制台设置tx_gas_limit
检查合约的逻辑,修复合约逻辑的漏洞


2. revert instruction
问题描述:

交易回滚,交易回执状态值为0x16,错误描述revert instruction,这个错误是因为合约的逻辑问题,包括:

访问调用未初始化的合约
访问初始化为0x0的合约
数组越界访问
除零错误
调用assert、revert
其他错误


解决方法:

检查合约逻辑,修复漏洞。
 

 

交易执行失败 | FISCO BCOS开发问题排查_FISCO_BCOS的博客-CSDN博客

以上是关于FISCO BCOS Transaction execution error合约执行失败原因的主要内容,如果未能解决你的问题,请参考以下文章

fisco bcos transaction交易结构 源代码位置

FISCO BCOS源码编译源码 获取FISCO BCOS可执行程序

FISCO BCOS 负载均衡

安装FISCO-BCOS的那些坑

FISCO-BCOS平台共识

fisco bcos caliper benchmark 结果实例