Skip to content

Region opener panicked when finding time index column during replaying #7999

@evenyag

Description

@evenyag

What type of bug is this?

Crash

What subsystems are affected?

Storage Engine

Minimal reproduce step

Not sure how to reproduce. It happened in a relatively old version (0.12).

What did you expect to see?

Datanode restarts without panic

What did you see instead?

Panic during restarting the datanode

What operating system did you use?

Unrelated

What version of GreptimeDB did you use?

0.12

Relevant log output and stack trace

thread 'global-worker' panicked at greptimedb/src/mito2/src/memtable/key_values.rs:314:14:
called `Option::unwrap()` on a `None` value
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
2026-04-20T06:22:31.459192Z ERROR common_telemetry::panic_hook: panicked at greptimedb/src/mito2/src/memtable/key_values.rs:314:14:
called `Option::unwrap()` on a `None` value backtrace=   0: common_telemetry::panic_hook::set_panic_hook::{{closure}}
             at /greptimedb/greptimedb/src/common/telemetry/src/panic_hook.rs:37:25
   1: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/alloc/src/boxed.rs:1980:9
      std::panicking::rust_panic_with_hook
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/std/src/panicking.rs:841:13
   2: std::panicking::begin_panic_handler::{{closure}}
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/std/src/panicking.rs:699:13
   3: std::sys::backtrace::__rust_end_short_backtrace
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/std/src/sys/backtrace.rs:168:18
   4: __rustc::rust_begin_unwind
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/std/src/panicking.rs:697:5
   5: core::panicking::panic_fmt
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/panicking.rs:75:14
   6: core::panicking::panic
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/panicking.rs:145:5
   7: core::option::unwrap_failed
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/option.rs:2040:5
   8: mito2::memtable::key_values::SparseReadRowHelper::new
   9: mito2::memtable::key_values::KeyValues::new
             at /greptimedb/greptimedb/src/mito2/src/memtable/key_values.rs:49:22
  10: mito2::region_write_ctx::RegionWriteCtx::write_memtable::{{closure}}::{{closure}}
             at /greptimedb/greptimedb/src/mito2/src/region_write_ctx.rs:221:27
      core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/ops/function.rs:294:13
      core::iter::traits::iterator::Iterator::find_map::check::{{closure}}
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/iter/traits/iterator.rs:2888:32
      <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::try_fold::enumerate::{{closure}}
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/iter/adapters/enumerate.rs:119:27
      <alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::try_fold
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/alloc/src/vec/into_iter.rs:351:25
      <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::try_fold
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/iter/adapters/enumerate.rs:125:9
      core::iter::traits::iterator::Iterator::find_map
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/iter/traits/iterator.rs:2894:9
      <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/iter/adapters/filter_map.rs:64:9
      <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/alloc/src/vec/spec_from_iter_nested.rs:25:32
      <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter{{reify.shim}}
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/alloc/src/vec/spec_from_iter_nested.rs:19:5
      alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/alloc/src/vec/in_place_collect.rs:246:9
  11: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/alloc/src/vec/mod.rs:3438:9
      core::iter::traits::iterator::Iterator::collect
             at /rustc/4d051fb306e661654d088892e02e69b8c0c39d43/library/core/src/iter/traits/iterator.rs:2001:9
      mito2::region_write_ctx::RegionWriteCtx::write_memtable::{{closure}}
             at /greptimedb/greptimedb/src/mito2/src/region_write_ctx.rs:217:25
  12: mito2::region::opener::replay_memtable::{{closure}}
             at /greptimedb/greptimedb/src/mito2/src/region/opener.rs:653:43
  13: mito2::region::opener::RegionOpener::maybe_open::{{closure}}
             at /greptimedb/greptimedb/src/mito2/src/region/opener.rs:433:14
  14: mito2::region::opener::RegionOpener::open::{{closure}}
             at /greptimedb/greptimedb/src/mito2/src/region/opener.rs:294:14
  15: mito2::worker::handle_open::<impl mito2::worker::RegionWorkerLoop<S>>::handle_open_request::{{closure}}::{{closure}}
             at /greptimedb/greptimedb/src/mito2/src/worker/handle_open.rs:123:46

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory Bugs

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions