[SERVER-52921] Integrate config.transactions cloner for resharding into RecipientStateMachine Created: 18/Nov/20 Updated: 29/Oct/23 Resolved: 17/Feb/21 |
|
| 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.5, PM-234-T-config-txn-clone | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||
| Sprint: | Sharding 2021-02-22 | ||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||
| Story Points: | 1 | ||||||||||||||||||||||||||||||||||||
| Description |
|
The RecipientStateMachine should manage a task executor for the config.transaction instances to be scheduled on. This may most easily be achieved by having the cloneConfigTxnsForResharding() function take a TaskExecutor as part of its input and scheduling tasks on the same ScopedTaskExecutor the RecipientStateMachine instance is running on. |
| Comments |
| Comment by Githook User [ 17/Feb/21 ] |
|
Author: {'name': 'Randolph Tan', 'email': 'randolph@10gen.com', 'username': 'renctan'}Message: |
| Comment by Max Hirschhorn [ 18/Nov/20 ] |
I realized after creating this ticket that unlike the ReshardingCollectionCloner, ReshardingOplogFetcher, and ReshardingOplogApplier, each config.transactions cloner is going to need a dedicated thread unless we address the blocking wait it does around prepared transactions. I think integrating the config.transactions cloner into RecipientStateMachine should wait until |