[SERVER-49908] Update config.localReshardingOperations.recipient.progress_applier document following each batch of resharding's oplog application Created: 25/Jul/20 Updated: 29/Oct/23 Resolved: 21/Oct/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Max Hirschhorn | Assignee: | Randolph Tan |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | PM-234-M2, PM-234-T-oplog-apply | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Sprint: | Security 2020-10-19, Sharding 2020-11-02 | ||||||||||||
| Participants: | |||||||||||||
| Description |
|
Store the largest _id value from the oplog entries applied from that donor shard in the config.localReshardingOperations.recipient.progress_applier document as the <progress {clusterTime, ts}> for that donor shard.
The largest _id value from the oplog entries applied from that donor shard should be used with {$match: {_id: {$gt: <progress {clusterTime, ts}>}}} to resume. When the donor shard's final oplog entry marker is applied, the config.localReshardingOperations.recipient.progress_applier document can be updated to store {_id: MaxKey} as an indicator that resuming is no longer necessary. |
| Comments |
| Comment by Githook User [ 21/Oct/20 ] |
|
Author: {'name': 'Randolph Tan', 'email': 'randolph@10gen.com', 'username': 'renctan'}Message: |
| Comment by Max Hirschhorn [ 12/Oct/20 ] |
|
renctan, based on the discussion in https://jira.mongodb.org/browse/SERVER-50964?focusedCommentId=3408918&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-3408918, I think we're changing the design (and still need to update the text in this ticket's description) to store progress for resharding's oplog applier in its own document separate from the document in config.localReshardingOperations.recipient. |