RTS: double free or corruption in __rts_btree_abort_ondisk_kv during prepared transaction rollback (7.0)

XMLWordPrintableJSON

    • Type: Build Failure
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: RTS

      spinlock-pthread-adaptive-test on ubuntu2004-arm64

      Host: i-0b6f7bd3de106ce69
      Project: wiredtiger-mongo-v7.0
      Commit: ab372135
      Please refer to BF(G) Playbook for instructions on handling BF and BFG tickets as well as Auto-Resolution Rules

      Task Logs:

      spinlock-pthread-adaptive-test task_log

      Logs:

      [pid:51560]: ERROR: test_rollback_to_stable06.test_rollback_to_stable06.test_rollback_to_stable(row_integer.no_inmem.prepare.no_evict)
      ----------------------------------------------------------------------
      [pid:51560]: testtools.testresult.real._StringException: lost connection during test 'test_rollback_to_stable06.test_rollback_to_stable06.test_rollback_to_stable(row_integer.no_inmem.prepare.no_evict)'
      ----------------------------------------------------------------------
      Ran 12487 tests in 2444.965s
      

      logs

      spinlock-pthread-adaptive-test task_log

      Logs:

      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #1  0x0000ffff968eeaac in __GI_abort () at abort.c:79
      #2  0x0000ffff9693bf50 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0xffff969fd6e8 "%s\n") at ../sysdeps/posix/libc_fatal.c:156
      #3  0x0000ffff96943354 in malloc_printerr (str=str@entry=0xffff969f9210 "double free or corruption (fasttop)") at malloc.c:5347
      #4  0x0000ffff96944ca0 in _int_free (av=<optimized out>, p=0x408466f0, have_lock=0) at malloc.c:4266
      #5  0x0000ffff95fa6e68 in __wt_free_int (session=session@entry=0x40c766c0, p_arg=p_arg@entry=0xffffc7c550e0) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/os_common/os_alloc.c:334
      #6  0x0000ffff96022df0 in __rts_btree_abort_ondisk_kv (session=session@entry=0x40c766c0, ref=ref@entry=0xffff5c02c0c0, rip=rip@entry=0x403f5968, recno=recno@entry=0, row_key=0x0, vpack=vpack@entry=0xffffc7c55290, rollback_timestamp=rollback_timestamp@entry=10, is_ondisk_stable=is_ondisk_stable@entry=0x0) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_btree.c:775
      #7  0x0000ffff96023714 in __rts_btree_abort_row_leaf (session=session@entry=0x40c766c0, ref=ref@entry=0xffff5c02c0c0, rollback_timestamp=rollback_timestamp@entry=10) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_btree.c:1051
      #8  0x0000ffff960240ac in __wt_rts_btree_abort_updates (session=session@entry=0x40c766c0, ref=0xffff5c02c0c0, rollback_timestamp=10) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_btree.c:1100
      #9  0x0000ffff96024290 in __rts_btree_walk (session=session@entry=0x40c766c0, rollback_timestamp=<optimized out>, rollback_timestamp@entry=10) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_btree_walk.c:125
      #10 0x0000ffff96024c78 in __wt_rts_btree_walk_btree (session=session@entry=0x40c766c0, rollback_timestamp=rollback_timestamp@entry=10) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_btree_walk.c:321
      #11 0x0000ffff96026e0c in __wt_rts_history_final_pass (session=session@entry=0x40c766c0, rollback_timestamp=rollback_timestamp@entry=10) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_history.c:222
      #12 0x0000ffff96025f58 in __wt_rts_btree_apply_all (session=session@entry=0x40c766c0, rollback_timestamp=rollback_timestamp@entry=10) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts.c:168
      #13 0x0000ffff9601b040 in __rollback_to_stable_int (session=0x40c766c0, no_ckpt=no_ckpt@entry=true) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_api.c:89
      #14 0x0000ffff9601bcfc in __rollback_to_stable (session=<optimized out>, cfg=<optimized out>, no_ckpt=<optimized out>) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/rollback_to_stable/rts_api.c:211
      #15 0x0000ffff9605118c in __wt_txn_global_shutdown (session=session@entry=0x40c72830, cfg=cfg@entry=0xffffc7c569f8) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/txn/txn.c:2577
      #16 0x0000ffff95ed24c4 in __conn_close (wt_conn=0x4046bec0, config=<optimized out>) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/src/conn/conn_api.c:1188
      #17 0x0000ffff961183f0 in _wrap_Connection_close (self=<optimized out>, args=<optimized out>) at /data/mci/a55e1d7edf307e9ac6db5272680e3d0f/wiredtiger/cmake_build/lang/python/CMakeFiles/wiredtiger_python.dir/wiredtigerPYTHON_wrap.c:8051
      #18 0x0000ffff96c7028c in cfunction_call (func=0xffff961bc7c0, args=<optimized out>, kwargs=<optimized out>) at ../src/Python-3.10.4/Objects/methodobject.c:552
      #19 0x0000ffff96c7f8b0 in _PyObject_Call (kwargs=<optimized out>, args=0xffff79bbdcf0, callable=0xffff961bc7c0, tstate=0x3f1adf90) at ../src/Python-3.10.4/Objects/call.c:305
      #20 PyObject_Call (callable=0xffff961bc7c0, args=0xffff79bbdcf0, kwargs=<optimized out>) at ../src/Python-3.10.4/Objects/call.c:317
      #21 0x0000ffff96c5f624 in do_call_core (kwdict=0x0, callargs=0xffff79bbdcf0, func=0xffff961bc7c0, trace_info=0xffffc7c57070, tstate=<optimized out>) at ../src/Python-3.10.4/Python/ceval.c:5919
      #22 _PyEval_EvalFrameDefault (tstate=0x3f1adf90, f=0xffff95b7b4d0, throwflag=<optimized out>) at ../src/Python-3.10.4/Python/ceval.c:4277
      #23 0x0000ffff96c70990 in _PyEval_EvalFrame (throwflag=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, f=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, tstate=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../src/Python-3.10.4/Python/ceval.c:5052
      #24 _PyEval_Vector (kwnames=<optimized out>, argcount=<optimized out>, args=<optimized out>, locals=0x0, con=0xffff96393da0, tstate=0x3f1adf90) at ../src/Python-3.10.4/Python/ceval.c:5065
      #25 _PyFunction_Vectorcall (func=0xffff96393d90, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at ../src/Python-3.10.4/Objects/call.c:342
      #26 0x0000ffff96c5d824 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=<optimized out>, callable=0xffff96393d90, tstate=0x3f1adf90) at ../src/Python-3.10.4/Include/cpython/abstract.h:123
      #27 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=<optimized out>, callable=0xffff96393d90) at ../src/Python-3.10.4/Include/cpython/abstract.h:123
      #28 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0xffffc7c57230, tstate=<optimized out>) at ../src/Python-3.10.4/Python/ceval.c:5867
      #29 _PyEval_EvalFrameDefault (tstate=0x3f1adf90, f=0x40395420, throwflag=<optimized out>) at ../src/Python-3.10.4/Python/ceval.c:4198
      

      logs

      spinlock-pthread-adaptive-test task_log

      Logs:

      [1781584112:965956][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99032, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:965965][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99033, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:965972][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99034, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:965979][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99035, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:965986][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99036, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:965993][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99037, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:965999][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99038, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966006][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99039, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966016][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99040, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966023][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99041, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966030][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99042, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966037][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99043, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966043][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99044, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966049][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99045, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966055][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99046, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966061][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99047, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966067][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99048, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966073][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99049, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966079][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99050, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966087][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99051, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966094][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99052, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966099][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99053, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966106][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99054, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966112][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99055, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966118][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99056, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): true, prepare_state=WT_PREPARE_INIT
      [1781584112:966124][51578:0xffff96f4a010], test_rollback_to_stable22.test_rollback_to_stable22.test_rollback_to_stable, file:rollback_to_stable22_0.wt, txn rollback_to_stable: [WT_VERB_RTS][DEBUG_1]: [UPDATE_ABORT] rollback to stable aborting update with txnid=99057, txnid_not_visible=false, stable_timestamp=(0, 990) < durable_timestamp=(0, 1000): 
      

      logs

      Repro Artifacts:

            Assignee:
            Will Korteland
            Reporter:
            xgen-buildbaron-user
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: