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

DB failures when page_size larger than 4096 #8

Open
ambaxter opened this issue Oct 2, 2024 · 0 comments
Open

DB failures when page_size larger than 4096 #8

ambaxter opened this issue Oct 2, 2024 · 0 comments
Assignees
Labels
bug Something isn't working

Comments

@ambaxter
Copy link
Owner

ambaxter commented Oct 2, 2024

thread 'cursor::tests::test_cursor_first_empty_pages' panicked at src/common/page/freelist.rs:326:9:
Page 5 already freed
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: bbolt_rs::common::page::freelist::Freelist::free
             at ./src/common/page/freelist.rs:326:9
   3: <bbolt_rs::db::DbShared as bbolt_rs::db::DbIApi>::free_page
             at ./src/db.rs:1205:5
   4: <bbolt_rs::common::lock::LockGuard<bbolt_rs::db::DbShared> as bbolt_rs::db::DbIApi>::free_page
             at ./src/db.rs:1063:30
   5: <bbolt_rs::tx::TxCell as bbolt_rs::tx::TxRwIApi>::freelist_free_page
             at ./src/tx.rs:1062:5
   6: bbolt_rs::node::NodeRwCell::free
             at ./src/node.rs:759:5
   7: bbolt_rs::node::NodeRwCell::rebalance
             at ./src/node.rs:628:7
   8: <bbolt_rs::bucket::BucketCell as bbolt_rs::bucket::BucketRwIApi>::rebalance
             at ./src/bucket.rs:1808:7
   9: <bbolt_rs::bucket::BucketCell as bbolt_rs::bucket::BucketRwIApi>::rebalance
             at ./src/bucket.rs:1811:7
  10: <bbolt_rs::tx::TxRwImpl as bbolt_rs::tx::TxRwApi>::commit
             at ./src/tx.rs:1635:5
  11: <bbolt_rs::db::Bolt as bbolt_rs::db::DbRwAPI>::update
             at ./src/db.rs:2068:9
  12: bbolt_rs::cursor::tests::test_cursor_first_empty_pages
             at ./src/cursor.rs:1147:5
  13: bbolt_rs::cursor::tests::test_cursor_first_empty_pages::{{closure}}
             at ./src/cursor.rs:1138:41
  14: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
  15: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
page 4: reachable freed
page 5: reachable freed
thread 'cursor::tests::test_cursor_first_empty_pages' panicked at src/test_support.rs:95:9:
explicit panic
stack backtrace:
   0:        0x10515957c - std::backtrace_rs::backtrace::libunwind::trace::hbebc8679d47bdc2c
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
   1:        0x10515957c - std::backtrace_rs::backtrace::trace_unsynchronized::h3a2e9637943241aa
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:        0x10515957c - std::sys::backtrace::_print_fmt::he430849680584674
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/sys/backtrace.rs:65:5
   3:        0x10515957c - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h243268f17d714c7f
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/sys/backtrace.rs:40:26
   4:        0x1051740dc - core::fmt::rt::Argument::fmt::h0d339881c25f3c31
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/fmt/rt.rs:173:76
   5:        0x1051740dc - core::fmt::write::hb3cfb8a30e72d7ff
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/fmt/mod.rs:1182:21
   6:        0x105156c0c - std::io::Write::write_fmt::hb29a27983b9257a6
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/io/mod.rs:1827:15
   7:        0x10515aaa4 - std::sys::backtrace::BacktraceLock::print::he14461129ccbfef5
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/sys/backtrace.rs:43:9
   8:        0x10515aaa4 - std::panicking::default_hook::{{closure}}::h14c7718ccf39d316
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:269:22
   9:        0x10515a610 - std::panicking::default_hook::hc62e60da3be2f352
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:293:9
  10:        0x1050cc428 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h908689fc227d29b3
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/alloc/src/boxed.rs:2084:9
  11:        0x1050cc428 - test::test_main::{{closure}}::hc84dfdc701b0c9fd
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/test/src/lib.rs:136:21
  12:        0x10515b5a8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7134af08cc28e4ff
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/alloc/src/boxed.rs:2084:9
  13:        0x10515b5a8 - std::panicking::rust_panic_with_hook::h09e8a656f11e82b2
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:808:13
  14:        0x10515aeb8 - std::panicking::begin_panic_handler::{{closure}}::h1230eb3cc91b241c
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:674:13
  15:        0x105159a08 - std::sys::backtrace::__rust_end_short_backtrace::hc3491307aceda2c2
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/sys/backtrace.rs:168:18
  16:        0x10515ab80 - rust_begin_unwind
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
  17:        0x105187fe0 - core::panicking::panic_fmt::ha4b80a05b9fff47a
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
  18:        0x10518810c - core::panicking::panic_display::h13e0259b7ed41c2f
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:264:5
  19:        0x10518810c - core::panicking::panic_explicit::h7107070889cf3407
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:237:5
  20:        0x10517a534 - bbolt_rs::test_support::TestDb::must_check::panic_cold_explicit::h9743efd48dd7bdea
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panic.rs:89:13
  21:        0x104f9ed30 - bbolt_rs::test_support::TestDb::must_check::h46a3aa2689cecea0
                               at /Users/abaxter/Projects/bbolt-rs/src/test_support.rs:95:9
  22:        0x104fbb5f8 - <bbolt_rs::test_support::TestDb as core::ops::drop::Drop>::drop::hd3b7b2763de7baa1
                               at /Users/abaxter/Projects/bbolt-rs/src/test_support.rs:141:5
  23:        0x104fb25a8 - core::ptr::drop_in_place<bbolt_rs::test_support::TestDb>::h61311377010d3f6a
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ptr/mod.rs:542:1
  24:        0x104f9b5d0 - bbolt_rs::cursor::tests::test_cursor_first_empty_pages::h6cdae4db6c785381
                               at /Users/abaxter/Projects/bbolt-rs/src/cursor.rs:1162:3
  25:        0x1050216b8 - bbolt_rs::cursor::tests::test_cursor_first_empty_pages::{{closure}}::h7b2f5eac0cd465e5
                               at /Users/abaxter/Projects/bbolt-rs/src/cursor.rs:1138:41
  26:        0x104fada48 - core::ops::function::FnOnce::call_once::hdb8beece04bbd9e7
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
  27:        0x1050cff3c - core::ops::function::FnOnce::call_once::h0ba6e3d0adcb0fb8
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
  28:        0x1050cff3c - test::__rust_begin_short_backtrace::hc730144174a2f2b8
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/test/src/lib.rs:624:18
  29:        0x1050cf890 - test::run_test_in_process::{{closure}}::h9e544e0587f41be2
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/test/src/lib.rs:647:60
  30:        0x1050cf890 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8389036b3da9abb4
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panic/unwind_safe.rs:272:9
  31:        0x1050cf890 - std::panicking::try::do_call::h6c15d214f8b0efc9
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:557:40
  32:        0x1050cf890 - std::panicking::try::h4dec6d151c5d7c52
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:521:19
  33:        0x1050cf890 - std::panic::catch_unwind::h08246350d14b78e5
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panic.rs:350:14
  34:        0x1050cf890 - test::run_test_in_process::h5176f0d7330017af
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/test/src/lib.rs:647:27
  35:        0x1050cf890 - test::run_test::{{closure}}::h3dade545f948edf5
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/test/src/lib.rs:568:43
  36:        0x1050a19bc - test::run_test::{{closure}}::h331e167c3eb94f21
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/test/src/lib.rs:598:41
  37:        0x1050a19bc - std::sys::backtrace::__rust_begin_short_backtrace::h927c17d76a6dfbc6
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/sys/backtrace.rs:152:18
  38:        0x1050a4b20 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h9a08c487421e7042
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/thread/mod.rs:538:17
  39:        0x1050a4b20 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hf6a2344f0bd24956
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panic/unwind_safe.rs:272:9
  40:        0x1050a4b20 - std::panicking::try::do_call::hfdb1a93845faf3ef
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:557:40
  41:        0x1050a4b20 - std::panicking::try::h4b35ce5ad8a162fd
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:521:19
  42:        0x1050a4b20 - std::panic::catch_unwind::h3bb4d3ee2986e761
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panic.rs:350:14
  43:        0x1050a4b20 - std::thread::Builder::spawn_unchecked_::{{closure}}::h5e36dd32c0d26255
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/thread/mod.rs:537:30
  44:        0x1050a4b20 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4b1e8564c6e52dc1
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
  45:        0x10515ee58 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h01276ebbe54a8110
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/alloc/src/boxed.rs:2070:9
  46:        0x10515ee58 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::habad1faa89d23086
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/alloc/src/boxed.rs:2070:9
  47:        0x10515ee58 - std::sys::pal::unix::thread::Thread::new::thread_start::h1bd1b9c95010bf71
                               at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/sys/pal/unix/thread.rs:108:17
  48:        0x1999eb2e4 - __pthread_deallocate
thread 'cursor::tests::test_cursor_first_empty_pages' panicked at library/core/src/panicking.rs:229:5:
@ambaxter ambaxter added the bug Something isn't working label Oct 2, 2024
@ambaxter ambaxter self-assigned this Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant