[SERVER-67665] Disable oplog rewrites if featureFlagTimeSeriesChangeStreams is enabled Created: 29/Jun/22  Updated: 06/Jun/23

Status: Open
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Jennifer Peshansky (Inactive) Assignee: Backlog - Query Execution
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Query Execution
Participants:
Story Points: 1

 Description   

In SERVER-67666, when we create a change stream on a single timeseries collection, we will change the namespace to the underlying bucket collection under the hood, and everything can proceed as normal.

However, in this scenario, the oplog rewrites will all be wrong. Therefore, we need to disable oplog rewrites on timeseries collections if this feature flag is enabled.

If we're creating a change stream on a whole database or a whole cluster, then the change stream will involve multiple collections, which potentially includes regular collections as well as timeseries collections. To account for both, we need to selectively enable oplog rewrites for non-timeseries change streams. 

To do this, we need to add a buildTimeseriesOperationFilter branch in the oplog filter that allows all operations on timeseries collections through. They will be filtered post-transformation.


Generated at Thu Feb 08 06:08:44 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.