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

Updating LbEndpoint metadata causes connection churn #35029

Open
thejas-stripe opened this issue Jul 2, 2024 · 4 comments
Open

Updating LbEndpoint metadata causes connection churn #35029

thejas-stripe opened this issue Jul 2, 2024 · 4 comments

Comments

@thejas-stripe
Copy link

thejas-stripe commented Jul 2, 2024

If you are reporting any crash or any potential security issue, do not
open an issue in this repo. Please report the issue via emailing
[email protected] where the issue will be triaged appropriately.

Title: Updating LbEndpoint metadata causes connection churn

Description: When envoy receives a ClusterLoadAssignment with same endpoints but with updated metadata , envoy tearsdown existing connection and re-establishes a new one with all the endpoints. Is this the expected ?
Or is there a relation with any other configuration which causes this connection churn ?
[optional Relevant Links:]

Any extra documentation required to understand the issue.

@thejas-stripe thejas-stripe added the triage Issue requires triage label Jul 2, 2024
@htuch
Copy link
Member

htuch commented Jul 2, 2024

Is this LbEndpoint metadata or LocalityLbEndpoints?

@htuch htuch added investigate Potential bug that needs verification area/load balancing area/connection area/metadata area/cluster and removed triage Issue requires triage labels Jul 2, 2024
@thejas-stripe
Copy link
Author

@htuch
Its LbEndpoint metadata - https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/endpoint/v3/endpoint_components.proto#config-endpoint-v3-lbendpoint

I'm updating the filter_metadata in the metadata structure, which causes connection churn.

@thejas-stripe
Copy link
Author

The metada value is similar to this

old

"metadata": {
           "filter_metadata": {
            "envoy.lb": {
             "filed1": "value1",
            }
           }

Updated metadata will look like this

"metadata": {
           "filter_metadata": {
            "envoy.lb": {
             "filed1": "value1",
             "field2": "value2"
            }
           }

@htuch
Copy link
Member

htuch commented Jul 4, 2024

@cpakulski @adisuissa

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants