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

Reposition the cursor if __wt_hs_modify return WT_RESTART

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.0, 4.9.0, 4.4.3
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • 3
    • Storage - Ra 2020-11-30

              /* Delete entry with higher timestamp. */
              hs_cbt->compare = 0;
              WT_ERR(__wt_upd_alloc_tombstone(session, &tombstone, NULL));
              tombstone->txnid = WT_TXN_NONE;
              tombstone->start_ts = tombstone->durable_ts = WT_TS_NONE;
              while ((ret = __wt_hs_modify(hs_cbt, tombstone)) == WT_RESTART)
                  ;
              WT_ERR(ret);
              tombstone = NULL;
              WT_STAT_CONN_INCR(session, cache_hs_order_fixup_move);
              WT_STAT_DATA_INCR(session, cache_hs_order_fixup_move);
      

      When getting a WT_RESTART return, we should do a search again and reposition us before trying again.

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

              Created:
              Updated:
              Resolved: