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

Allow prepared transaction to commit behind oldest timestamp

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT3.2.0, 4.1.9
    • Affects Version/s: None
    • Component/s: None
    • None
    • 2
    • Storage Engines 2019-03-11

      As part of SERVER-39036, We would be unpinning the stable timestamp. And make it to move past the oldest active prepared timestamp. If that's the case, when we move forward stable timestamp, we would also be moving forward the oldest timestamp along with it to reduce the cache pressure. This means, during steady state replication, if we try to commit a prepared transaction with a commit timestamp < oldest timestamp, wiredTiger currently throws an error for this check. This problem exist even in recovery & initial sync while replaying the commit transaction oplog entry, where we would be committing a prepared transaction older than oldest timestamp.

      This means we should relax oldest timestamp check for the prepared transactions like we do it for stable timestamp) & allow committing the prepared transaction older than oldest timestamp.

            vamsi.krishna@mongodb.com Vamsi Boyapati
            suganthi.mani@mongodb.com Suganthi Mani
            0 Vote for this issue
            9 Start watching this issue