Implement fast-path delta generation would be valuable for load workloads

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Engines - Transactions
    • None
    • None

      The delta generation code currently interleaves with full page reconciliation. The reconciliation code generates both a full page image and a delta page image (if possible) and then decides which one to use based on some criteria.

      For load workloads, and particularly for load workloads that are inserting content into an index that has grown larger than the dirty working set in cache. A pattern emerges that could potentially benefit from a fast-path delta reconciliation.

      The pattern is that an index page is read in, a single new entry is added in a random location on the page, and then the page is written back to stable storage. In this case, ideally delta generation would be able to find the single new record and issue a write of a delta page without needing to go through the process of a full reconciliation which can be CPU intensive.

      The double (potential) benefit of this will be for checkpoint reconciliations. Checkpoint reconciliation is currently single threaded (each page is sequentially written back), and even once they are concurrent (WT-14519), the majority of work checkpoints need to do is in reconciliation. The more we can reduce that overhead, the faster checkpoints should complete, and the less disruptive they will be.

        1. Screenshot 2026-02-18 at 3.35.47 pm.png
          Screenshot 2026-02-18 at 3.35.47 pm.png
          167 kB
        2. Screenshot 2026-03-12 at 8.06.31 am.png
          Screenshot 2026-03-12 at 8.06.31 am.png
          172 kB
        3. wt16707_fast_delta.diff
          72 kB
        4. wt16707.diff
          24 kB

            Assignee:
            Alexander Gorrod
            Reporter:
            Alexander Gorrod
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: