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

Add ability to manage when prepared transactions appear in checkpoints

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.1.7, WT3.2.0
    • Component/s: None
    • Labels:
      None

      Description

      The scope is to implement the WiredTiger part 1 of the project oplog durablity:

      Part 1:

      1. Update the WT_UPDATE and WT_TXN structure to add a new member to store durable_timestamp.
      2. As part of commit transaction, copy the given commit_timestamp to durable_timestamp if it is a prepared transaction and durable_timestamp is not specified.
      3. Update __rec_txn_read function to check if the session is checkpoint session, if yes make the update visible only if durable_timestamp is earlier than given timestamp.
      4. Update the eviction to consider the update as uncommitted if durable_timestamp is less than stable_timestamp.
      5. Enforce durable_timestamp rules.
        1. For any prepared transaction, durable timestamp has to be specified.
        2. For any non-prepared transaction, if a durable timestamp is specified, it should be equal to commit_timestamp.
        3. A durable timestamp should be later than stable timestamp.
      6. Remove the constraint that a stable timestamp cannot pass past a prepared timestamp.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              vamsi.krishna Vamsi Boyapati
              Reporter:
              jocelyn.del-prado Jocelyn del Prado
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: