Using the minimum modification timestamp improve the checkpoint algorithm.

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Gone away
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • 3

      Checkpoint can probably be made more efficient using the minimum modification timestamp, by using that value to determine if checkpoint is required to visit a page.

      If the minimum modification timestamp is less than the stable timestamp then checkpoint should visit the page, otherwise it shouldn't.

      I believe the relevant check is in bt_sync.c around line 246.

      /*
       * Skip clean pages, but need to make sure maximum transaction ID is always updated.
       */
      if (!__wt_page_is_modified(walk->page)) {
          if (((mod = walk->page->modify) != NULL) && mod->rec_max_txn > btree->rec_max_txn)
              btree->rec_max_txn = mod->rec_max_txn;
          if (mod != NULL && btree->rec_max_timestamp < mod->rec_max_timestamp)
              btree->rec_max_timestamp = mod->rec_max_timestamp;
          continue;
      }
      

       

            Assignee:
            Luke Pearson
            Reporter:
            Luke Pearson
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: