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
    • 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: