Deadline and maxTime compete for representing maximum operation latency

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Server Programmability
    • SP Prioritized List
    • None
    • 3
    • TBD
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      OperationContext defines two fields which track the operation's maximum allowable latency: _deadline and _maxTime. Their documentation suggests (roughly) that _deadline is the source of truth for latency enforcement and that _maxTime contains the user-supplied value which informs the choice of deadline. However, there are cases where calling code tries to influence _maxTime in order to affect operation latency, which results in unexpectedly long operation before timeout (e.g. SERVER-108581).

      Clarify what roles these fields play in documentation and in the API OperationContext exports. Ideally, collapse these (and potentially other) fields into a single concept of maximum operation latency to prevent future confusion.

              Assignee:
              Unassigned
              Reporter:
              James Bronsted
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated: