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

Set the default balancer name to round_robin #36

Merged
merged 2 commits into from
Aug 31, 2023

Conversation

jmacd
Copy link
Contributor

@jmacd jmacd commented Aug 31, 2023

Here at Lightstep we think that round_robin is a reasonably good default load balancer for OTel Arrow, while pick_first is what we get without setting something in this field. pick_first is not a reasonably good default load balancer for OTel Arrow. This change was documented in #29 already.

Fixes #32.

// which is not great for OTel Arrow exporters
// because it concentrates load at a single
// destination.
BalancerName: "round_robin",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the actual change. When the empty string is passed for BalancerName, gRPC ends up deciding pick_first in current collector builds, which ends up creating a bunch of streams to the same destination. I'll look into whether there are any popular client-side load balancers we should consider.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

@lquerel lquerel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jmacd jmacd merged commit f8af02a into open-telemetry:main Aug 31, 2023
1 check passed
@jmacd jmacd mentioned this pull request Aug 31, 2023
jmacd added a commit that referenced this pull request Aug 31, 2023
Release v0.3.0 includes:
- #24
- #29 
- #30 
- #36 

This release includes a BREAKING CHANGE 🛑 🛑 🛑 🛑 🛑.
We do not anticipate another of these, it merely renames/enumbers status
codes to match the gRPC status code numbering scheme. However, since
status code 0 stays the same, it will result in unusual looking errors
but should be safe to deploy the receivers first. Their CANCELED (i.e.,
SERVER_SHUTDOWN) will read as UNAVAILABLE, etc.

See #27.
@jmacd jmacd deleted the jmacd/change_default_balancer branch November 15, 2023 19:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Set the default gRPC load balancer to round_robin by default
2 participants