Major - P3
- A customer has multiple mongos
- 1 mongos is in a failure state and cannot be connected to for authentication
- detect an unhealthy mongos and reroute operations to healthy sibling mongos (DRIVERS-1571)
- retry authentication against unhealthy member (DRIVERS-1476)
So I reviewed https://github.com/mongodb/specifications/blob/master/source/auth/auth.rst#authentication-handshake as part of opening this ticket and our spec needs some other tweaks
1) there's a 'todo: errors" section which is not completely written (I guess?)
2) we probably shouldn't have email@example.com as an example since that is our CEOs name/email?
3) it might be nice to have a flowchart example of some kind since even after reading a lot of text I still couldn't decide what happens in the event of authentication failure, or if retries happen, or for how long those retries are going to happen.