Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-44155

Validate a subset of latches of all levels

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.3.3
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • Service Arch 2019-12-02, Service Arch 2019-12-16

      We should annotate the subset of latches in mongo::transport, mongo/executor, and mongo/util/concurrency. This involves the following:

      • Modify MONGO_MAKE_LATCH to have a variadic argument list that it passes to the Mutex constructor. This allows the last argument to optionally be a HierachicalAcquisitionLevel.
      • Add a HierarchicalAcquisitionSet to the LatchSetState decoration and add/remove using the LockListener from SERVER-42897
      • Change MONGO_MAKE_BASE_LATCH to set HierachicalAcquisitionLevel(0) instead of isBaseLatch=false
      • Change a collection of higher-level latches to have HierachicalAcquisitionLevels. These latches will most likely derive their levels from latches of a lower level than them.

            Assignee:
            rahul.sundararaman@mongodb.com Rahul Sundararaman (Inactive)
            Reporter:
            ben.caimano@mongodb.com Benjamin Caimano (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: