-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Sharding
-
Fully Compatible
-
Sharding 2020-11-16, Sharding 2020-11-30
-
0
Store the largest _id value from the donor shard's cursor response in the config.localReshardingOperations.recipient.progress_txn_cloner document as the <progress lsid> for that donor shard.
{ _id: <donor's shard ID>, progress: <donor1's progress lsid>, }
The largest _id value from the donor shard's cursor response should be used with {$match: {_id: {$gt: <progress lsid>}}} to resume. Properties to ensure are being tested:
- The config.transaction cloner for resharding must not trigger a duplicate key error when resuming.
- The config.transaction cloner for resharding must not miss a document when resuming.
When the donor shard's cursor is fully exhausted, the config.localReshardingOperations.recipient.progress_txn_cloner document can be updated to store {_id: MaxKey} as an indicator that resuming is no longer necessary.
- is depended on by
-
SERVER-52922 Have config.transactions cloner for resharding resume from its progress lsid
- Closed
- is related to
-
SERVER-49908 Update config.localReshardingOperations.recipient.progress_applier document following each batch of resharding's oplog application
- Closed
- related to
-
SERVER-50964 Create temporary swappable promise construct in order to receive messages on the RecipientStateMachine
- Closed