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

Restore ignore_prepare semantics to read with read_committed isolation instead of read_uncommitted

    • 8
    • 2023-06-27 Lord of the Sprints
    • v7.0, v6.0

      A change implemented in WT-6778 modified prepared update resolution to "commit" updates from oldest to newest, so if we had an update chain U2->U1 where U1 is the older update we would "commit" update U1 and then update U2. Previously they would be committed in order U2 and then U1.

      What this means is if a reader reads the update chain while the commit is ongoing it could see update U1 which is effectively a partial read of transaction. ignore_prepare doesn't guarantee atomic reads in WiredTiger but WT-6778 did change the isolation level of those reads. We should return it to its previous state of read_committed isolation level.

            luke.pearson@mongodb.com Luke Pearson
            luke.pearson@mongodb.com Luke Pearson
            0 Vote for this issue
            10 Start watching this issue