Skip to content

Merge panic on Quickwit 0.6.5-dev-nightly (de8eb9c 2023-11-13T05:18:24Z) #4130

@fmassot

Description

@fmassot

Reported by a user.

When he starts indexing with a fresh new index, it always ends with a panic during the merge.

There is no panic if he changes the record: position to record: basic.

Logs

/data/quickwit-v0.6.4# thread 'merge_thread_0' panicked at 'range end index 1 out of range for slice of length 0', /cargo/git/checkouts/tantivy-f70b7ea03dadae9a/927b443/src/positions/reader.rs:137:22
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Rayon: detected unexpected panic; aborting

[1]+  Aborted                 (core dumped) ./quickwit run 2>&1 > quickwit.log
/data/quickwit-v0.6.4#
/data/quickwit-v0.6.4#
/data/quickwit-v0.6.4# RUST_BACKTRACE=1  ./quickwit run 2>&1 > quickwit.log&
[1] 541376
/data/quickwit-v0.6.4#
/data/quickwit-v0.6.4# thread 'merge_thread_0' panicked at 'range end index 1 out of range for slice of length 0', /cargo/git/checkouts/tantivy-f70b7ea03dadae9a/927b443/src/positions/reader.rs:137:22
stack backtrace:
   0: rust_begin_unwind
             at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/panicking.rs:67:14
   2: core::slice::index::slice_end_index_len_fail_rt
             at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/slice/index.rs:76:5
   3: core::slice::index::slice_end_index_len_fail
             at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/slice/index.rs:68:9
   4: tantivy::positions::reader::PositionReader::read
   5: <tantivy::postings::segment_postings::SegmentPostings as tantivy::postings::postings::Postings>::positions_with_offset
   6: tantivy::indexer::merger::IndexMerger::write
   7: tantivy::indexer::segment_updater::merge
   8: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
   9: rayon_core::registry::Registry::catch_unwind
  10: <rayon_core::job::HeapJob<BODY> as rayon_core::job::Job>::execute
  11: rayon_core::registry::WorkerThread::wait_until_cold
  12: rayon_core::registry::ThreadBuilder::run
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Rayon: detected unexpected panic; aborting

[1]+  Aborted                 (core dumped) RUST_BACKTRACE=1 ./quickwit run 2>&1 > quickwit.log
/data/quickwit-v0.6.4#
/data/quickwit-v0.6.4# RUST_BACKTRACE=full  ./quickwit run 2>&1 > quickwit.log&
[1] 541642
/data/quickwit-v0.6.4# thread 'merge_thread_0' panicked at 'range end index 1 out of range for slice of length 0', /cargo/git/checkouts/tantivy-f70b7ea03dadae9a/927b443/src/positions/reader.rs:137:22
stack backtrace:
   0:     0x561d8e2be671 - std::backtrace_rs::backtrace::libunwind::trace::h66dc1c6acf794faa
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x561d8e2be671 - std::backtrace_rs::backtrace::trace_unsynchronized::ha80d20099a67f790
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x561d8e2be671 - std::sys_common::backtrace::_print_fmt::h7b959d43f35f16d4
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x561d8e2be671 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hdaa196410d9ee0b9
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x561d8e2f1fbf - core::fmt::rt::Argument::fmt::h0ddfbbe8be3f80d0
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/fmt/rt.rs:138:9
   5:     0x561d8e2f1fbf - core::fmt::write::h66b3c629f3d623e4
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/fmt/mod.rs:1094:21
   6:     0x561d8e2b9cb7 - std::io::Write::write_fmt::hb6d80fba4115e0c2
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/io/mod.rs:1714:15
   7:     0x561d8e2be485 - std::sys_common::backtrace::_print::h1a49cfb0cf3cce17
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x561d8e2be485 - std::sys_common::backtrace::print::hca95c2d0055e42a2
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x561d8e2bfaf3 - std::panicking::default_hook::{{closure}}::hc03c01c56bca600c
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:269:22
  10:     0x561d8e2bf884 - std::panicking::default_hook::hb2cb5315b6634f1c
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:288:9
  11:     0x561d8e2c0079 - std::panicking::rust_panic_with_hook::h75cd912a39a34e8a
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:705:13
  12:     0x561d8e2bff77 - std::panicking::begin_panic_handler::{{closure}}::h1498b46f7849e167
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:597:13
  13:     0x561d8e2bead6 - std::sys_common::backtrace::__rust_end_short_backtrace::hd36a39b27b98086b
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/sys_common/backtrace.rs:151:18
  14:     0x561d8e2bfcc2 - rust_begin_unwind
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:593:5
  15:     0x561d8a585d63 - core::panicking::panic_fmt::h98ef273141454c23
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/panicking.rs:67:14
  16:     0x561d8a586302 - core::slice::index::slice_end_index_len_fail_rt::h35a42e1fc28e1612
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/slice/index.rs:76:5
  17:     0x561d8a586302 - core::slice::index::slice_end_index_len_fail::h26b3aa12eff5f17d
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/slice/index.rs:68:9
  18:     0x561d8db3cc7e - tantivy::positions::reader::PositionReader::read::hb3a283892fcd4ced
  19:     0x561d8da97ef1 - <tantivy::postings::segment_postings::SegmentPostings as tantivy::postings::postings::Postings>::positions_with_offset::h4f0620869581ed76
  20:     0x561d8da7fda6 - tantivy::indexer::merger::IndexMerger::write::he6b82cd4e48fbe56
  21:     0x561d8db883d1 - tantivy::indexer::segment_updater::merge::hc947b28d0f2c2d00
  22:     0x561d8db4406e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h77012b7fd7d19c40
  23:     0x561d8db2a620 - rayon_core::registry::Registry::catch_unwind::h04450353ff9fafbe
  24:     0x561d8db515ee - <rayon_core::job::HeapJob<BODY> as rayon_core::job::Job>::execute::h3755a2036915a2e5
  25:     0x561d8a551698 - rayon_core::registry::WorkerThread::wait_until_cold::he5bcdf96ef0f6afd
  26:     0x561d8dc9bb62 - rayon_core::registry::ThreadBuilder::run::hc790090fe2f57fd6
  27:     0x561d8dca0a3a - std::sys_common::backtrace::__rust_begin_short_backtrace::h16af44172216198c
  28:     0x561d8dca031f - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2ba4dc0aebc2288e
  29:     0x561d8e2c61f5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hde6e666388faa495
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/alloc/src/boxed.rs:1993:9
  30:     0x561d8e2c61f5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h9b6389e489a4842f
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/alloc/src/boxed.rs:1993:9
  31:     0x561d8e2c61f5 - std::sys::unix::thread::Thread::new::thread_start::hcab660740b858b1f
                               at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/sys/unix/thread.rs:108:17
  32:     0x7ff986d6cac3 - <unknown>
  33:     0x7ff986dfea40 - <unknown>
  34:                0x0 - <unknown>
Rayon: detected unexpected panic; aborting
version: 0.6

index_id: vpc-logs

doc_mapping:
  mode: dynamic
  dynamic_mapping:
    indexed: true
    stored: true
    tokenizer: default
    record: position
    expand_dots: true
    fast: true
  field_mappings:
    - name: timestamp
      type: datetime
      input_formats:
        - unix_timestamp
      output_format: unix_timestamp_micros
      fast: true
    - name: raw_line
      type: text
      tokenizer: raw
      fast: true
    - name: log_msg.msg_timestamp
      type: datetime
      input_formats:
        - "%Y-%m-%dT%H:%M:%S.%f%z"
        - "%Y-%m-%dT%H:%M:%S%z"
      output_format: rfc3339
      fast: true

  tag_fields: []
  timestamp_field: timestamp

search_settings:
  default_search_fields: []

retention:
  period: 30 days
  schedule: daily

indexing_settings:
  commit_timeout_secs: 10
  split_num_docs_target: 10000000

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions