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

Use onpage visibility check helpers in __wt_txn_update_check

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • None
    • WT10.0.0, 4.4.1, 4.7.0
    • None
    • 1
    • Storage - Ra 2020-06-29, Storage - Ra 2020-07-13, Storage - Ra 2020-07-27

    Description

      This visibility check here ignores prepare written to the disk.

      /*
           * Check conflict against the on page value if there is no update on the update chain except
           * aborted updates. Otherwise, we would have either already detected a conflict if we saw an
           * uncommitted update or determined that it would be safe to write if we saw a committed update.
           */
          if (!rollback && upd == NULL && cbt != NULL && CUR2BT(cbt)->type != BTREE_COL_FIX &&
            cbt->ins == NULL) {
              __wt_read_cell_time_window(cbt, cbt->ref, &tw);
              if (tw.stop_txn != WT_TXN_MAX && tw.stop_ts != WT_TS_MAX)
                  rollback = !__wt_txn_visible(session, tw.stop_txn, tw.stop_ts);
              else
                  rollback = !__wt_txn_visible(session, tw.start_txn, tw.start_ts);
          }
      

      Attachments

        Issue Links

          Activity

            People

              chenhao.qu@mongodb.com Chenhao Qu
              chenhao.qu@mongodb.com Chenhao Qu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: