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

Enhance when eviction chooses between update/restore and lookaside

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

      We have oscillated in reconciliation between doing update-restore reconciliations, not choosing to reconcile pages where we can't save much space, and using the lookaside file instead of the reconciliation.

      I believe we oscillate for several reasons:

      • We don't run workloads that stress the aspects of reconciliation, to allow us to make decisions empirically.
      • We don't keep and share enough context between eviction and reconciliation to make the right decision in the right scenario.
      • Many of the cases that lead to tweaking the behavior are generated by test/format, and aren't representative of end-user workloads. i.e: there is a tension between making corner cases work, and making the best choice in more common scenarios.

      The particular work here starts with creating and running several workloads that exercise update/restore and/or lookaside eviction in a controlled way. Then we can use those workloads (or that workload) to make informed optimizations.

            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            alexander.gorrod@mongodb.com Alexander Gorrod
            0 Vote for this issue
            3 Start watching this issue