[SERVER-79881] Integrate WaitForMajorityService with ReplicationCoordinator Created: 09/Aug/23  Updated: 05/Feb/24

Status: In Progress
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Jack Mulrow Assignee: Scott Li
Resolution: Unresolved Votes: 0
Labels: former-quick-wins, repl-shortlist
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-79785 WaitForMajorityService can be a bottl... Closed
Related
related to SERVER-79785 WaitForMajorityService can be a bottl... Closed
Assigned Teams:
Replication
Sprint: Repl 2024-01-08, Repl 2024-01-22, Repl 2024-02-05, Repl 2024-02-19
Participants:

 Description   

The WaitForMajorityService was introduced in 4.4 (in SERVER-40785) to allow asynchronously waiting for majority write concern. The service holds a queue of opTimes to wait for and has a background thread that periodically waits for the lowest time.

As of SERVER-43135, the ReplicationCoordinator has a futures based API to wait for write concern internally, so it's possible we can refactor the WaitForMajorityService to use that API. This could simplify the service and likely improve its performance, since the current implementation scales poorly with many requests - see SERVER-79785.


Generated at Thu Feb 08 06:42:09 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.