Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-9609

cppsuite-search-near-01-stress fails assert in read operation

    • 5
    • Storage Engines - 2022-08-22

      FAILED: virtual void search_near_01::read_operation(test_harness::thread_worker*)/300: num_threads * expected_entries + (2 * num_threads) >= entries_stat - prev_entries_stat

      Patch link

      Some details from gdb:

      workload_config = <optimized out>
      read_config = <optimized out>
      workers = std::vector of length 0, capacity 16
      z_key_searches = \{<std::__atomic_base<long>> = {static _S_alignment = 8, _M_i = 0}, static is_always_lock_free = true}
      entries_stat = 1043433
      expected_entries = <optimized out>
      prefix_stat = 8480
      prev_entries_stat = 1042412
      prev_prefix_stat = 8470
      num_threads = <optimized out>
      
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #1  0x00007f99699fd859 in __GI_abort () at abort.c:79
      #2  0x00007f996a30994e in __wt_abort (session=session@entry=0x0) at ../src/os_common/os_abort.c:30
      #3  0x000055fe2538c902 in testutil_die (e=0, fmt=<optimized out>) at ../test/utility/misc.c:74
      #4  0x000055fe25384ab7 in search_near_01::read_operation (this=0x7fff2fce3200, tc=0x55fe27284fc0) at ../test/cppsuite/tests/search_near_01.cpp:300
      #5  0x000055fe253aa608 in std::__invoke_impl<void, void (test_harness::database_operation::*&)(test_harness::thread_worker*), test_harness::database_operation*&, test_harness::thread_worker*>
          (__t=<optimized out>, __f=<optimized out>) at /usr/include/c++/9/bits/invoke.h:89
      #6  std::__invoke<void (test_harness::database_operation::*&)(test_harness::thread_worker*), test_harness::database_operation*&, test_harness::thread_worker*> (__fn=<optimized out>)
          at /usr/include/c++/9/bits/invoke.h:95
      #7  std::_Bind<void (test_harness::database_operation::*(test_harness::database_operation*, std::_Placeholder<1>))(test_harness::thread_worker*)>::__call<void, test_harness::thread_worker*&&, 0ul, 1ul>(std::tuple<test_harness::thread_worker*&&>&&, std::_Index_tuple<0ul, 1ul>) (__args=..., this=<optimized out>) at /usr/include/c++/9/functional:400
      #8  std::_Bind<void (test_harness::database_operation::*(test_harness::database_operation*, std::_Placeholder<1>))(test_harness::thread_worker*)>::operator()<test_harness::thread_worker*, void>(test_harness::thread_worker*&&) (this=<optimized out>) at /usr/include/c++/9/functional:484
      #9  std::_Function_handler<void (test_harness::thread_worker*), std::_Bind<void (test_harness::database_operation::*(test_harness::database_operation*, std::_Placeholder<1>))(test_harness::thread_worker*)> >::_M_invoke(std::_Any_data const&, test_harness::thread_worker*&&) (__functor=..., __args#0=<optimized out>) at /usr/include/c++/9/bits/std_function.h:300
      #10 0x000055fe253aa19c in std::function<void (test_harness::thread_worker*)>::operator()(test_harness::thread_worker*) const (__args#0=<optimized out>, this=<optimized out>)
          at /usr/include/c++/9/bits/std_function.h:683
      #11 std::__invoke_impl<void, std::function<void (test_harness::thread_worker*)>, test_harness::thread_worker*>(std::__invoke_other, std::function<void (test_harness::thread_worker*)>&&, test_harness::thread_worker*&&) (__f=...) at /usr/include/c++/9/bits/invoke.h:60
      #12 std::__invoke<std::function<void (test_harness::thread_worker*)>, test_harness::thread_worker*>(std::function<void (test_harness::thread_worker*)>&&, test_harness::thread_worker*&&) (
          __fn=...) at /usr/include/c++/9/bits/invoke.h:95
      #13 std::thread::_Invoker<std::tuple<std::function<void (test_harness::thread_worker*)>, test_harness::thread_worker*> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (
          this=<optimized out>) at /usr/include/c++/9/thread:244
      #14 std::thread::_Invoker<std::tuple<std::function<void (test_harness::thread_worker*)>, test_harness::thread_worker*> >::operator()() (this=<optimized out>) at /usr/include/c++/9/thread:251
      #15 std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::function<void (test_harness::thread_worker*)>, test_harness::thread_worker*> > >::_M_run() (this=<optimized out>)
          at /usr/include/c++/9/thread:195
      #16 0x00007f9969e0cd84 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
      #17 0x00007f9969f20609 in start_thread (arg=<optimized out>) at pthread_create.c:477
      #18 0x00007f9969afa293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

       

            Assignee:
            mick.graham@mongodb.com Mick Graham
            Reporter:
            mick.graham@mongodb.com Mick Graham
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: