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

Force eviction on pages with ancient updates

    • Type: Icon: Task Task
    • Resolution: Done
    • WT1.2
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      An update that remains in memory while 2 billion transactions are executed will become invisible. Force eviction of pages with very old updates – this should be very uncommon but the consequences of not handling it are fatal.

      This should just involve storing the first update to a page in the WT_PAGE_MODIFY struct, and testing it against txn_global->id in _wt_eviction_page_check). We should do the same test in _wt_page_in_func, to be sure.

      (FWIW, PostgreSQL has the exact same issue, for the same reason. See http://www.postgresql.org/docs/9.1/static/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND for details).

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

              Created:
              Updated:
              Resolved: