[SERVER-54408] Rewrite AsyncTry-until to not use future recursion Created: 08/Feb/21 Updated: 29/Oct/23 Resolved: 16/Feb/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Internal Code |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Matthew Saltz (Inactive) | Assignee: | Matthew Saltz (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||
| Sprint: | Service Arch 2021-02-22 | ||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||
| Description |
|
Due to SERVER-53500, using the AsyncTry-until utility can lead to an invariant being hit in unpredictable places. Since SERVER-53500 will be difficult to diagnose and potentially unfeasible to fix, so in the meantime we can rewrite the AsyncTry utility to not use recursive futures, which are responsible for hitting the invariant. I've done a POC and confirmed this fixes the issues seen by |
| Comments |
| Comment by Githook User [ 16/Feb/21 ] |
|
Author: {'name': 'Matthew Saltz', 'email': 'matthew.saltz@mongodb.com', 'username': 'saltzm'}Message: |