Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pickfirst: Interleave IPv6 and IPv4 addresses for happy eyeballs #7742

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

arjan-bal
Copy link
Contributor

@arjan-bal arjan-bal commented Oct 15, 2024

This PR adds the address interleaving mentioned in A61

In the flattened list, interleave addresses from the two address families, as per RFC-8305 section 4. Doing this on the flattened address list ensures the best behavior if only one of the two address families is working.

RELEASE NOTES:

  • The experimental pickfirstleaf LB policy interleaves IPv4 and IPv6 address as described in RFC-8305 section 4 before starting connection attempts.

@arjan-bal arjan-bal added the Type: Feature New features or improvements in behavior label Oct 15, 2024
@arjan-bal arjan-bal added this to the 1.68 Release milestone Oct 15, 2024
Copy link

codecov bot commented Oct 15, 2024

Codecov Report

Attention: Patch coverage is 98.00000% with 1 line in your changes missing coverage. Please review.

Project coverage is 79.84%. Comparing base (ad81c20) to head (7b42222).
Report is 9 commits behind head on master.

Files with missing lines Patch % Lines
balancer/pickfirst/pickfirstleaf/pickfirstleaf.go 97.95% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #7742      +/-   ##
==========================================
- Coverage   82.07%   79.84%   -2.24%     
==========================================
  Files         362      365       +3     
  Lines       28116    36409    +8293     
==========================================
+ Hits        23075    29069    +5994     
- Misses       3839     6153    +2314     
+ Partials     1202     1187      -15     
Files with missing lines Coverage Δ
internal/testutils/balancer.go 84.40% <100.00%> (+0.97%) ⬆️
balancer/pickfirst/pickfirstleaf/pickfirstleaf.go 88.83% <97.95%> (-0.06%) ⬇️

... and 317 files with indirect coverage changes

@arjan-bal arjan-bal force-pushed the happy-eyeballs-interlease-addresses branch from b9b602c to f68c03d Compare October 15, 2024 19:26
@arjan-bal arjan-bal force-pushed the happy-eyeballs-interlease-addresses branch from e4a4300 to 7b42222 Compare October 19, 2024 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Feature New features or improvements in behavior
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants