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

FLCS/VLCS changes for dropping values with globally-visible stop times

    XMLWordPrintable

Details

    Description

      It came up in the discussion in WT-8362 that in both VLCS and FLCS, once a value is written to disk with a stop time, it will never be fully deleted even when the stop time becomes globally visible: for VLCS deleted cells are only generated when a tombstone update appears; and in FLCS when there's no update, time windows are only updated by __cell_kv_window_cleanup and __wt_rec_time_window_clear_obsolete, neither of which handles stop times.

      This should really be checked in vrfy_dsk, since it's pretty much impossible to detect the existence or nonexistence of invisible values from test code. However, it currently isn't so checked, including for row store. (Row store has code to drop such values, but it might be incorrect or insufficient.) Therefore adding this check requires some caution; we think probably it's best to do the check only on newly-reconciled pages and accept such values on old pages, in case someone has some old pages lying around with such values on them.

      Note: I'm intending to handle this, but won't get to it for a couple weeks probably.

      Attachments

        Issue Links

          Activity

            People

              keith.bostic@mongodb.com Keith Bostic (Inactive)
              dholland+wt@sauclovia.org David Holland
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: