-
Type: Improvement
-
Resolution: Fixed
-
Priority: Unknown
-
Affects Version/s: None
-
Component/s: None
-
None
-
Go Drivers
-
Not Needed
-
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
- depends on
-
GODRIVER-2348 Make CSOT feature-gated behavior the default
- Closed
-
GODRIVER-3193 Don't use "background reads" when the CSOT doesn't send "maxTimeMS"
- Closed
- is related to
-
GODRIVER-3172 Read responses in the background after an operation timeout
- Closed