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

Acquire snapshot for eviction threads

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.0, 4.4.2, 4.9.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • 5
    • Storage - Ra 2020-09-07, Storage - Ra 2020-09-21, Storage - Ra 2020-10-19

      At the moment eviction threads use checks based on global visibility rules - which means that they don't evict anything that isn't globally visible (based on transaction ID checks, not timestamp checks).

      We should update eviction so that it can evict anything that is committed or prepared. A possible way to do that is to allocate a transaction snapshot when doing evictions, but that requires care because application threads might be doing the eviction and we need to be careful not to use or disrupt their snapshot.

      See WT-6444 for more context and a workload where this change is beneficial.

        1. a-1.png
          122 kB
          Sulabh Mahajan
        2. a-2.png
          119 kB
          Sulabh Mahajan
        3. a-3.png
          119 kB
          Sulabh Mahajan
        4. eviction.patch
          77 kB
          Haseeb Bokhari
        5. image-2020-08-20-10-22-34-887.png
          382 kB
          Haseeb Bokhari
        6. image-2020-08-20-10-38-59-705.png
          338 kB
          Haseeb Bokhari
        7. image-2020-08-20-10-49-07-353.png
          221 kB
          Haseeb Bokhari
        8. Screen Shot 2020-08-18 at 4.32.35 pm.png
          832 kB
          Haseeb Bokhari
        9. Screen Shot 2020-08-18 at 4.33.54 pm.png
          879 kB
          Haseeb Bokhari

            Assignee:
            haseeb.bokhari@mongodb.com Haseeb Bokhari (Inactive)
            Reporter:
            alexander.gorrod@mongodb.com Alexander Gorrod
            Votes:
            0 Vote for this issue
            Watchers:
            17 Start watching this issue

              Created:
              Updated:
              Resolved: