-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Component/s: Load Balancer
-
None
-
Needed
The load balancer spec currently states:
If a getMore fails with a network error, drivers MUST leave the connection pinned to the cursor.
however, we have tests which prove that we also do not unpin on non-network errors. I think the spec language should be changed to state that we should not unpin on any error.
Additionally, drivers which have lazy cursors (like the Node driver) may need to distinguish pinning rules between cursor initialization and iteration. I suggest an update to state that all errors on initialization should not pin, while errors on getMore should follow the rules above.