Unify CurOp::yielded and ExecutionAdmissionContext::yielded

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Catalog and Routing
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      As part of SERVER-110397, we introduced a new recipient for tracking the number of yields an operation performs: ExecutionAdmissionContext. However, CurOp already stores this information. We should unify these into a single source of truth to avoid discrepancies and ensure future updates remain consistent.

      The complication is that ExecutionAdmissionContext tracks yields at the opCtx level, while CurOp tracks yields per nested operation stack. For example, consider a bulk write of 5 operations where each operation yields once:

      • CurOp would report 1 yield per individual write and 5 yields for the overall command.
      • ExecutionAdmissionContext, on the other hand, would always report 5 yields total, since it is tied to the entire opCtx.

            Assignee:
            Unassigned
            Reporter:
            Pol Pinol
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: