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

test/format assertion mod->mod_replace.addr != NULL

    • Type: Icon: Build Failure Build Failure
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • 5
    • Storage - Ra 2020-04-20

      While running backup testing, I hit this assertion:

      [1584986425:112732][30737:0x7f6098ff9700], t, file:wt.wt, WT_CURSOR.search: __evict_page_dirty_update, 405: mod->mod_replace.addr != NULL
      

      Here's its stack:

      (gdb) bt
      #0  0x00007f60e3f235f7 in raise () from /lib64/libc.so.6
      #1  0x00007f60e3f24ce8 in abort () from /lib64/libc.so.6
      #2  0x000000000049accb in __wt_abort (session=0x20d42d0) at ../src/os_common/os_abort.c:30
      #3  0x0000000000471903 in __evict_page_dirty_update (session=0x20d42d0, ref=0x212d590, evict_flags=4) at ../src/evict/evict_page.c:405
      #4  0x0000000000470b4b in __wt_evict (session=0x20d42d0, ref=0x212d590, previous_state=3 '\003', flags=4) at ../src/evict/evict_page.c:219
      #5  0x000000000047062e in __wt_page_release_evict (session=0x20d42d0, ref=0x212d590, flags=0) at ../src/evict/evict_page.c:81
      #6  0x000000000054230b in __wt_page_release (session=0x20d42d0, ref=0x212d590, flags=0) at ../src/include/btree.i:1480
      #7  0x0000000000542a9c in __cursor_reset (cbt=0x7f607c0514c0) at ../src/include/cursor.i:222
      #8  0x0000000000543fed in __wt_btcur_search (cbt=0x7f607c0514c0) at ../src/btree/bt_cursor.c:618
      #9  0x00000000004500ee in __curfile_search (cursor=0x7f607c0514c0) at ../src/cursor/cur_file.c:200
      #10 0x0000000000407e2e in read_op (cursor=0x7f607c0514c0, op=SEARCH, exactp=0x0) at ../../../test/format/format.i:52
      #11 0x000000000040ac6e in read_row_worker (cursor=0x7f607c0514c0, keyno=28862, key=0x2687ab0, value=0x2687ae0, sn=false)
          at ../../../test/format/ops.c:1078
      #12 0x000000000040af03 in read_row (tinfo=0x2687a20, cursor=0x7f607c0514c0) at ../../../test/format/ops.c:1128
      #13 0x0000000000409f8e in ops (arg=0x2687a20) at ../../../test/format/ops.c:781
      #14 0x00007f60e48dddc5 in start_thread () from /lib64/libpthread.so.0
      

      Here's the mod structure. Note that mod->mod_replace is mod->u1.r.replace:

      (gdb) p *mod
      $1 = {first_dirty_txn = 1, last_evict_pass_gen = 180, last_eviction_id = 101094, last_eviction_timestamp = 0, last_oldest_id = 101094, 
        obsolete_check_txn = 0, obsolete_check_timestamp = 0, rec_max_txn = 101685, rec_max_timestamp = 0, last_stable_timestamp = 0, 
        update_txn = 101685, bytes_dirty = 0, u1 = {r = {replace = {oldest_start_ts = 18446744073709551615, oldest_start_txn = 18446744073709551605, 
              start_durable_ts = 0, newest_stop_ts = 0, newest_stop_txn = 0, stop_durable_ts = 0, addr = 0x0, size = 0 '\000', type = 3 '\003', 
              reuse = 0 '\000'}, disk_image = 0x0}, m = {multi = 0xffffffffffffffff, multi_entries = 4294967285}}, u2 = {intl = {
            root_split = 0x7f60a4274780}, column_leaf = {append = 0x7f60a4274780, update = 0x0, split_recno = 0}, row_leaf = {insert = 0x7f60a4274780, 
            update = 0x0}}, ovfl_track = 0x0, page_lock = {lock = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, 
              __spins = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, __align = 0}, name = 0x61548a "btree page", 
          stat_count_off = -1, stat_app_usecs_off = -1, stat_int_usecs_off = -1, stat_session_usecs_off = 0, initialized = 1 '\001'}, page_state = 0, 
        rec_result = 3 '\003', restore_state = 2 '\002'}
      

            Assignee:
            chenhao.qu@mongodb.com Chenhao Qu
            Reporter:
            sue.loverso@mongodb.com Susan LoVerso
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: