[2024/03/05 16:25:37.411 +08:00] [FATAL] [lib.rs:465] [“txn record found but not expected: txn @447507672037326851”] [backtrace=" 0: tikv_util::set_panic_hook::{{closure}}
at tikv/components/tikv_util/src/lib.rs:464:18
1: std::panicking::rust_panic_with_hook
at /rustc/2faabf579323f5252329264cc53ba9ff803429a3/library/std/src/panicking.rs:626:17
2: std::panicking::begin_panic_handler::{{closure}}
at /rustc/2faabf579323f5252329264cc53ba9ff803429a3/library/std/src/panicking.rs:519:13
3: std::sys_common::backtrace::__rust_end_short_backtrace
at /rustc/2faabf579323f5252329264cc53ba9ff803429a3/library/std/src/sys_common/backtrace.rs:141:18
4: rust_begin_unwind
at /rustc/2faabf579323f5252329264cc53ba9ff803429a3/library/std/src/panicking.rs:515:5
5: std::panicking::begin_panic_fmt
at /rustc/2faabf579323f5252329264cc53ba9ff803429a3/library/std/src/panicking.rs:457:5
6: tikv::storage::txn::actions::check_txn_status::rollback_lock
at tikv/src/storage/txn/actions/check_txn_status.rs:154:13
7: tikv::storage::txn::actions::check_txn_status::check_txn_status_lock_exists
at tikv/src/storage/txn/actions/check_txn_status.rs:50:17
8: <tikv::storage::txn::commands::check_txn_status::CheckTxnStatus as tikv::storage::txn::commands::WriteCommand<S,L>>::process_write
at tikv/src/storage/txn/commands/check_txn_status.rs:93:54
9: tikv::storage::txn::commands::Command::process_write
at tikv/src/storage/txn/commands/mod.rs:615:43
10: tikv::storage::txn::scheduler::Scheduler<E,L>::process_write::{{closure}}
是这个调用栈,check_txn_status 发现的。
为什么会认为要回滚。如果发现了已经提交了,为什么要panic?直接认为不需要回滚不行吗?