-
Type: Task
-
Resolution: Won't Do
-
Priority: Major - P3
-
None
-
Affects Version/s: 6.0.14, 7.3.0-rc7, 7.0.8
-
Component/s: Sharding
-
None
-
Catalog and Routing
-
v8.0, v7.3, v7.2, v7.1, v7.0, v6.0
-
Sharding EMEA 2023-08-21
In order to allow a Mongosync migration to be reversible, the setUserWriteBlockMode command was added to MongoDB.
As part on the Mongosync many-to-one epic REP-1989, users will be allowed to perform multiple migrations from multiple source clusters into a single destination cluster at the same time, as long as each migration's collections are mutually exclusive.
In order to allow individual migrations to be reversible, we will need to enable UserWriteBlockMode on the subset of collections on the destination that are not included in the reverse-migration or disable UserWriteBlockMode on the subset of collections on the destination that are included in the reverse-migration.
Ideally, the enableUserWriteBlockMode and disableUserWriteBlockMode commands will be added. They would take a list of namespaces "databaseName.collectionName" that we want to either enable or disable userWriteBlockMode on. Running the enable command on a namespace that already has userWriteBlockMode enabled should not do anything, likewise for the disable command.
The list of namespaces could include both sharded and unsharded namespaces.