-
Type: Bug
-
Resolution: Fixed
-
Priority: Critical - P2
-
Affects Version/s: 6.0.16, 7.3.3, 7.0.12, 8.0.0-rc7
-
Component/s: None
-
Catalog and Routing
-
Fully Compatible
-
ALL
-
v8.0, v7.3, v7.0, v6.0
-
CAR Team 2024-06-10, CAR Team 2024-06-24, CAR Team 2024-07-08, CAR Team 2024-07-22
The timeseriesBucketsMayHaveMixedSchemaData collection option is:
- Only set on time-series
- Serialized as top-level fields (not part of the options sub-object)
- Defaulted to false at bucket collection creation time
Defaulting timeseriesBucketsMayHaveMixedSchemaData to false (bullet 3) is problematic because collections are not only created from scratch but may also be created due to data cloning in the following cases:
- Initial synchronization - when cloning a collection as part of adding a new node to a replica set
- Chunk migration - when cloning a collection as part of migrating sharded collection's data
- MovePrimary - when cloning a collection as part of changing its db primary in a sharded cluster
- Resharding (and moveCollection) - when cloning a collection as part of redistributing all its data
- Mongodump/ mongorestore: when restoring a cluster from a backup
This means that in all clusters starting from v5.2 (SERVER-60574), the value of timeseriesBucketsMayHaveMixedSchemaData may be incorrect.
The short term solution is to always pretend the option is set to true (not changing the actual value on the catalog but always behave as if it was).
SERVER-91195 will take care of designing a long-term solution for avoiding hitting the issue in the future.
- depends on
-
SERVER-91195 Provide a generic backportable solution not to miss top-level timeseries collection options
- Closed
- is caused by
-
SERVER-60574 Add a new catalog flag to indicate whether a time-series bucket has mixed-schema data
- Closed
- is related to
-
SERVER-91969 Test initial sync with mixed-schema time-series buckets
- Closed
- related to
-
SERVER-84699 Add a check to validation to check for mixed-schema buckets for time-series
- Closed
-
SERVER-92441 Complete TODO listed in SERVER-91194
- Closed