Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-13424

Investigate changes in SERVER-43945: Expose out of order latch acquisitions in serverStatus

      Description

      Downstream Change Summary

      This commit introduced an off-by-default section to serverStatus "latchAnalysis". This section tracks internal resource acquisition history with simple counters. See comments and https://github.com/mongodb/mongo/commit/86efdd6b047927d3a37577a6033bacc709c7ae89#diff-d22a4335737abd53429d1093cd829697R264-R298 for the data schema.

      Description of Linked Ticket

      Ideally, we would like to serialize Hierarchical Acquisition violations in a way that allows us to investigate and reproduce the violation. To that end, we want to know the Latch name and the ordering of violations. I propose the following opt-in section in serverStatus:

      {    ...,
          "latchAnalysis": {
              "hierarchicalAcquitionViolations": {
                  "<latchNameHere>": {
                      "onAcquire": 2,
                      "onRelease": 1
                  }
              }
          }
      }
      

      The top level "latchAnalysis" allows us to expand this segment with future statistics. The separation of "onAcquire" and "onRelease" into separate monotonically increasing counters will allow us to consider them as a pair to determine the period in which a potential deadlock happened as well as the total violations. This scheme deliberately leaves out the client name.

      Scope of changes

      Impact to Other Docs

      MVP (Work and Date)

      Resources (Scope or Design Docs, Invision, etc.)

            Assignee:
            kay.kim@mongodb.com Kay Kim (Inactive)
            Reporter:
            backlog-server-pm Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              3 years, 47 weeks, 1 day ago