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

Run the metadata checkpoint for force_stop at read-committed isolation for incremental backup

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.0, 4.9.0, 4.4.4, 4.2.13
    • Affects Version/s: None
    • Component/s: None
    • None
    • v4.2

      Some combination of operations when using force_stop=true and then closing the backup cursor (or as in the stack below, closing the session) results in an assertion failure. I have not been able to reproduce this with our Python tests yet.

      #0  0x00007fc94583f4f5 in raise () from /lib64/libc.so.6
      #1  0x00007fc945840cd5 in abort () from /lib64/libc.so.6
      #2  0x00007fc95ab74582 in __wt_abort (session=0x7fc939b325e0) at src/third_party/wiredtiger/src/os_common/os_abort.c:30
      #3  0x00007fc95abbd3b1 in __txn_visible_id (session=0x7fc939b325e0, id=7) at src/third_party/wiredtiger/src/include/txn_inline.h:676
      #4  0x00007fc95abbf429 in __wt_rec_upd_select (session=0x7fc939b325e0, r=0x7fc938196a20, ins=0x7fc93edd92c0, ripcip=0x0, vpack=0x0, upd_select=0x7fc91f47d070) at src/third_party/wiredtiger/src/reconcile/rec_visibility.c:313
      #5  0x00007fc95abb41ac in __rec_row_leaf_insert (session=0x7fc939b325e0, r=0x7fc938196a20, ins=0x7fc93edd92c0) at src/third_party/wiredtiger/src/reconcile/rec_row.c:565
      #6  0x00007fc95abb5395 in __wt_rec_row_leaf (session=0x7fc939b325e0, r=0x7fc938196a20, pageref=0x7fc93ecff9c0, salvage=0x0) at src/third_party/wiredtiger/src/reconcile/rec_row.c:742
      #7  0x00007fc95abcadd0 in __reconcile (session=0x7fc939b325e0, ref=0x7fc93ecff9c0, salvage=0x0, flags=4, page_lockedp=0x7fc91f47d3a2) at src/third_party/wiredtiger/src/reconcile/rec_write.c:192
      #8  0x00007fc95abca780 in __wt_reconcile (session=0x7fc939b325e0, ref=0x7fc93ecff9c0, salvage=0x0, flags=4) at src/third_party/wiredtiger/src/reconcile/rec_write.c:99
      #9  0x00007fc95a9e67e9 in __wt_sync_file (session=0x7fc939b325e0, syncop=WT_SYNC_CHECKPOINT) at src/third_party/wiredtiger/src/btree/bt_sync.c:646
      #10 0x00007fc95ac5a0d3 in __checkpoint_tree (session=0x7fc939b325e0, is_checkpoint=true, cfg=0x7fc91f47d650) at src/third_party/wiredtiger/src/txn/txn_ckpt.c:1672
      #11 0x00007fc95ac5aa25 in __wt_checkpoint (session=0x7fc939b325e0, cfg=0x7fc91f47d650) at src/third_party/wiredtiger/src/txn/txn_ckpt.c:1832
      #12 0x00007fc95aa5e248 in __curbackup_close (cursor=0x7fc937b70b60) at src/third_party/wiredtiger/src/cursor/cur_backup.c:214
      #13 0x00007fc95abf63e6 in __session_close_cursors (session=0x7fc939b325e0, cursors=0x7fc939b32740) at src/third_party/wiredtiger/src/session/session_api.c:233
      #14 0x00007fc95abf6f80 in __wt_session_close_internal (session=0x7fc939b325e0) at src/third_party/wiredtiger/src/session/session_api.c:306
      #15 0x00007fc95abf6ae0 in __session_close (wt_session=0x7fc939b325e0, config=0x0) at src/third_party/wiredtiger/src/session/session_api.c:270
      

      The checkpoint for force_stop to write out the turtle file was added in WT-6844 to solve a bug where there was a window where the stop of incremental backup was vulnerable and could reappear if a crash happened at the right time.

            Assignee:
            sue.loverso@mongodb.com Susan LoVerso
            Reporter:
            sue.loverso@mongodb.com Susan LoVerso
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: