-
Type: Improvement
-
Resolution: Won't Do
-
Priority: Trivial - P5
-
None
-
Affects Version/s: None
-
Component/s: Connections
Currently when a hostname resolves to ipv4 and ipv6 hosts, the addresses are tried sequentially which may create long waits when the first address tried is not functioning. The happy eyeballs algorithm specifies roughly the following:
1. Attempt a connection to the first address that a hostname resolved to.
2. After 1 second, if the first connection hasn't succeeded, attempt a connection to the next address that the hostname resolved to.
RFC: https://tools.ietf.org/html/rfc6555
As part of this work we should consider how the driver handles hostnames with multiple A records or multiple AAAA records (e.g., for geo load balancing).
- related to
-
RUBY-1222 Driver does not properly fall back to IPv4 if IPv6 is not available
- Closed
-
RUBY-1241 Mongo ruby driver caches unreachable replica ipaddresses
- Closed
-
DRIVERS-402 Implement fallback to IP v4/IP v6 vice-versa
- Closed
-
RUBY-1285 Investigate whether ipv4 should still be forced when using localhost
- Closed