Replace std::multimaps in Repl waiter lists

XMLWordPrintableJSON

    • 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.

            Assignee:
            Unassigned
            Reporter:
            Brad Cater
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: