-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 8.0.0-rc0
-
Component/s: None
-
None
-
Catalog and Routing
-
Fully Compatible
-
ALL
-
v8.0
-
CAR Team 2024-08-19
As part of SERVER-90992 we discovered a bug in the GlobalLock implementation that can result in reading a potentially invalid reference to a collection. The bug is as follows:
- Perform an acquisition on a collection A. Call it acqA.
- Perform an acquisition on a collection B. Call it acqB.
- Now make acqA go out of scope.
This will result in abandoning the WT snapshot used because the GlobalLock used in acqA believes it is the outermost one for the global lock. This will result in acqB holding a potentially dangling reference to its collection if we're in a lock-free read since it will destroy the stashed catalog.
- is caused by
-
SERVER-81190 Support tracking "simple" unsharded collections in the sharding catalog
- Closed
- is related to
-
SERVER-90992 Collection acquisitions have no enforcement of snapshot stability
- In Code Review