-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Catalog and Routing
-
Fully Compatible
-
ALL
-
CAR Team 2024-08-05, CAR Team 2024-08-19, CAR Team 2024-09-02, CAR Team 2024-09-16, CAR Team 2024-09-30, CAR Team 2024-10-14, CAR Team 2024-10-28, CAR Team 2024-11-11, CAR Team 2024-11-25, CAR Team 2024-12-23, CAR Team 2025-01-06, CAR Team 2025-01-20, CAR Team 2025-02-03, CAR Team 2025-02-17
-
200
Closing a storage engine snapshot via abandonSnapshot() and WriteUnitOfWork::commit() invalidates the CollectionCatalog snapshot held by callers. There are no preventative measures to ensure that callers do not continue using a potentially invalid catalog snapshot, and this is dangerous.
This causes memory errors and segfaults like this one: SERVER-81331.
This is also likely a problem just for Lock-free-reads operations
- is depended on by
-
SERVER-95260 Investigate generational lock information
-
- Backlog
-
- related to
-
SERVER-93509 GlobalLock can potentially release the snapshot involuntarily
-
- Closed
-
-
SERVER-100333 Remove CollectionPtr(const Collection*) constructor
-
- Open
-
-
SERVER-95197 Investigate if it's possible to use consistent collections during compact
-
- Backlog
-
-
SERVER-94787 Avoid abandoning the snapshot explicitly in CollectionScan
-
- Backlog
-
-
SERVER-95260 Investigate generational lock information
-
- Backlog
-
-
SERVER-95194 Change checkAndHashCollection function to not use the unsafe CollectionPtr constructor
-
- Closed
-
-
SERVER-95195 Avoid instantiating CollectionPtr using unsafe constructor in index builds coordinator
-
- Closed
-
-
SERVER-95196 Avoid instantiating CollectionPtr using unsafe constructor in MultiIndexBlock
-
- Closed
-
-
SERVER-95308 Investigate if it's worth having a debug only primitive for reference counted pointers
-
- Closed
-
- split to
-
SERVER-94616 Add Absl::InlinedVector GDB pretty printer
-
- Backlog
-