执行RMRK同步时报State Database pruning模式错误的解决方法
原启动命令:
chmod +x polkadot && mv polkadot kusama ./kusama --pruning archive --db rocksdb运行报错:
State Database error: Expected pruning mode: constrained
错误产生原因
该报错由本地已有Kusama节点数据库的修剪模式和启动参数指定的模式不匹配导致:
- 首次启动节点如果没有加
--pruning archive参数,节点默认使用constrained修剪模式运行,生成的数据库会自带该模式的标识 - 后续启动新增
--pruning archive参数时,节点检测到已有数据库的修剪配置和传入的归档模式要求冲突,就会抛出该错误
解决方案
根据你是否需要保留已有链数据选择对应处理方式:
场景1:无需保留旧链数据(适用于RMRK同步场景)
直接删除本地已有的Kusama链数据库目录,默认路径为~/.local/share/polkadot/chains/ksmcc3/,执行命令:
rm -rf ~/.local/share/polkadot/chains/ksmcc3/
删除完成后再用原命令启动即可:
./kusama --pruning archive --db rocksdb
启动后节点会重新同步完整归档链数据,满足RMRK同步的全状态查询要求。
场景2:需要保留已有旧链数据
移除启动参数中的--pruning archive配置,用默认的constrained模式启动即可,命令如下:
./kusama --db rocksdb
该方式不会删除已有数据,但仅支持普通节点同步、转账等基础功能,无法查询历史区块状态,不满足RMRK同步要求。
内容的提问来源于stack exchange,提问作者Brandon Macer
相关产品推荐
相关产品推荐

