tikv / agatedb

A persistent key-value storage in rust.
Apache License 2.0
827 stars 75 forks source link

data race in thread sanitizer test #51

Closed skyzh closed 3 years ago

skyzh commented 3 years ago

https://github.com/tikv/agatedb/pull/49

WARNING: ThreadSanitizer: data race (pid=17810)
191
  Write of size 8 at 0x7b740000fa00 by thread T11:
192
    #0 free /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:708 (agatedb-6848b01562dc6aa7+0x39d38)
193
    #1 std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/alloc.rs:42 (agatedb-6848b01562dc6aa7+0x5814a5)
194
    #2 __rdl_dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/alloc.rs:364 (agatedb-6848b01562dc6aa7+0x4e6040)
195
    #3 alloc::alloc::dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:102 (agatedb-6848b01562dc6aa7+0x40c368)
196
    #4 <alloc::alloc::Global as core::alloc::AllocRef>::dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:237 (agatedb-6848b01562dc6aa7+0x40cd57)
197
    #5 alloc::alloc::box_free /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:332 (agatedb-6848b01562dc6aa7+0x40c629)
198
    #6 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fe5da)
199
    #7 core::mem::drop /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:882 (agatedb-6848b01562dc6aa7+0x3f999f)
200
    #8 <crossbeam_epoch::atomic::Owned<T> as core::ops::drop::Drop>::drop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/atomic.rs:760 (agatedb-6848b01562dc6aa7+0x405c1c)
201
    #9 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fe2bb)
202
    #10 core::mem::drop /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:882 (agatedb-6848b01562dc6aa7+0x3f97ff)
203
    #11 crossbeam_epoch::guard::Guard::defer_unchecked::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/guard.rs:195 (agatedb-6848b01562dc6aa7+0x40b72e)
204
    #12 crossbeam_epoch::deferred::Deferred::new::call /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/deferred.rs:46 (agatedb-6848b01562dc6aa7+0x4089a6)
205
    #13 crossbeam_epoch::deferred::Deferred::call /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/deferred.rs:77 (agatedb-6848b01562dc6aa7+0x408c95)
206
    #14 <crossbeam_epoch::internal::Bag as core::ops::drop::Drop>::drop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:201 (agatedb-6848b01562dc6aa7+0x3f6cef)
207
    #15 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fdf5b)
208
    #16 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fe00f)
209
    #17 core::mem::drop /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:882 (agatedb-6848b01562dc6aa7+0x3f9853)
210
    #18 crossbeam_epoch::internal::Global::collect /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:295 (agatedb-6848b01562dc6aa7+0x3f7410)
211
    #19 crossbeam_epoch::internal::Local::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:497 (agatedb-6848b01562dc6aa7+0x382b77)
212
    #20 crossbeam_epoch::collector::LocalHandle::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/collector.rs:75 (agatedb-6848b01562dc6aa7+0x3b3474)
213
    #21 crossbeam_epoch::default::pin::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381eb6)
214
    #22 crossbeam_epoch::default::with_handle::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:43 (agatedb-6848b01562dc6aa7+0x381b54)
215
    #23 std::thread::local::LocalKey<T>::try_with /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:272 (agatedb-6848b01562dc6aa7+0x398688)
216
    #24 crossbeam_epoch::default::with_handle /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:42 (agatedb-6848b01562dc6aa7+0x381a9c)
217
    #25 crossbeam_epoch::default::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381e46)
218
    #26 crossbeam_deque::Stealer<T>::steal_batch_and_pop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-deque-0.7.3/src/lib.rs:956 (agatedb-6848b01562dc6aa7+0x3a9b19)
219
    #27 yatp::queue::single_level::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue/single_level.rs:87 (agatedb-6848b01562dc6aa7+0x3cefd4)
220
    #28 yatp::queue::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue.rs:98 (agatedb-6848b01562dc6aa7+0x39bfee)
221
    #29 yatp::pool::spawn::Local<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/spawn.rs:255 (agatedb-6848b01562dc6aa7+0x3ce4e1)
222
    #30 yatp::pool::worker::WorkerThread<T,R>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:28 (agatedb-6848b01562dc6aa7+0x39b926)
223
    #31 yatp::pool::worker::WorkerThread<T,R>::run /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:44 (agatedb-6848b01562dc6aa7+0x39bbff)
224
    #32 yatp::pool::builder::LazyBuilder<T>::build::{{closure}} /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:91 (agatedb-6848b01562dc6aa7+0x3d44da)
225
    #33 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x398126)
226
    #34 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x3b49da)
227
    #35 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x3a049a)
228
    #36 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x3d1609)
229
    #37 __rust_try yatp.exejrn79-cgu.8:? (agatedb-6848b01562dc6aa7+0x3d584b)
230
    #38 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x3d14b7)
231
    #39 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x3a0b6a)
232
    #40 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x3b4723)
233
    #41 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x38342b)
234
    #42 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
235
    #43 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
236
    #44 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
237

238
  Previous atomic read of size 8 at 0x7b740000fa00 by thread T7:
239
    #0 __tsan_atomic64_load /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp:539 (agatedb-6848b01562dc6aa7+0x7cf1e)
240
    #1 core::sync::atomic::atomic_load /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:2354 (agatedb-6848b01562dc6aa7+0x710a8e)
241
    #2 core::sync::atomic::AtomicUsize::load /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:1486 (agatedb-6848b01562dc6aa7+0x3fca06)
242
    #3 crossbeam_epoch::atomic::Atomic<T>::load /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/atomic.rs:209 (agatedb-6848b01562dc6aa7+0x404886)
243
    #4 <crossbeam_epoch::sync::list::Iter<T,C> as core::iter::traits::iterator::Iterator>::next /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/sync/list.rs:240 (agatedb-6848b01562dc6aa7+0x40716e)
244
    #5 crossbeam_epoch::internal::Global::try_advance /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:316 (agatedb-6848b01562dc6aa7+0x3f760c)
245
    #6 crossbeam_epoch::internal::Global::collect /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:281 (agatedb-6848b01562dc6aa7+0x3f7265)
246
    #7 crossbeam_epoch::internal::Local::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:497 (agatedb-6848b01562dc6aa7+0x382b77)
247
    #8 crossbeam_epoch::collector::LocalHandle::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/collector.rs:75 (agatedb-6848b01562dc6aa7+0x3b3474)
248
    #9 crossbeam_epoch::default::pin::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381eb6)
249
    #10 crossbeam_epoch::default::with_handle::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:43 (agatedb-6848b01562dc6aa7+0x381b54)
250
    #11 std::thread::local::LocalKey<T>::try_with /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:272 (agatedb-6848b01562dc6aa7+0x398688)
251
    #12 crossbeam_epoch::default::with_handle /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:42 (agatedb-6848b01562dc6aa7+0x381a9c)
252
    #13 crossbeam_epoch::default::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381e46)
253
    #14 crossbeam_deque::Stealer<T>::steal_batch_and_pop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-deque-0.7.3/src/lib.rs:956 (agatedb-6848b01562dc6aa7+0x3a9b19)
254
    #15 yatp::queue::single_level::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue/single_level.rs:87 (agatedb-6848b01562dc6aa7+0x3cefd4)
255
    #16 yatp::queue::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue.rs:98 (agatedb-6848b01562dc6aa7+0x39bfee)
256
    #17 yatp::pool::spawn::Local<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/spawn.rs:255 (agatedb-6848b01562dc6aa7+0x3ce4e1)
257
    #18 yatp::pool::worker::WorkerThread<T,R>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:28 (agatedb-6848b01562dc6aa7+0x39b926)
258
    #19 yatp::pool::worker::WorkerThread<T,R>::run /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:44 (agatedb-6848b01562dc6aa7+0x39bbff)
259
    #20 yatp::pool::builder::LazyBuilder<T>::build::{{closure}} /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:91 (agatedb-6848b01562dc6aa7+0x3d44da)
260
    #21 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x398126)
261
    #22 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x3b49da)
262
    #23 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x3a049a)
263
    #24 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x3d1609)
264
    #25 __rust_try yatp.exejrn79-cgu.8:? (agatedb-6848b01562dc6aa7+0x3d584b)
265
    #26 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x3d14b7)
266
    #27 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x3a0b6a)
267
    #28 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x3b4723)
268
    #29 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x38342b)
269
    #30 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
270
    #31 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
271
    #32 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
272

273
  Thread T11 'agatedb-1' (tid=17822, running) created by thread T9 at:
274
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:966 (agatedb-6848b01562dc6aa7+0x3ac9b)
275
    #1 std::sys::unix::thread::Thread::new /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:50 (agatedb-6848b01562dc6aa7+0x51997b)
276
    #2 std::thread::Builder::spawn_unchecked /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:498 (agatedb-6848b01562dc6aa7+0x3b3eef)
277
    #3 std::thread::Builder::spawn /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:381 (agatedb-6848b01562dc6aa7+0x3b4a9a)
278
    #4 yatp::pool::builder::LazyBuilder<T>::build /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:89 (agatedb-6848b01562dc6aa7+0x3d4056)
279
    #5 yatp::pool::builder::Builder::build_with_queue_and_runner /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:260 (agatedb-6848b01562dc6aa7+0x3d4c31)
280
    #6 yatp::pool::builder::Builder::build_callback_pool /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:225 (agatedb-6848b01562dc6aa7+0x3d4b2c)
281
    #7 agatedb::db::Agate::new /home/runner/work/agatedb/agatedb/src/db.rs:69 (agatedb-6848b01562dc6aa7+0xae5d3)
282
    #8 agatedb::db::AgateOptions::open /home/runner/work/agatedb/agatedb/src/db.rs:216 (agatedb-6848b01562dc6aa7+0x13ef74)
283
    #9 agatedb::db::tests::with_agate_test /home/runner/work/agatedb/agatedb/src/db.rs:577 (agatedb-6848b01562dc6aa7+0xb8c10)
284
    #10 agatedb::db::tests::test_flush_memtable_bigvalue /home/runner/work/agatedb/agatedb/src/db.rs:660 (agatedb-6848b01562dc6aa7+0xf37f2)
285
    #11 agatedb::db::tests::test_flush_memtable_bigvalue::{{closure}} /home/runner/work/agatedb/agatedb/src/db.rs:659 (agatedb-6848b01562dc6aa7+0xba864)
286
    #12 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x18eb87)
287
    #13 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a43a1)
288
    #14 test::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:517 (agatedb-6848b01562dc6aa7+0x259afb)
289
    #15 test::run_test::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:508 (agatedb-6848b01562dc6aa7+0x2590d7)
290
    #16 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a4114)
291
    #17 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x2335bb)
292
    #18 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0ddd)
293
    #19 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203ba2)
294
    #20 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
295
    #21 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x2039b8)
296
    #22 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a31bd)
297
    #23 test::run_test_in_process /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:544 (agatedb-6848b01562dc6aa7+0x25a02d)
298
    #24 test::run_test::run_test_inner::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:450 (agatedb-6848b01562dc6aa7+0x25989f)
299
    #25 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x2a27b6)
300
    #26 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x22cc8a)
301
    #27 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0d6a)
302
    #28 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203af9)
303
    #29 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
304
    #30 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x203357)
305
    #31 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a324a)
306
    #32 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x22c9d3)
307
    #33 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a41eb)
308
    #34 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
309
    #35 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
310
    #36 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
311

312
  Thread T7 'agatedb-1' (tid=17818, running) created by thread T4 at:
313
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:966 (agatedb-6848b01562dc6aa7+0x3ac9b)
314
    #1 std::sys::unix::thread::Thread::new /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:50 (agatedb-6848b01562dc6aa7+0x51997b)
315
    #2 std::thread::Builder::spawn_unchecked /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:498 (agatedb-6848b01562dc6aa7+0x3b3eef)
316
    #3 std::thread::Builder::spawn /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:381 (agatedb-6848b01562dc6aa7+0x3b4a9a)
317
    #4 yatp::pool::builder::LazyBuilder<T>::build /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:89 (agatedb-6848b01562dc6aa7+0x3d4056)
318
    #5 yatp::pool::builder::Builder::build_with_queue_and_runner /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:260 (agatedb-6848b01562dc6aa7+0x3d4c31)
319
    #6 yatp::pool::builder::Builder::build_callback_pool /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:225 (agatedb-6848b01562dc6aa7+0x3d4b2c)
320
    #7 agatedb::db::Agate::new /home/runner/work/agatedb/agatedb/src/db.rs:69 (agatedb-6848b01562dc6aa7+0xae5d3)
321
    #8 agatedb::db::AgateOptions::open /home/runner/work/agatedb/agatedb/src/db.rs:216 (agatedb-6848b01562dc6aa7+0x13ef74)
322
    #9 agatedb::db::tests::with_agate_test /home/runner/work/agatedb/agatedb/src/db.rs:577 (agatedb-6848b01562dc6aa7+0xb9330)
323
    #10 agatedb::db::tests::test_flush_memtable /home/runner/work/agatedb/agatedb/src/db.rs:652 (agatedb-6848b01562dc6aa7+0xf37b2)
324
    #11 agatedb::db::tests::test_flush_memtable::{{closure}} /home/runner/work/agatedb/agatedb/src/db.rs:651 (agatedb-6848b01562dc6aa7+0xba724)
325
    #12 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x18e917)
326
    #13 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a43a1)
327
    #14 test::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:517 (agatedb-6848b01562dc6aa7+0x259afb)
328
    #15 test::run_test::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:508 (agatedb-6848b01562dc6aa7+0x2590d7)
329
    #16 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a4114)
330
    #17 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x2335bb)
331
    #18 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0ddd)
332
    #19 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203ba2)
333
    #20 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
334
    #21 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x2039b8)
335
    #22 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a31bd)
336
    #23 test::run_test_in_process /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:544 (agatedb-6848b01562dc6aa7+0x25a02d)
337
    #24 test::run_test::run_test_inner::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:450 (agatedb-6848b01562dc6aa7+0x25989f)
338
    #25 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x2a27b6)
339
    #26 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x22cc8a)
340
    #27 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0d6a)
341
    #28 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203af9)
342
    #29 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
343
    #30 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x203357)
344
    #31 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a324a)
345
    #32 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x22c9d3)
346
    #33 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a41eb)
347
    #34 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
348
    #35 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
349
    #36 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
350

351
SUMMARY: ThreadSanitizer: data race /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/alloc.rs:42 in std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::dealloc
352
==================
353
==================
354
WARNING: ThreadSanitizer: data race (pid=17810)
355
  Write of size 8 at 0x7b740000fa08 by thread T11:
356
    #0 free /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:708 (agatedb-6848b01562dc6aa7+0x39d38)
357
    #1 std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/alloc.rs:42 (agatedb-6848b01562dc6aa7+0x5814a5)
358
    #2 __rdl_dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/alloc.rs:364 (agatedb-6848b01562dc6aa7+0x4e6040)
359
    #3 alloc::alloc::dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:102 (agatedb-6848b01562dc6aa7+0x40c368)
360
    #4 <alloc::alloc::Global as core::alloc::AllocRef>::dealloc /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:237 (agatedb-6848b01562dc6aa7+0x40cd57)
361
    #5 alloc::alloc::box_free /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:332 (agatedb-6848b01562dc6aa7+0x40c629)
362
    #6 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fe5da)
363
    #7 core::mem::drop /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:882 (agatedb-6848b01562dc6aa7+0x3f999f)
364
    #8 <crossbeam_epoch::atomic::Owned<T> as core::ops::drop::Drop>::drop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/atomic.rs:760 (agatedb-6848b01562dc6aa7+0x405c1c)
365
    #9 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fe2bb)
366
    #10 core::mem::drop /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:882 (agatedb-6848b01562dc6aa7+0x3f97ff)
367
    #11 crossbeam_epoch::guard::Guard::defer_unchecked::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/guard.rs:195 (agatedb-6848b01562dc6aa7+0x40b72e)
368
    #12 crossbeam_epoch::deferred::Deferred::new::call /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/deferred.rs:46 (agatedb-6848b01562dc6aa7+0x4089a6)
369
    #13 crossbeam_epoch::deferred::Deferred::call /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/deferred.rs:77 (agatedb-6848b01562dc6aa7+0x408c95)
370
    #14 <crossbeam_epoch::internal::Bag as core::ops::drop::Drop>::drop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:201 (agatedb-6848b01562dc6aa7+0x3f6cef)
371
    #15 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fdf5b)
372
    #16 core::ptr::drop_in_place /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:175 (agatedb-6848b01562dc6aa7+0x3fe00f)
373
    #17 core::mem::drop /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:882 (agatedb-6848b01562dc6aa7+0x3f9853)
374
    #18 crossbeam_epoch::internal::Global::collect /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:295 (agatedb-6848b01562dc6aa7+0x3f7410)
375
    #19 crossbeam_epoch::internal::Local::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:497 (agatedb-6848b01562dc6aa7+0x382b77)
376
    #20 crossbeam_epoch::collector::LocalHandle::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/collector.rs:75 (agatedb-6848b01562dc6aa7+0x3b3474)
377
    #21 crossbeam_epoch::default::pin::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381eb6)
378
    #22 crossbeam_epoch::default::with_handle::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:43 (agatedb-6848b01562dc6aa7+0x381b54)
379
    #23 std::thread::local::LocalKey<T>::try_with /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:272 (agatedb-6848b01562dc6aa7+0x398688)
380
    #24 crossbeam_epoch::default::with_handle /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:42 (agatedb-6848b01562dc6aa7+0x381a9c)
381
    #25 crossbeam_epoch::default::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381e46)
382
    #26 crossbeam_deque::Stealer<T>::steal_batch_and_pop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-deque-0.7.3/src/lib.rs:956 (agatedb-6848b01562dc6aa7+0x3a9b19)
383
    #27 yatp::queue::single_level::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue/single_level.rs:87 (agatedb-6848b01562dc6aa7+0x3cefd4)
384
    #28 yatp::queue::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue.rs:98 (agatedb-6848b01562dc6aa7+0x39bfee)
385
    #29 yatp::pool::spawn::Local<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/spawn.rs:255 (agatedb-6848b01562dc6aa7+0x3ce4e1)
386
    #30 yatp::pool::worker::WorkerThread<T,R>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:28 (agatedb-6848b01562dc6aa7+0x39b926)
387
    #31 yatp::pool::worker::WorkerThread<T,R>::run /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:44 (agatedb-6848b01562dc6aa7+0x39bbff)
388
    #32 yatp::pool::builder::LazyBuilder<T>::build::{{closure}} /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:91 (agatedb-6848b01562dc6aa7+0x3d44da)
389
    #33 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x398126)
390
    #34 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x3b49da)
391
    #35 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x3a049a)
392
    #36 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x3d1609)
393
    #37 __rust_try yatp.exejrn79-cgu.8:? (agatedb-6848b01562dc6aa7+0x3d584b)
394
    #38 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x3d14b7)
395
    #39 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x3a0b6a)
396
    #40 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x3b4723)
397
    #41 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x38342b)
398
    #42 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
399
    #43 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
400
    #44 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
401

402
  Previous atomic read of size 8 at 0x7b740000fa08 by thread T7:
403
    #0 __tsan_atomic64_load /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp:539 (agatedb-6848b01562dc6aa7+0x7cf1e)
404
    #1 core::sync::atomic::atomic_load /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:2355 (agatedb-6848b01562dc6aa7+0x710aa9)
405
    #2 core::sync::atomic::AtomicUsize::load /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:1486 (agatedb-6848b01562dc6aa7+0x3fca06)
406
    #3 crossbeam_epoch::epoch::AtomicEpoch::load /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/epoch.rs:93 (agatedb-6848b01562dc6aa7+0x40b2d7)
407
    #4 crossbeam_epoch::internal::Global::try_advance /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:325 (agatedb-6848b01562dc6aa7+0x3f76c6)
408
    #5 crossbeam_epoch::internal::Global::collect /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:281 (agatedb-6848b01562dc6aa7+0x3f7265)
409
    #6 crossbeam_epoch::internal::Local::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/internal.rs:497 (agatedb-6848b01562dc6aa7+0x382b77)
410
    #7 crossbeam_epoch::collector::LocalHandle::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/collector.rs:75 (agatedb-6848b01562dc6aa7+0x3b3474)
411
    #8 crossbeam_epoch::default::pin::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381eb6)
412
    #9 crossbeam_epoch::default::with_handle::{{closure}} /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:43 (agatedb-6848b01562dc6aa7+0x381b54)
413
    #10 std::thread::local::LocalKey<T>::try_with /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:272 (agatedb-6848b01562dc6aa7+0x398688)
414
    #11 crossbeam_epoch::default::with_handle /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:42 (agatedb-6848b01562dc6aa7+0x381a9c)
415
    #12 crossbeam_epoch::default::pin /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.8.2/src/default.rs:23 (agatedb-6848b01562dc6aa7+0x381e46)
416
    #13 crossbeam_deque::Stealer<T>::steal_batch_and_pop /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-deque-0.7.3/src/lib.rs:956 (agatedb-6848b01562dc6aa7+0x3a9b19)
417
    #14 yatp::queue::single_level::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue/single_level.rs:87 (agatedb-6848b01562dc6aa7+0x3cefd4)
418
    #15 yatp::queue::LocalQueue<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/queue.rs:98 (agatedb-6848b01562dc6aa7+0x39bfee)
419
    #16 yatp::pool::spawn::Local<T>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/spawn.rs:255 (agatedb-6848b01562dc6aa7+0x3ce4e1)
420
    #17 yatp::pool::worker::WorkerThread<T,R>::pop /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:28 (agatedb-6848b01562dc6aa7+0x39b926)
421
    #18 yatp::pool::worker::WorkerThread<T,R>::run /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/worker.rs:44 (agatedb-6848b01562dc6aa7+0x39bbff)
422
    #19 yatp::pool::builder::LazyBuilder<T>::build::{{closure}} /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:91 (agatedb-6848b01562dc6aa7+0x3d44da)
423
    #20 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x398126)
424
    #21 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x3b49da)
425
    #22 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x3a049a)
426
    #23 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x3d1609)
427
    #24 __rust_try yatp.exejrn79-cgu.8:? (agatedb-6848b01562dc6aa7+0x3d584b)
428
    #25 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x3d14b7)
429
    #26 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x3a0b6a)
430
    #27 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x3b4723)
431
    #28 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x38342b)
432
    #29 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
433
    #30 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
434
    #31 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
435

436
  Thread T11 'agatedb-1' (tid=17822, running) created by thread T9 at:
437
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:966 (agatedb-6848b01562dc6aa7+0x3ac9b)
438
    #1 std::sys::unix::thread::Thread::new /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:50 (agatedb-6848b01562dc6aa7+0x51997b)
439
    #2 std::thread::Builder::spawn_unchecked /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:498 (agatedb-6848b01562dc6aa7+0x3b3eef)
440
    #3 std::thread::Builder::spawn /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:381 (agatedb-6848b01562dc6aa7+0x3b4a9a)
441
    #4 yatp::pool::builder::LazyBuilder<T>::build /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:89 (agatedb-6848b01562dc6aa7+0x3d4056)
442
    #5 yatp::pool::builder::Builder::build_with_queue_and_runner /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:260 (agatedb-6848b01562dc6aa7+0x3d4c31)
443
    #6 yatp::pool::builder::Builder::build_callback_pool /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:225 (agatedb-6848b01562dc6aa7+0x3d4b2c)
444
    #7 agatedb::db::Agate::new /home/runner/work/agatedb/agatedb/src/db.rs:69 (agatedb-6848b01562dc6aa7+0xae5d3)
445
    #8 agatedb::db::AgateOptions::open /home/runner/work/agatedb/agatedb/src/db.rs:216 (agatedb-6848b01562dc6aa7+0x13ef74)
446
    #9 agatedb::db::tests::with_agate_test /home/runner/work/agatedb/agatedb/src/db.rs:577 (agatedb-6848b01562dc6aa7+0xb8c10)
447
    #10 agatedb::db::tests::test_flush_memtable_bigvalue /home/runner/work/agatedb/agatedb/src/db.rs:660 (agatedb-6848b01562dc6aa7+0xf37f2)
448
    #11 agatedb::db::tests::test_flush_memtable_bigvalue::{{closure}} /home/runner/work/agatedb/agatedb/src/db.rs:659 (agatedb-6848b01562dc6aa7+0xba864)
449
    #12 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x18eb87)
450
    #13 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a43a1)
451
    #14 test::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:517 (agatedb-6848b01562dc6aa7+0x259afb)
452
    #15 test::run_test::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:508 (agatedb-6848b01562dc6aa7+0x2590d7)
453
    #16 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a4114)
454
    #17 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x2335bb)
455
    #18 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0ddd)
456
    #19 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203ba2)
457
    #20 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
458
    #21 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x2039b8)
459
    #22 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a31bd)
460
    #23 test::run_test_in_process /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:544 (agatedb-6848b01562dc6aa7+0x25a02d)
461
    #24 test::run_test::run_test_inner::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:450 (agatedb-6848b01562dc6aa7+0x25989f)
462
    #25 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x2a27b6)
463
    #26 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x22cc8a)
464
    #27 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0d6a)
465
    #28 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203af9)
466
    #29 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
467
    #30 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x203357)
468
    #31 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a324a)
469
    #32 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x22c9d3)
470
    #33 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a41eb)
471
    #34 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
472
    #35 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
473
    #36 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
474

475
  Thread T7 'agatedb-1' (tid=17818, running) created by thread T4 at:
476
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:966 (agatedb-6848b01562dc6aa7+0x3ac9b)
477
    #1 std::sys::unix::thread::Thread::new /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:50 (agatedb-6848b01562dc6aa7+0x51997b)
478
    #2 std::thread::Builder::spawn_unchecked /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:498 (agatedb-6848b01562dc6aa7+0x3b3eef)
479
    #3 std::thread::Builder::spawn /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:381 (agatedb-6848b01562dc6aa7+0x3b4a9a)
480
    #4 yatp::pool::builder::LazyBuilder<T>::build /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:89 (agatedb-6848b01562dc6aa7+0x3d4056)
481
    #5 yatp::pool::builder::Builder::build_with_queue_and_runner /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:260 (agatedb-6848b01562dc6aa7+0x3d4c31)
482
    #6 yatp::pool::builder::Builder::build_callback_pool /home/runner/.cargo/git/checkouts/yatp-e704b73c3ee279b6/6bbea16/src/pool/builder.rs:225 (agatedb-6848b01562dc6aa7+0x3d4b2c)
483
    #7 agatedb::db::Agate::new /home/runner/work/agatedb/agatedb/src/db.rs:69 (agatedb-6848b01562dc6aa7+0xae5d3)
484
    #8 agatedb::db::AgateOptions::open /home/runner/work/agatedb/agatedb/src/db.rs:216 (agatedb-6848b01562dc6aa7+0x13ef74)
485
    #9 agatedb::db::tests::with_agate_test /home/runner/work/agatedb/agatedb/src/db.rs:577 (agatedb-6848b01562dc6aa7+0xb9330)
486
    #10 agatedb::db::tests::test_flush_memtable /home/runner/work/agatedb/agatedb/src/db.rs:652 (agatedb-6848b01562dc6aa7+0xf37b2)
487
    #11 agatedb::db::tests::test_flush_memtable::{{closure}} /home/runner/work/agatedb/agatedb/src/db.rs:651 (agatedb-6848b01562dc6aa7+0xba724)
488
    #12 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x18e917)
489
    #13 core::ops::function::FnOnce::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a43a1)
490
    #14 test::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:517 (agatedb-6848b01562dc6aa7+0x259afb)
491
    #15 test::run_test::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:508 (agatedb-6848b01562dc6aa7+0x2590d7)
492
    #16 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a4114)
493
    #17 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x2335bb)
494
    #18 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0ddd)
495
    #19 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203ba2)
496
    #20 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
497
    #21 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x2039b8)
498
    #22 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a31bd)
499
    #23 test::run_test_in_process /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:544 (agatedb-6848b01562dc6aa7+0x25a02d)
500
    #24 test::run_test::run_test_inner::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/test/src/lib.rs:450 (agatedb-6848b01562dc6aa7+0x25989f)
501
    #25 std::sys_common::backtrace::__rust_begin_short_backtrace /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125 (agatedb-6848b01562dc6aa7+0x2a27b6)
502
    #26 std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:474 (agatedb-6848b01562dc6aa7+0x22cc8a)
503
    #27 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:322 (agatedb-6848b01562dc6aa7+0x2a0d6a)
504
    #28 std::panicking::try::do_call /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:381 (agatedb-6848b01562dc6aa7+0x203af9)
505
    #29 __rust_try test.cvxxcx5e-cgu.1:? (agatedb-6848b01562dc6aa7+0x20deab)
506
    #30 std::panicking::try /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:345 (agatedb-6848b01562dc6aa7+0x203357)
507
    #31 std::panic::catch_unwind /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:396 (agatedb-6848b01562dc6aa7+0x2a324a)
508
    #32 std::thread::Builder::spawn_unchecked::{{closure}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:473 (agatedb-6848b01562dc6aa7+0x22c9d3)
509
    #33 core::ops::function::FnOnce::call_once{{vtable-shim}} /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227 (agatedb-6848b01562dc6aa7+0x2a41eb)
510
    #34 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557b0b)
511
    #35 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1307 (agatedb-6848b01562dc6aa7+0x557c06)
512
    #36 std::sys::unix::thread::Thread::new::thread_start /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:71 (agatedb-6848b01562dc6aa7+0x519e03)
513

514
SUMMARY: ThreadSanitizer: data race /usr/share/rust/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/alloc.rs:42 in std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::dealloc
515
==================
skyzh commented 3 years ago

Seems to be an issue with yatp and crossbeam

sticnarf commented 3 years ago

Seems to be an issue with yatp and crossbeam

Looks like this issue: https://github.com/crossbeam-rs/crossbeam/issues/589.

The author said the race is actually safe.

skyzh commented 3 years ago

Seems to be an issue with yatp and crossbeam

Looks like this issue: crossbeam-rs/crossbeam#589.

The author said the race is actually safe.

Thanks for pointing that out! Then we could safely ignore this issue.