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

Check that we only mark pages for lookaside reads if they have lookaside entries

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Non-NYC 2018-03-12, Storage Non-NYC 2018-04-09

      In rec_write.c, we use F_ISSET(r, WT_REC_LOOKASIDE to decide whether to call __wt_las_wrapup. We also have r->cache_write_lookaside that tracks if we need lookaside writes for real.

      Check that refs only end up with a las_pageid if they actually have lookaside entries. There is a check at the end of __wt_las_insert_block that suggests we can make it all the way through there and not write anything:

        549         if (insert_cnt > 0) {
        550                 (void)__wt_atomic_add64(
        551                     &S2C(session)->cache->las_entry_count, insert_cnt);
        552                 WT_ERR(__las_insert_block_verbose(session, multi));
        553         }
      

            Assignee:
            michael.cahill@mongodb.com Michael Cahill (Inactive)
            Reporter:
            michael.cahill@mongodb.com Michael Cahill (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: