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

xds: Wrong type for http_connection_manager in v3 resource #4136

Closed
pradeepmvn opened this issue Jan 6, 2021 · 3 comments
Closed

xds: Wrong type for http_connection_manager in v3 resource #4136

pradeepmvn opened this issue Jan 6, 2021 · 3 comments

Comments

@pradeepmvn
Copy link
Contributor

pradeepmvn commented Jan 6, 2021

What version of gRPC are you using?

1.34.0

What version of Go are you using (go version)?

1.15.3

What operating system (Linux, Windows, …) and version?

Linux

Minor issue with http_connection_manager @

V3HTTPConnManagerURL = "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v3.HttpConnectionManager"

This is causing validation failures and nacks on the xds response for envoy v3 resources. This should instead be..

V3HTTPConnManagerURL      = "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager"

Would be happy to submit a PR if it helps.. https://github.com/pradeepmvn/grpc-go/blob/90d23d53d5be6785267882cbe283461c27df071e/xds/internal/version/version.go#L48

@menghanl
Copy link
Contributor

menghanl commented Jan 6, 2021

Thanks for the issue. And yes, please send a PR.

We build Any manually in the test. And I don't remember the reason why.

ApiListener: &anypb.Any{
TypeUrl: version.V3HTTPConnManagerURL,
Value: mcm,
},

Can you try changing this to a MarshalAny and see if it would catch this bug?

@pradeepmvn
Copy link
Contributor Author

Not sure if i understood it, This wouldn't cause an issue in the unit tests as both (creation and comparison) use same constant. I found this issue while working on a v3 xds-controller . The control plane was sending a different type and grpc-go was failing while validating type with its constants.
Updating the test to this below caused a failure though..

ApiListener: &anypb.Any{
	TypeUrl: "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
	Value:   mcm,
},

I can update in the PR #4137 if needed

@pradeepmvn
Copy link
Contributor Author

Thanks for accepting PR.Fixed.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 7, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants