• Type: Icon: Sub-task Sub-task
    • Resolution: Unresolved
    • Priority: Icon: Unknown Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • 0
    • 2
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      Use Case

      As a... Driver engineer
      I want... to add logic to track the timing of connection checkout and server selection 
      So that... the driver can be CSOT spec compliant in those areas

      User Impact

      • None, feature is gated behind internal option

      Dependencies

      • Remainder of CSOT implementation depends on this

      Unknowns

      • questions that need to be answered to determine implementation

      Acceptance Criteria

      Implementation Requirements

      • create a Timeout at operation construction time if CSOT is enabled to create a 1:1 relationship between a Timeout and a non-cursor operation
      • Implement correct CSOT logic for server selection and connection checkout
      • Note - specifically not adding logic to cancel connection creation (see DRIVERS-2347 for more details)

      Testing Requirements

      • Implement Server Selection prose tests
      • Spec unit tests:
        • Operations should ignore waitQueueTimeoutMS if timeoutMS is also set.
        • If timeoutMS is set for an operation, the remaining timeoutMS value should apply to connection checkout after a server has been selected.
        • If timeoutMS is not set for an operation, waitQueueTimeoutMS should apply to connection checkout after a server has been selected.

      Documentation Requirements

      • None, defer to release of CSOT

      Follow Up Requirements

      • Note that this neither subtask nor its parent ticket will address the paragraphs in the Command execution section of the CSOT spec that pertain to writing and reading from sockets. These will be addressed in NODE-5682

            Assignee:
            warren.james@mongodb.com Warren James
            Reporter:
            warren.james@mongodb.com Warren James
            Aditi Khare
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: