[SERVER-72616] Remove futex usage in favour of std::atomic/AtomicWord::wait on TicketBroker Created: 09/Jan/23 Updated: 03/Oct/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Jordi Olivares Provencio | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | tech-debt | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||
| Assigned Teams: |
Storage Execution
|
||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Description |
|
As part of These calls should go away in order to use C++20 atomics once we can use them in the codebase in order to enable cross-platform usage pof the class. Right now these calls block PriorityTicketHolder from being multi-platform since they are tied to Linux. Places affected by this have been tagged to this ticket in the comments. |
| Comments |
| Comment by Jordi Olivares Provencio [ 03/Oct/23 ] |
|
Agreed, there's sadly a lack of support for timeouts in the C++ standard version. |
| Comment by Mathias Stearn [ 03/Oct/23 ] |
|
I think we should make this depend on SERVER-81797 rather than SERVER-72064 because the feature that was standardized in C++20 doesn't support timeouts/deadlines, but we need them in this use case (and basically all other ones we have) |
| Comment by Haley Connelly [ 16/Feb/23 ] |
|
|