Details
-
Improvement
-
Resolution: Fixed
-
Major
-
None
-
None
-
None
-
1
-
SDK40: ARM /Graviton, JDBC, SDK42: ErMp v2, JDBC, Connect
Description
At present within the ForceConnect call (which reconnects all connections for purposes of picking up new certificates) any in flight operations are terminated with an ErrForcedReconnect. This is not great, and this logic is actually shared by what happens when the SDK becomes aware that the cluster has collections support when previously it didn't - the difference being that in flight requests are terminated with io.EOF.
What should actually happen is that we create new connections but allow the old connections to stay live until either they get terminated or their op list empties (i.e. all in flight requests are completed).
There is some consideration here of whether this will cause extra delay in returning to the user in the case that the node has been rebalanced out and is no longer active. In practise any delay should be minimal if at all - the connection itself will get EOF'd and trigger the same drain logic as would on SDK shutdown (and is currently used in this codepath).
Attachments
Issue Links
- blocks
-
GOCBC-992 Ability to change root certificate on the fly on agent
-
- Resolved
-