-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Replication
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Replacing std::multimap<K, V> with std::map<K, std::vector<V>> in Repl waiter lists gives a performance improvement of ~10% on UnfulfilledWaiter tests while being a ~5% performance regression on AddWaiter in a simple POC (raw data):
test | delta |
BM_UnfulfilledWaiter/3/1000/min_time:0.050 | 9.26% |
BM_UnfulfilledMajorityWaiter/3/1000/min_time:0.050 | 10.88% |
BM_AddWaiter/1000/1/min_time:0.050 | -5.08% |
As in SERVER-90213, no perf workload is affected by this change (perf patch). Nevertheless, it improves upon the work in that ticket.
- is related to
-
SERVER-90213 Minimize the number of _doneWaitingForReplication_inlock calls needed to wake up writeConcern waiters
-
- Closed
-