-
Notifications
You must be signed in to change notification settings - Fork 233
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
Increase plugin grpc message size to 64mb #650
Conversation
This should only be set for the |
@paultyng AFAICT it's only available on the entire server as it impacts the channel itself, so individual proto handling can't be changed |
It looks like the default for send is already The only place the Terraform CLI client overrides the 4mb limit is the receive for |
I believe this is the only override in the CLI: https://github.com/hashicorp/terraform/blob/0c0ea09546d565daeca9c291d545aff5884824f6/plugin/grpc_provider.go#L136 |
Thanks @paultyng, you're right that the default for send is I've tested this fix in my provider here, without it, in the case of large kubernetes CRDs the grpc message size failure message appears (as reported by users here gavinbunney/terraform-provider-kubectl#59). Happy to update this PR to only have the change for receive? |
If non- That being said, I'm not opposed to a more generic hook for you to override gRPC options. Also, unsure if you are aware, but we've recently releases a lower level SDK (terraform-plugin-go) that allows usage of the "any" type for attributes. Which means instead of sending raw YAML, you could |
Another thought I had was having a user roundtrip via the |
Hi @gavinbunney 👋 Thank you for submitting this. The |
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active contributions. |
This increase the plugin server grpc messages size to reflect the same values as the client (hashicorp/terraform#20879).
Without this change, grpc will fail sending messages of larger than 4mb, regardless of the client setting already done in Terraform: