长安链无法出块日志:"simulate with dag timeout"
【问题分类】
- bug
- P2P网络相关(包含libp2p,liquid)
- 链账户身份与权限相关(证书问题、public、多签投票问题)
- 核心交易引擎相关(交易池、DAG)
- 共识相关
- 智能合约相关
- 存储相关
- SDK相关
- 长安链CMC工具
- 长安链管理台
- 长安链浏览器
- 长安链合约IDE
- 长安链web签名插件
- 跨链相关
- 轻节点相关
- 隐私计算相关
- 密码学相关
- 环境依赖 linux
- 其他补充:
【问题描述】(请对问题进行描述,方便定位问题)
通过java sdk 调用智能合约有几率不出块,所有的交易卡在了交易池里面 关键ERROR级别日志:simulate with dag timeout
具体的现象,操作步骤,前置条件等,尽可能描述清楚,有截图说明更佳
通过java-sdk调用智能,智能合约是用rust写的,在智能合约中会通过ctx.error("XX")主动抛出异常 目前在智能合约压测阶段,区块链不出块,所有交易堵在交易池中。 现象复现了几次,重启部分共识节点,交易池中的数据有可能慢慢出块,也可能没有动静。重启所有节点,区块链恢复正常,交易池数据丢失。 前几次都是正常INFO级别的日志,最后一次ERROR日志如下,最后一条是智能合约正常抛出异常信息
【相关日志文件】(如果有报错日志请贴图,或者上传附件)
chainmaker-go 的 log/system.log & bin/panic.log file *
2025-02-07 10:24:36.772 [ERROR] [Core] @chainmaker scheduler/scheduler.go:575 block [17906] simulate with dag timeout
2025-02-07 10:24:36.772 [INFO] [Core] @chainmaker scheduler/scheduler.go:585 simulate with dag finished, block 17906, size 1690, time used 20.000455452s, tps 84.49807575911997
2025-02-07 10:24:36.772 [INFO] [Core] @chainmaker common/block_helper.go:688 Validate block17906, time used(new snapshot:1, start DB transaction:0, vm:20000)
2025-02-07 10:24:36.772 [WARN] [Core] @chainmaker verifier/block_verifier_impl.go:178 verify failed 17906,preBlockHash:e8f06eecde0accaebe52d047d9694564f0d903529ebecbe2222faf0a54632a7e, simulate txcount expect 1690, got txRWSetMap 1652, txResultMap 1652
2025-02-07 10:24:36.772 [INFO] [Consensus] @chainmaker v2@v2.3.2/consensus_tbft_impl.go:836 QmUwwYS8AdjefrF2fV3pqMBjUSbywEXXCxxph6Prq9LE1t receive verify result (17906/7835479c7ba8b820ebbc8f3b0a90e0e285a458e6c7cbe3c4358d26270779ce3a) FAIL
2025-02-07 10:24:36.772 [WARN] [Consensus] @chainmaker v2@v2.3.2/consensus_tbft_impl.go:841 QmUwwYS8AdjefrF2fV3pqMBjUSbywEXXCxxph6Prq9LE1t receive verify result failed, (17906/7835479c7ba8b820ebbc8f3b0a90e0e285a458e6c7cbe3c4358d26270779ce3a) FAIL
2025-02-07 10:25:02.280 [ERROR] [Core] @chainmaker scheduler/scheduler.go:723 failed to run vm for tx id:1821cb3f1f6e8541ca928e95c073a1911e019f218222489e93cc8afc1943239b,contractName:DataComparison04, tx result:code:CONTRACT_FAIL contract_result:<code:1 message:"contract message:XXXX data is invalid." gas_used:207018 > , error:contract message:XXXX data is invalid.
SDK 的 sdk.log file
【系统信息】(请填写系统信息,方便定位问题)
- chainmaker-go version * : [v2.3.1-定制版]
- OS & version * : centos7