-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Component/s: Initial DNS Seedlist Discovery
The initial DNS seedlist discovery specification outlines how to query DNS, however it does not provide guidance regarding retrying DNS queries on failure.
Having the DNS query fail can result in user-facing issues as:
- Failed SRV queries will result in no seed list being available at all
- Failed TXT queries can results in the authSource missing (which will result in the database in the connection string being used for authentication), or loadBalanced=true missing if URI is for a serverless cluster
In the cases where DNS seedlists are used connections should not fail on the first occurrence of a connection failure (ex: querySrv ECONNREFUSED), but should instead be retried for a configurable period as the error may be transient.
- depends on
-
NODE-6451 Implement retry on DNS failure
- Backlog
- is related to
-
DRIVERS-2569 Hybrid SRV connection string format for faster initial discovery
- Backlog
- related to
-
PYTHON-3636 MongoClient should perform SRV resolution lazily
- Investigating
- split to
-
CDRIVER-5542 Retry on DNS failure
- Blocked
-
CSHARP-5058 Retry on DNS failure
- Blocked
-
CXX-3015 Retry on DNS failure
- Blocked
-
GODRIVER-3196 Retry on DNS failure
- Blocked
-
JAVA-5442 Retry on DNS failure
- Blocked
-
MOTOR-1309 Retry on DNS failure
- Blocked
-
NODE-6129 Retry on DNS failure
- Blocked
-
PHPLIB-1441 Retry on DNS failure
- Blocked
-
PYTHON-4393 Retry on DNS failure
- Blocked
-
RUBY-3458 Retry on DNS failure
- Blocked
-
RUST-1927 Retry on DNS failure
- Blocked