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

Remove globally visible check in __wt_checkpoint_close

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.0, 4.4.0-rc10, 4.7.0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • 1
    • Storage - Ra 2020-06-15

      When working on WT-6263, rebalance cannot get exclusive access to the tree because of the following check.

          /*
           * If closing an unmodified file, check that no update is required for active readers.
           */
          if (!btree->modified && !bulk) {
              WT_RET(__wt_txn_update_oldest(session, WT_TXN_OLDEST_STRICT | WT_TXN_OLDEST_WAIT));
              return (__wt_txn_visible_all(session, btree->rec_max_txn, btree->rec_max_timestamp) ?
                  __wt_evict_file(session, WT_SYNC_DISCARD) :
                  EBUSY);
          }
      

      The clean tree has non-globally visible content because rollback to stable and recovery modifies the tree.

      I think this check is no longer required in durable history. michael.cahill alexander.gorrod Can you confirm?

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

              Created:
              Updated:
              Resolved: