-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
-
Execution EMEA Team 2023-10-30, CAR Team 2023-11-13, CAR Team 2023-11-27, CAR Team 2023-12-11, CAR Team 2023-12-25, CAR Team 2024-01-08, Execution Team 2024-02-19, CAR Team 2024-01-22, CAR Team 2024-02-05
-
120
The pre image truncate marker initialization code relies on abandonSnapshot() to provide an updated view of the pre-images collection, and update the highest seen recordId and wall time for each nsUUID.
However, (1) the code passes a CollectionAcquisition reference whose underlying collection pointer could be invalidated by calling abandonSnapshot() if there were a concurrent DDL operation.
At this time, the uses of abandonSnapshot() are called while holding the collection lock, which prevents DDL operations from coming in and invalidating the Collection snapshot.
- has to be done after
-
SERVER-85471 Separate PreImagesTruncateManager responsibilities
- Closed
- is related to
-
SERVER-82031 Audit change collection truncate markers use of abandonSnapshot()
- Closed
-
SERVER-82040 Add debug information in PreImagesTruncateManager::_registerAndInitialiseMarkersForTenant
- Closed