Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Dynamic Regions] multiple rocksdb tikv panic with Option::unwrap() on a None value #14316

Closed
lilinghai opened this issue Mar 1, 2023 · 0 comments · Fixed by #14318
Closed
Labels

Comments

@lilinghai
Copy link

Bug Report

What version of TiKV are you using?

master

What operating system and CPU are you using?

Steps to reproduce

[2023/02/28 21:54:06.543 +00:00] [FATAL] [[lib.rs:497](http://lib.rs:497/)] ["called `Option::unwrap()` on a `None` value"] [backtrace="   0: tikv_util::set_panic_hook::{{closure}}\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/tikv_util/src/lib.rs:496:18\n](http://github.com/pingcap/tikv/components/tikv_util/src/lib.rs:496:18/n)   1: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/[boxed.rs:2032](http://boxed.rs:2032/):9\n      std::panicking::rust_panic_with_hook\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/[panicking.rs:692](http://panicking.rs:692/):13\n   2: std::panicking::begin_panic_handler::{{closure}}\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/[panicking.rs:577](http://panicking.rs:577/):13\n   3: std::sys_common::backtrace::__rust_end_short_backtrace\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/[backtrace.rs:137](http://backtrace.rs:137/):18\n   4: rust_begin_unwind\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/[panicking.rs:575](http://panicking.rs:575/):5\n   5: core::panicking::panic_fmt\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/[panicking.rs:65](http://panicking.rs:65/):14\n   6: core::panicking::panic\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/[panicking.rs:114](http://panicking.rs:114/):5\n   7: raftstore_v2::raft::apply::Apply<EK,R>::new\n      raftstore_v2::fsm::apply::ApplyFsm<EK,R>::new\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/fsm/apply.rs:73:21\n](http://github.com/pingcap/tikv/components/raftstore-v2/src/fsm/apply.rs:73:21/n)      raftstore_v2::operation::command::<impl raftstore_v2::raft::peer::Peer<EK,ER>>::schedule_apply_fsm\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/operation/command/mod.rs:125:48\n](http://github.com/pingcap/tikv/components/raftstore-v2/src/operation/command/mod.rs:125:48/n)   8: raftstore_v2::operation::ready::snapshot::<impl raftstore_v2::raft::peer::Peer<EK,ER>>::on_applied_snapshot\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/operation/ready/snapshot.rs:281:13\n](http://github.com/pingcap/tikv/components/raftstore-v2/src/operation/ready/snapshot.rs:281:13/n)      raftstore_v2::operation::ready::<impl raftstore_v2::raft::peer::Peer<EK,ER>>::on_persisted\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/operation/ready/mod.rs:656:13\n](http://github.com/pingcap/tikv/components/raftstore-v2/src/operation/ready/mod.rs:656:13/n)   9: raftstore_v2::fsm::peer::PeerFsmDelegate<EK,ER,T>::on_msgs\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/fsm/peer.rs:275:22\n](http://github.com/pingcap/tikv/components/raftstore-v2/src/fsm/peer.rs:275:22/n)  10: <raftstore_v2::batch::store::StorePoller<EK,ER,T> as batch_system::batch::PollHandler<raftstore_v2::fsm::peer::PeerFsm<EK,ER>,raftstore_v2::fsm::store::StoreFsm>>::handle_normal\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/batch/store.rs:222:9\n](http://github.com/pingcap/tikv/components/raftstore-v2/src/batch/store.rs:222:9/n)      batch_system::batch::Poller<N,C,Handler>::poll\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/batch-system/src/batch.rs:422:27\n](http://github.com/pingcap/tikv/components/batch-system/src/batch.rs:422:27/n)  11: batch_system::batch::BatchSystem<N,C>::start_poller::{{closure}}\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/batch-system/src/batch.rs:550:17\n](http://github.com/pingcap/tikv/components/batch-system/src/batch.rs:550:17/n)      <std::thread::Builder as tikv_util::sys::thread::StdThreadBuildWrapper>::spawn_wrapper::{{closure}}\n             at /home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/tikv_util/src/sys/thread.rs:415:23\n](http://github.com/pingcap/tikv/components/tikv_util/src/sys/thread.rs:415:23/n)      std::sys_common::backtrace::__rust_begin_short_backtrace\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/[backtrace.rs:121](http://backtrace.rs:121/):18\n  12: std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/[mod.rs:551](http://mod.rs:551/):17\n      <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/[unwind_safe.rs:271](http://unwind_safe.rs:271/):9\n      std::panicking::try::do_call\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/[panicking.rs:483](http://panicking.rs:483/):40\n      std::panicking::try\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/[panicking.rs:447](http://panicking.rs:447/):19\n      std::panic::catch_unwind\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/[panic.rs:137](http://panic.rs:137/):14\n      std::thread::Builder::spawn_unchecked_::{{closure}}\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/[mod.rs:550](http://mod.rs:550/):30\n      core::ops::function::FnOnce::call_once{{vtable.shim}}\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/[function.rs:513](http://function.rs:513/):5\n  13: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/[boxed.rs:2000](http://boxed.rs:2000/):9\n      <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/[boxed.rs:2000](http://boxed.rs:2000/):9\n      std::sys::unix::thread::Thread::new::thread_start\n             at /rust/toolchains/nightly-2022-11-15-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/[thread.rs:108](http://thread.rs:108/):17\n  14: start_thread\n  15: clone\n"] [location=/home/jenkins/agent/workspace/build-common/go/src/[github.com/pingcap/tikv/components/raftstore-v2/src/raft/apply.rs:77](http://github.com/pingcap/tikv/components/raftstore-v2/src/raft/apply.rs:77)]

What did you expect?

What did happened?

ti-chi-bot added a commit that referenced this issue Mar 2, 2023
close #14306, close #14316, close #14324

Compaction guard is disabled in v2, which will use 8MiB for file size. We need
set multiplier to reduce sst file count.

This PR also fixes a race between region creation and destroy.

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>

Co-authored-by: Ti Chi Robot <ti-community-prow-bot@tidb.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants