-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Migrate the wasm filter to use grpc client cache. #18486
Migrate the wasm filter to use grpc client cache. #18486
Conversation
Signed-off-by: chaoqin-li1123 <[email protected]>
can we split this into 2 PRs? If something goes wrong with one of them it'd be easier to roll back that way. |
Signed-off-by: chaoqin-li1123 <[email protected]>
Let's have Piotr on the wasm team look at this first then I can stamp it. Looks straightforward enough. |
@PiotrSikora can you PTLAL? |
I'm confused by this change. Existing option ( Shouldn't the migration path be (1) "disabled by default" (using runtime features), (2) "enabled by default" (using runtime features), (3) "enabled in the code" with runtime feature removed? Instead, we're migrating from "disabled by default" to "enabled in the code" without the "enabled by default" step. What's the reason for that? |
/wait |
The reason why we are not going through the standard runtime control procedure is that the there are many filters that use grpc cache, so this is not exactly a feature that can be controlled by a single runtime and we would like to enable grpc client cache in filters one by one. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The reason why we are not going through the standard runtime control procedure is that the there are many filters that use grpc cache, so this is not exactly a feature that can be controlled by a single runtime and we would like to enable grpc client cache in filters one by one.
I don't buy this argument (there is plenty of runtime features that affect multiple filters or Envoy as a whole), but it looks that few other filters were already migrated to AlwaysCache
, so feel free to merge this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'd like someone outside Google, e.g. @lizan or @mattklein123 to just sanity-check this, but lgtm.
This pull request has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in 7 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions! |
@envoyproxy/senior-maintainers can we get a non-googler senior maintainer review for this? Thanks! |
@jmarantz you tagged this as waiting. Is it actually waiting? If it's pure WASM we don't need a senior maintainer pass I think we just need Piotr sign off. |
But also it'll get more attention if it's not waiting, which of course exempts it from all the tooling :-/ |
@alyssawilk it's actually completely unrelated to Wasm, it's about gRPC client cache in Envoy, and it's been waiting forever since we cannot agree what's the correct process for migrating this runtime feature (see earlier comments). |
I actually have another pr that flip the flag without enabling one filter each time.#19253 |
Ah great. So I think the correct thing to do here is flip the runtime flag to true, then once it has been true for the standard period we can delete the flag, and switch all the call points to cache by default. @chaoqin-li1123 does this sound good to do and if so do you want to close this PR for now since the flags process will take a while? |
Sounds good to me. I will close the PR. |
Signed-off-by: chaoqin-li1123 [email protected]
Commit Message: Use AlwaysCache option for grpc client in ratelimit filter and wasm filter
Additional Description: NA
Risk Level: Medium, may have lifetime issue.
Testing: NA