-
Type:
Task
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Transactions
-
Storage Engines, Storage Engines - Transactions
-
SE Transactions - 2025-08-15
-
5
For the new distributed commit transaction, we also need to change the way we handle prepare commit and rollback. If we write a prepared update to disk, the older update inserted to the history store has a max stop timestamp. In the current implementation, if we commit the prepared update, we need to goto the history store to fix the timestamp of that record. In the new model, we can no longer do that, because the commit timestamp of the prepared update may not be stable and we will continue to write a prepared update in the next reconciliation. The stop timestamp of the history store record should remain as max.
I have an immature idea to solve that. Instead of fixing the timestamp in the commit flow, we have to restore the history store record back to the update chain and mark it to be deleted from the history store as the rollback case does, which means more cache usage. For any update needs to be deleted from the history store, we also cannot delete them outright in the next reconciliation. We have to wait until the associated prepare commit or rollback to become stable. Only then we can delete the update from the history store.
- causes
-
WT-15183 Failed: format-failure-configs-test on ! Ubuntu 20.04 [WiredTiger (develop) @ 6b344a64]
-
- Closed
-
- is related to
-
WT-15150 To allow the database without the preserve prepared config to read data written by a database with the config
-
- Closed
-
-
WT-15162 Enable test/format disagg follower mode on evergreen
-
- Closed
-
-
WT-15160 Log deleting local files
-
- Closed
-
- related to
-
WT-15085 ASAN heap-buffer-overflow in __meta_live_restore_to_meta
-
- Closed
-
-
WT-15175 Coverity analysis defect 175742: Redundant test
-
- Closed
-
-
WT-15104 Apply bit encoding to "version" and "read version" in address cookie
-
- Closed
-
-
WT-15089 Add an additional case to test_live_restore01.py
-
- Closed
-
-
WT-13429 Variable cfg marked as unused while used
-
- Closed
-
-
WT-15183 Failed: format-failure-configs-test on ! Ubuntu 20.04 [WiredTiger (develop) @ 6b344a64]
-
- Closed
-