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

Improve overlap detection in WT_MODIFY paths

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • 5
    • StorEng - Defined Pipeline

      Summary
      The detection for the non-overlapping case in WT_MODIFY application is prone to false negatives.

      Motivation

      • Does this affect any team outside of WT?
        In MongoDB time-series inserts, the support for using WT_MODIFY is disabled due to performance being worse than a simple full document. One of the reasons for doing that is that WiredTiger is materialising all intermediate modifies in a transaction once it is out of the fast path. The inserts are non-overlapping and don't contain padding so they should be taking the fast single-pass path instead of the slower one.
      • Is this issue urgent?
        No

      Suggested Solution
      I've attached a patch for WT_MODIFY that improves the padding and overlap detection. It seems to pass the WT tests for WT_MODIFY application (test_cursor12.py).

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            jordi.olivares-provencio@mongodb.com Jordi Olivares Provencio
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated: