为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【概述】在尝试测试单节点TiKV的恢复时,修改raft-engine的配置项 recovery-mode
为 “tolerate-any-corruption” 并手动删除raft log文件,TiKV恢复失败
【应用框架及开发适配业务逻辑】测试在断电等异常情况导致文件丢失或损坏时, TiKV的恢复情况
【背景】
1, 修改raft-engine的配置项 recovery-mode
为 “tolerate-any-corruption”
2,重启TiKV
3,应用层往TiKV入数据
4,手动删除raft-engine的末尾日志文件
5,停止入数据
6,重启TiKV,TiKV启动失败
【现象】 TiKV启动失败并报错 “[FATAL] [server.rs:950] [“failed to start node: Engine(Other("[components/raftstore/src/store/fsm/store.rs:1115]: \"[components/raftstore/src/store/peer_storage.rs:769]: [region 2] 3 validate state fail: Other(\\\"[components/raftstore/src/store/peer_storage.rs:595]: log at recorded commit index [8] 262607 doesn’t exist, may lose data, region 2, raft state hard_state { term: 8 vote: 3 commit: 103492 } last_index: 103494, apply state applied_index: 262607 commit_index: 262607 commit_term: 8 truncated_state { index: 262600 term: 8 }\\\")\""))”]”
【问题】 TiKV无法恢复
【业务影响】
【TiDB 版本】
tikv:v6.1.0
【附件】