-
Type: Spec Change
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Component/s: Initial DNS Seedlist Discovery
-
None
-
Needed
As part of initial seedlist and discovery, drivers are required to query TXT records for certain default options. Because of the requirement that the MongoClient constructor perform no I/O, this can, at worst, defer the processing of URI and user options until the first instance of I/O on the MongoClient. Further complicating this is that any userDefined options specified locally must override the TXT record options.
For example: the authSource is currently an option that can be set in the TXT record. Because of this:
1. A driver cannot be fully aware of the credentials of the user until I/O is performed.
2. A driver needs to track awareness of whether or not the current value of authSource is a user specified value or a default value.
I believe some drivers get around this problem by performing the TXT lookup during MongoClient construction.
We should clarify:
1. Can drivers perform TXT lookup during MongoClient construction
2. Must drivers assume that any option in the future can be set via TXT record?