-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Server Serverless 2022-11-14, Server Serverless 2022-11-28
Construct _sourceDbAndUuid using the DatabaseName object on the sourceNss as opposed to the db string.
We'll need to send the tenantId in any commands run by the cloner -
1. Pass the return value of DatabaseNameUtil::serialize for the dbName for the collStats command. If both multitenancySupport and featureFlagRequireTenantId are enabled, send the tenantId in the $tenant field in the body of the collStats command.
2. To run the count command, the CollectionCloner calls DBClientBase::count. We'll need to correctly serialize the dbName we create from nsOrUuid. In _countCmd, we should set a $tenant field if nsOrUuid has a tenantId on the dbName.
3. The CollectionCloner calls DBClientBase::getIndexSpecs. Similar to the count command, we'll need to correctly serialize the dbName we create in DBClientBase_getIndexSpec, and set a $tenant field if nsOrUuid has a tenantId on the dbName in makeListIndexesCommand. Then, we'll need to correctly deserialize the "ns" field using NamespaceStringUtil::deserialize.
- depends on
-
SERVER-70430 Change DatabaseCloner to be tenant aware
- Closed
- has to be done before
-
SERVER-70704 Enable initial sync for the change collection
- Closed
-
SERVER-71154 Add cluster parameter initial sync tests for serverless replica sets
- Closed