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

Standardise tombstone and deleted content flags

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: None
    • StorEng - Defined Pipeline
    • 8

      This is fallout from WT-11525. As part of the code review, a couple of inconsistencies emerged with flag usage.

      The first is negative naming, and mentioning tombstones, in the API. It's easier to reason about a positively named flag, so WT_CURSTD_IGNORE_TOMBSTONE should be renamed to WT_CURSTD_READ_DELETED_CONTENT. MongoDB currently does not use this flag, so we have a bit more leverage in renaming it. This name also removes a mention of tombstones from the API.

      The second inconsistency is that after WT-11525, we now have a flag WT_READ_SEE_DELETED. This is fine in isolation, but the interaction with WT_READ_VISIBLE_ALL is a little strange. WT_READ_VISIBLE_ALL only applies to deleted content, so ideally the flag would be named something like WT_READ_SKIP_GLOBALLY_VISIBLE_DELETES. But this leaves the API in a weird position, where we have a "see deletes" and a "don't see deletes" flag. Right now they apply slightly differently, so it sort of makes sense to have both. However, we should fix this in one of two ways:
      (1) Fix WT_READ_VISIBLE_ALL to apply to all content, not just deletes.
      (2) Rename WT_READ_VISIBLE_ALL to something closer to what it does, and unify the way the two delete flags are used.

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            will.korteland@mongodb.com Will Korteland
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: