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

Core dump is generated when running test_random_abort or test_random_direcio run on durable history branch

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: WT3.2.2
    • Component/s: None
    • Labels:
      None
    • Sprint:
      Storage Engines 2020-02-24

      Description

      While running the test_random_abort or test_random_directio tests on the durable history branch is generating a core dump with the following call stack.

      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
      #1  0x00007f1e200b7801 in __GI_abort () at abort.c:79
      #2  0x000056073784d105 in __wt_abort (session=0x7f1e20c7aeb0) at ../src/os_common/os_abort.c:30
      #3  0x0000560737818d2f in __wt_evict_file_exclusive_on (session=0x7f1e20c7aeb0) at ../src/evict/evict_lru.c:843
      #4  0x00005607377ec0b5 in __wt_conn_dhandle_open (session=0x7f1e20c7aeb0, cfg=0x7f1e1e17b9a0, flags=0) at ../src/conn/conn_dhandle.c:433
      #5  0x0000560737892adb in __wt_session_get_dhandle (session=0x7f1e20c7aeb0, uri=0x5607379ea686 "file:WiredTigerHS.wt", checkpoint=0x0, cfg=0x7f1e1e17b9a0, flags=0)
          at ../src/session/session_dhandle.c:504
      #6  0x0000560737892a84 in __wt_session_get_dhandle (session=0x7f1e20c7aeb0, uri=0x5607379ea686 "file:WiredTigerHS.wt", checkpoint=0x0, cfg=0x7f1e1e17b9a0, flags=0)
          at ../src/session/session_dhandle.c:497
      #7  0x0000560737892112 in __wt_session_get_btree_ckpt (session=0x7f1e20c7aeb0, uri=0x5607379ea686 "file:WiredTigerHS.wt", cfg=0x7f1e1e17b9a0, flags=0) at ../src/session/session_dhandle.c:320
      #8  0x0000560737803beb in __wt_curfile_open (session=0x7f1e20c7aeb0, uri=0x5607379ea686 "file:WiredTigerHS.wt", owner=0x0, cfg=0x7f1e1e17b9a0, cursorp=0x7f1e1e17b990) at ../src/cursor/cur_file.c:806
      #9  0x000056073787b903 in __session_open_cursor_int (session=0x7f1e20c7aeb0, uri=0x5607379ea686 "file:WiredTigerHS.wt", owner=0x0, other=0x0, cfg=0x7f1e1e17b9a0, cursorp=0x7f1e1e17b990)
          at ../src/session/session_api.c:464
      #10 0x000056073787bcc7 in __wt_open_cursor (session=0x7f1e20c7aeb0, uri=0x5607379ea686 "file:WiredTigerHS.wt", owner=0x0, cfg=0x7f1e1e17b9a0, cursorp=0x7f1e1e17b990) at ../src/session/session_api.c:528
      #11 0x000056073782431a in __wt_hs_cursor_open (session=0x7f1e20c7aeb0) at ../src/history/hs.c:220
      #12 0x00005607378243c4 in __wt_hs_cursor (session=0x7f1e20c7aeb0, session_flags=0x7f1e1e17ba14) at ../src/history/hs.c:248
      #13 0x000056073786b543 in __rec_hs_wrapup (session=0x7f1e20c7aeb0, r=0x7f1e143eb2e0) at ../src/reconcile/rec_write.c:2290
      #14 0x000056073786ad69 in __rec_write_wrapup (session=0x7f1e20c7aeb0, r=0x7f1e143eb2e0, page=0x56073a607350) at ../src/reconcile/rec_write.c:2130
      #15 0x00005607378661e8 in __reconcile (session=0x7f1e20c7aeb0, ref=0x56073a027be0, salvage=0x0, flags=86, page_lockedp=0x7f1e1e17bbaa) at ../src/reconcile/rec_write.c:200
      #16 0x0000560737865dcd in __wt_reconcile (session=0x7f1e20c7aeb0, ref=0x56073a027be0, salvage=0x0, flags=86) at ../src/reconcile/rec_write.c:87
      #17 0x000056073782265b in __evict_review (session=0x7f1e20c7aeb0, ref=0x56073a027be0, evict_flags=0, inmem_splitp=0x7f1e1e17bc7f) at ../src/evict/evict_page.c:630
      #18 0x0000560737820ba2 in __wt_evict (session=0x7f1e20c7aeb0, ref=0x56073a027be0, previous_state=3, flags=0) at ../src/evict/evict_page.c:149
      #19 0x000056073781d6a3 in __evict_page (session=0x7f1e20c7aeb0, is_server=true) at ../src/evict/evict_lru.c:2231
      #20 0x0000560737819737 in __evict_lru_pages (session=0x7f1e20c7aeb0, is_server=true) at ../src/evict/evict_lru.c:1102
      #21 0x00005607378186ac in __evict_pass (session=0x7f1e20c7aeb0) at ../src/evict/evict_lru.c:703
      #22 0x0000560737817c05 in __evict_server (session=0x7f1e20c7aeb0, did_work=0x7f1e1e17be8a) at ../src/evict/evict_lru.c:376
      #23 0x00005607378177ec in __wt_evict_thread_run (session=0x7f1e20c7aeb0, thread=0x5607399cf970) at ../src/evict/evict_lru.c:288
      #24 0x00005607378a71aa in __thread_run (arg=0x5607399cf970) at ../src/support/thread_group.c:31
      #25 0x00007f1e2046f6db in start_thread (arg=0x7f1e1e17c700) at pthread_create.c:463
      #26 0x00007f1e2019888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

      [1581463387:604329][31977:0x7f1e1e17c700], file:WiredTigerHS.wt, eviction-server: __wt_evict_file_exclusive_on, 843: !F_ISSET(session, WT_SESSION_LOCKED_PASS)
      [1581463387:604365][31977:0x7f1e1e17c700], file:WiredTigerHS.wt, eviction-server: __wt_abort, 28: aborting WiredTiger library
      

      The session has already set with WT_SESSION_LOCKED_PASS in __evict_server function, but while clearing the pages of the file from eviction queue, it checks that no one should lock the pass and it leads to an assert.

        Attachments

          Activity

            People

            • Assignee:
              chenhao.qu Chenhao Qu
              Reporter:
              haribabu.kommi Haribabu Kommi
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: