-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
-
ALL
-
-
QE 2022-11-28, QE 2022-12-12, QE 2022-12-26, QE 2023-01-09, QE 2023-01-23, Sharding EMEA 2022-10-31
-
105
Users should never create collections with the 'system.buckets' prefix. However, today nothing prevents it (SERVER-61589)
On a non time-series sharded collection <dbName>.<collName>, if the user manually creates the <db>system.buckets.<collName> collection, reads on the sharded collections will crash the server. This is because this logic will choose the bucket namespace to install on the OperationShardingState alongside the attached shardVersion. Then, when calling getOwnershipFilter, the namespace <db>.<collName> won't be found on the OperationShardingState and and invariant will be tripped.
One possible fix is to prevent users from creating the buckets collection (SERVER-61589). This tickets is to decide whether to go with that solution, or fix it in some different way.
Edit: This ticket is to fix the nss rewrite done on service_entry_point so that looks at the TimeseriesOptions to confirm whether it is really a timeseries collection.
- related to
-
SERVER-61589 Disallow users from creating collections with 'system.buckets' prefix
- Closed