[SERVER-66795] Improve throttling on migration batches issued by the Balancer Created: 26/May/22 Updated: 29/Oct/23 Resolved: 09/Jun/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 6.1.0-rc0, 6.0.6 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Pierlauro Sciarelli | Assignee: | Allison Easton |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | balancer-perf-improvement, shardingemea-qw | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Backport Requested: |
v6.0
|
||||
| Sprint: | Sharding EMEA 2022-06-13 | ||||
| Participants: | |||||
| Story Points: | 6 | ||||
| Description |
|
Nowadays, the balancer interleaves consecutive batches of migrations issued by its main thread with a fixed delay of one second to avoid starving CRUD operations with continuous cache invalidations on shards/routers. While this solution works, it may introduce excessive or unnecessary delays (as the time spent computing the batch of migrations within each round may be already enough for avoiding the problem). A more efficient alternative would consist in measuring the time between consecutive balancer rounds and applying a variable throttling only when required (similarly to what has been already implemented in the secondary thread of the balancer). |
| Comments |
| Comment by Githook User [ 14/Apr/23 ] |
|
Author: {'name': 'Allison Easton', 'email': 'allison.easton@mongodb.com', 'username': 'allisoneaston'}Message: (cherry picked from commit abfa534efdee117fddbd91bb284f2e7b0f327c12) |
| Comment by Githook User [ 09/Jun/22 ] |
|
Author: {'name': 'Allison Easton', 'email': 'allison.easton@mongodb.com', 'username': 'allisoneaston'}Message: |