Write prepared fast truncate to disk when preserve prepared config is enabled

XMLWordPrintableJSON

    • Storage Engines - Transactions
    • 1,072.207
    • SE Transactions - 2026-05-08, SE Transactions - 2026-05-22, SE Transactions - 2026-06-05
    • 5

      Summary

      When the preserve_prepared configuration is enabled, fast truncate operations that belong to a prepared transaction must be persisted to disk. Currently, prepared fast truncate state held in WT_PAGE_DELETED is not written out under this configuration, leaving a gap in prepared transaction durability for truncated pages.

      Motivation

      The preserve_prepared config requires that prepared transaction state survives a restart so that recovery can reconstruct the prepared state and allow the transaction to be committed or rolled back after the fact. Fast truncate (page deletion) operations are part of a prepared transaction's write set and must be treated the same as prepared updates on individual keys — they need to be written to the on-disk format so recovery can replay or discard them correctly.

      Acceptance Criteria

      • When preserve_prepared is enabled, reconciliation writes prepared WT_PAGE_DELETED records to disk using the prepared fast truncate on-disk format
      • On restart and recovery, the prepared fast truncate state is correctly reconstructed from disk
      • When preserve_prepared is disabled, behavior is unchanged (prepared fast truncate is not written out)
      • Existing prepare and fast truncate tests pass with no regression

            Assignee:
            Alana Huang
            Reporter:
            Chenhao Qu
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: