-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Error Handling
-
None
A wide variety of connectivity errors surface as timeouts, especially timeouts in server selection or MongoWaitQueueFullExceptions. The root cause is often buried in the inner exception, cached cluster topology (e.g. no primary), or stack trace (e.g. DNS problems). To a user, this can appear as an opaque wall of error information, which is difficult to parse and interpret.
We should examine common exception messages produced by our driver and surface salient information in the top-level error message. For example, when server selection fails, the top-level error should contain a human-readable description of the topology clearly identifying the state of each node, the last heartbeat time, the average RTT, tags, etc. At a glance the user should be able to see that the write operation tried to select a primary, the driver can't see the current primary, and no heartbeats have been received in the past 90 seconds.
- is duplicated by
-
CSHARP-3773 Provide more details in MongoWaitQueueFullException
- Closed
- related to
-
CSHARP-2919 Simplify server description string in timeout exceptions
- Backlog