Prepared commit race with moving stable timestamps

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Works as Designed
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage - Ra 2021-06-28, Storage - Ra 2021-10-18
    • None
    • v5.0

      Mongodb relies on the all durable timestamp returned by wiredtiger to set the stable timestamp.

      It is computed as the minimum of the current global durable timestamp and the pinned durable timestamp of each transaction minus 1. However, the query process of querying the all durable timestamp and setting the stable timestamp is not atomic. So when we commit a prepared transaction, the stable timestamp can move ahead of its durable timestamp. This will cause the checkpoint to persist a partial of that transaction.

              Assignee:
              [DO NOT USE] Backlog - Storage Engines Team
              Reporter:
              Chenhao Qu
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

                Created:
                Updated:
                Resolved: