-
Type: Improvement
-
Resolution: Gone away
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
The implementation of IPv6 (CDRIVER-1972) first tries connecting with IPv6, and if the connect call has not completed by 250ms the connection for IPv4 is started.
When testing, we needed to simulate the behavior of a connect call not completing for some delay. The current solution is to have a the mock server bind to a port, and delay before calling listen. This prevents the client connect from completing, but does not refuse the connection on macOS. On Linux this doesn't work, and instead clients are refused immediately while the server is not listening.
An alternative is to use LD_PRELOAD hooks to swap out connect() and recv() with functions that have configurable delays. See Initial DNS Seedlist Discovery tests for more info on using LD_PRELOAD
- is related to
-
CDRIVER-1972 Support IPv6 only hostnames
- Development Complete