Uploaded image for project: 'Go Driver'
  1. Go Driver
  2. GODRIVER-3181

Port "Read responses in the background after an operation timeout" to master

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 2.0.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Go Drivers
    • Not Needed
    • 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?

      Context

      GODRIVER-3172 adds behavior that prevents connection churn (see this PR). However, it can't be cleanly cherry-picked because the PR includes a bunch of changes to make maxTimeMS work more correctly in the v1 branch, which will be resolved by this PR in master. We need to port just the "background read" behavior to master.

      Definition of done

      Port the following behaviors to the master branch before releasing v2.0.0:

      • Read server responses in a background goroutine after an operation timeout instead of closing the connection (see here and here).
      • Do not send maxTimeMS on Find and Aggregate operations. That's effectively equivalent to making the default cursor mode "ITERATION" rather than "CURSOR_LIFETIME" (see DRIVERS-2722).

      Pitfalls

            Assignee:
            matt.dale@mongodb.com Matt Dale
            Reporter:
            matt.dale@mongodb.com Matt Dale
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: