-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication, Sharding, Write Ops
-
Fully Compatible
-
Sharding 2020-09-21, Sharding 2020-10-05, Sharding 2020-10-19
- Add CollectionUpdateArgs::destinedRecipient member to store the destined recipient.
- Set CollectionUpdateArgs::destinedRecipient to the result of getDestinedRecipient() in update_stage.cpp.
- It is acceptable for the work on this ticket to use either oldObj or newObj when calling getDestinedRecipient(). There will be separate work to handle the case when an update is modifying the document's shard key value under the new shard key pattern.
- Call MutableOplogEntry::setDestinedRecipient() with the CollectionUpdateArgs::destinedRecipient member in MutableOplogEntry::makeUpdateOperation(). (for transactions)
- Call MutableOplogEntry::setDestinedRecipient() with the CollectionUpdateArgs::destinedRecipient member in replLogUpdate(). (for non-transactions)
- has to be done after
-
SERVER-49820 Allow setting destined recipient in oplog entries
- Closed
-
SERVER-49821 Define utility function for getting recipient which would own document under new shard key
- Closed