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

Retrieve the on-disk durable timestamp to compare with newer update timestamp

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.1, 5.2.0, 5.1.0-rc2, 5.0.5
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • 5
    • Storage - Ra 2021-10-18, Storage - Ra 2021-11-01
    • v5.1

      First consider the following simple example calls to a WT instance with the same key:

      • Write + Commit U1 at TS(20)
      • Prepare U2 at TS(10)
      • Commit U2 at any commit + durable timestamp (the exact values irrelevant)

      When using the (patched, see WT-7815) ordered write timestamp assertion, WT will correctly call out this misuse when the transaction commits entirely because of the chosen prepare timestamp.

      Now consider the same example, but with a restart:

      • Set OldestTimestamp 1
      • Write + Commit U1 at TS(20)
      • Set StableTimestamp 20
      • Take a stable checkpoint and restart WT
      • Prepare U2 at TS(10)
      • Commit U2 at any commit + durable timestamp

      In the second example, the assertion does not fire, but this out of order usage is still problematic and must be avoided from unintentionally happening.

            haribabu.kommi@mongodb.com Haribabu Kommi
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            0 Vote for this issue
            10 Start watching this issue