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

Add eviction debug mode and extra checks

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT3.2.1, 4.0.11, 4.3.1, 4.2.0-rc2
    • Affects Version/s: None
    • Component/s: None
    • 13
    • Storage NYC 2019-01-14, Storage NYC 2019-01-28, Storage NYC 2019-02-25, Storage Engines 2019-06-03, Storage Engines 2019-06-17
    • v4.2, v4.0

      WT moving pages in and out of lookaside has had bugs that have caused failures in MongoDB testing. However, MongoDB testing often randomizes which tests are run concurrently that make it hard to line up a "heavy workload" test that results in cache pressure and lookaside activity to run with the test that observes a symptom caused by a lookaside bug. This makes reproducing and isolating test failures difficult.

      Furthermore, I suspect organic cache pressure creates biases with respect to which pages eviction will write out to lookaside. Because MongoDB creates WT tables for meta-information, there may be additional cases where, despite creating lookaside activity in general, not all of the MongoDB code paths are affected.

      If WT could be configured to choose to write more pages out to lookaside, even when there's no cache pressure, this would ease the effort required to reproduce problems. My assumption is that an easy implementation would still be susceptible to biases in which page gets written out. A bonus would be writing pages out to lookaside where each table has an equal chance of having its blocks being written to lookaside. The bonus feature is just a nice to have. If it's not trivial, that should be dropped as a goal; if lookaside is engaged in low-cache pressure scenarios, MongoDB can more easily have the tables it cares about be the primary ones being accessed.

            Assignee:
            sue.loverso@mongodb.com Susan LoVerso
            Reporter:
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: