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

[LB policy API] change metadata mutation API to handle discarded picks #36968

Closed
wants to merge 7 commits into from

Conversation

markdroth
Copy link
Member

@markdroth markdroth commented Jun 18, 2024

Previously, metadata mutations were made by the picker directly, which meant that they would be applied even if the channel winds up discarding the pick due to the returned subchannel having been disconnected by the time the pick result is returned. This changes the API such that pickers return metadata mutations along with the pick result, so that the mutations won't get applied unless the pick result is actually used.

@markdroth markdroth added the release notes: no Indicates if PR should not be in release notes label Jun 18, 2024
@markdroth markdroth requested a review from ctiller June 18, 2024 19:57
src/core/load_balancing/lb_policy.h Show resolved Hide resolved
src/core/load_balancing/lb_policy.h Outdated Show resolved Hide resolved
@markdroth markdroth deleted the lb_metadata_api branch June 21, 2024 18:35
alto-ruby added a commit to alto-ruby/grpc that referenced this pull request Jul 11, 2024
sourabhsinghs pushed a commit to sourabhsinghs/grpc that referenced this pull request Sep 26, 2024
grpc#36968)

Previously, metadata mutations were made by the picker directly, which meant that they would be applied even if the channel winds up discarding the pick due to the returned subchannel having been disconnected by the time the pick result is returned.  This changes the API such that pickers return metadata mutations along with the pick result, so that the mutations won't get applied unless the pick result is actually used.

Closes grpc#36968

COPYBARA_INTEGRATE_REVIEW=grpc#36968 from markdroth:lb_metadata_api 2765da6
PiperOrigin-RevId: 645451869
paulosjca pushed a commit to paulosjca/grpc that referenced this pull request Nov 25, 2024
grpc#36968)

Previously, metadata mutations were made by the picker directly, which meant that they would be applied even if the channel winds up discarding the pick due to the returned subchannel having been disconnected by the time the pick result is returned.  This changes the API such that pickers return metadata mutations along with the pick result, so that the mutations won't get applied unless the pick result is actually used.

Closes grpc#36968

COPYBARA_INTEGRATE_REVIEW=grpc#36968 from markdroth:lb_metadata_api 2765da6
PiperOrigin-RevId: 645451869
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants