-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Open
Labels
Area: Resolvers/BalancersIncludes LB policy & NR APIs, resolver/balancer/picker wrappers, LB policy impls and utilities.Includes LB policy & NR APIs, resolver/balancer/picker wrappers, LB policy impls and utilities.Type: FeatureNew features or improvements in behaviorNew features or improvements in behavior
Description
Please see the FAQ in our main README.md before submitting your issue.
Use case(s) - what problem will this feature solve?
Presently, when we create a custom load balancer, it cannot access the endpoint or locality weights because they are keyed by an internal struct, so we cannot read these from Attributes. Similarly, the "metadata" returned from EDS response is also not exposed. As a result, the custom load balancer cannot make decision based on weights or metadata
Proposed Solution
Expose at least the weights (locality weight and endpoint weight) so they can be read by custom load balancer; there is a precedence in ringash.go - clients can use ringhash.HashKey(endpoint) to get this info. We can have something similar for weights.
Alternatives Considered
There are no clean or viable alternatives for this missing data.
Additional Context
NA
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Area: Resolvers/BalancersIncludes LB policy & NR APIs, resolver/balancer/picker wrappers, LB policy impls and utilities.Includes LB policy & NR APIs, resolver/balancer/picker wrappers, LB policy impls and utilities.Type: FeatureNew features or improvements in behaviorNew features or improvements in behavior