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

Relax commit timestamp check for prepared transactions

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      When a prepared transaction is committed it is OK for the commit timestamp to be older than either the stable or oldest timestamp. We need to relax the checking in __wt_txn_commit so that prepared transactions can commit with any timestamp that is greater than the prepare timestamp. Transactions that have not been prepared should not have the checking relaxed.

      That means that WiredTiger could have created a checkpoint without the content from the prepared transaction - which is now visible at the point in time from the checkpoint. MongoDB (the only user of prepare and timestamps) will manage that problem by replaying the prepared transaction during replication recovery.

        Attachments

          Activity

            People

            Assignee:
            vamsi.krishna Vamsi Boyapati
            Reporter:
            alexander.gorrod Alexander Gorrod
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: