Populate Locker debugInfo with OperationContext state in getGlobalLockManager()->dump()

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.1.0-rc0, 9.0.1, 9.0.2
    • Affects Version/s: None
    • Component/s: None
    • None
    • Replication
    • Fully Compatible
    • v9.0, v8.3, v8.0, v7.0
    • Repl 2026-08-03
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      At the RSTL timeout in replication_coordinator_impl.cpp (v7.0), getGlobalLockManager()->dump() emits log id 20521 with per-holder desc, connectionId, client IP, and opid but the debugInfo field is empty in practice. Locker::setDebugInfo is called at commands.cpp:914 on the sync run path only, so it does not cover async paths, transactions, and background contexts. Attribution still requires cross-referencing slow-op logs by ctx after the fact.

      Populate debugInfo at dump time from each Locker's OperationContext / CurOp state:

      • ns
      • redacted command
      • queryHash
      • planCacheKey
      • planSummary
      • secs_running
      • numYields
      • storage.data.bytesRead

      This would help triage AF-895 failures.

            Assignee:
            Indy Prentice
            Reporter:
            Denis Trailin
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: