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

Use onpage visibility check helpers in __wt_txn_update_check

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: WT3.2.2, 4.4.1, 4.7.0
    • Component/s: None
    • Labels:
    • Story Points:
      1
    • Sprint:
      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

              Assignee:
              chenhao.qu Chenhao Qu
              Reporter:
              chenhao.qu Chenhao Qu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: