-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Generate 3.8.0 changelog #13644
Generate 3.8.0 changelog #13644
Conversation
Several places in the gateway need a node-level lock, some of them used slightly different implementations. This refactor brings consistency in the ways we do node-level locking by using the same implementation (concurrency.with_worker_mutex) everywhere.
### Summary @jeremyjpj0916 mentions in discussion thread: #13513 That Kong may work unexpectedly or require write node for general operation. I did quick search and found couple of missing places where we don't give "read" as a parameter for readonly operations. This may not fix all the issues that we have for how resilient Kong nodes are for write node being offline, but at least it is obvious to fix these at first. Signed-off-by: Aapo Talvensaari <aapo.talvensaari@gmail.com>
when deck integration tests fail, a request for changes was created in the PR. This was often ignored: let's fail CI instead.
… a key ### Summary Our docs state here: https://docs.konghq.com/gateway/latest/kong-enterprise/secrets-management/reference-format/#secret-key > If secret key ends with /, then it is not considered as a Secret Key but as a part of Secret Id. > The difference between Secret Key and Secret Id is that only the Secret Id is sent to vault API, > and the Secret Key is only used when processing The logic was not working correctly because it was incorrectly assuming what `require("socket.url").parse_path` did, that is: ```lua parse_path("/a") -- { "a", is_absolute = 1 } ``` ```lua parse_path("/a/") -- { "a", is_absolute = 1, is_directory = 1 } ``` ```lua parse_path("/a/b") -- { "a", "b", is_absolute = 1 } ``` ```lua > parse_path("/a/b/") -- { "a", "b", is_absolute = 1, is_directory = 1} ``` This fixes it. Signed-off-by: Aapo Talvensaari <aapo.talvensaari@gmail.com>
### Summary Less pressure to garbage collector. Signed-off-by: Aapo Talvensaari <aapo.talvensaari@gmail.com>
FTI-5775 --------- Co-authored-by: Aapo Talvensaari <aapo.talvensaari@gmail.com>
It is one of the serial refactors of helpers.lua https://konghq.atlassian.net/browse/KAG-5233
…r old plugin compatibility test (#13536) When a new minor version is just bumped, the tag x.x.0 doesn't exist yet. So we change it to use the starting point of the previous branch instead of the tag x.x.0 of the previous branch.
The way this latency is measured in the code is not granular enough to guarantee that it will always produce a non-zero result, so the assertion is changed from `>` to `>=`.
…resurrect_ttl (#13471) This PR fixes an issue that rotate_secret may flush a secret value with NEGATIVE_CACHED_VALUE when vault backend is down and a secret value stored in the shared dict has passed its ttl and hasn't finished consuming its resurrect_ttl. TLDR; this issue happens easily when a reference is being used via the vault PDK function in custom codes(serverless functions, custom plugins, etc.), and some of the worker processes may not be triggered via the service/routes that use these custom codes, and these worker processes do not hold a valid LRU cache for the secret value The issue was first reported in FTI-6137. --------- Signed-off-by: Aapo Talvensaari <aapo.talvensaari@gmail.com> Co-authored-by: Aapo Talvensaari <aapo.talvensaari@gmail.com>
### Summary Gladly we found an issue where merge conflict in EE was wrongly resolved (by me, @bungle, most likely) before we released. Thanks to @nowNick for finding it out. Here is the missing tests that hopefully helps us in a future to spot it better. Signed-off-by: Aapo Talvensaari <aapo.talvensaari@gmail.com>
…3981db35 (#13567) * chore(deps): bump ngx_wasm_module to 96b4e27e10c63b07ed40ea88a91c22f23981db35 Changes since 9c95991472ec80cdb1681af203eba091607b5753: * 96b4e27 - chore(deps) bump Wasmtime to 23.0.2 * 353bb29 - chore(deps) bump Nginx to 1.27.1 * 3c2800b - misc(*) minor fixes to address a few warnings * 5743252 - misc(http) minor fix in debug logs * 7a598ef - misc(ffi) localize 'ffi.*' functions * fa4a249 - perf(http) stash local response in request pool * d6aaf2e - feat(proxy-wasm) allow cancelling background ticks * 646459b - docs(proxy-wasm) specify a 'dispatch_http_call' disparity * 624307a - chore(deps) bump Wasmtime to 23.0.1 * 77347e3 - misc(*) various minor fixes * b8aae2c - chore(ci) bump OpenResty to 1.25.3.2 * chore(deps): bump Wasmtime to 23.0.2 --------- Co-authored-by: team-gateway-bot <team-gateway@konghq.com> Co-authored-by: Michael Martin <michael.martin@konghq.com>
Applies the same fix as 58c580f to similar tests.
…cket name limit (#13557)
* fix(ai): fix preserve route_type broken issue in refactor
…eir values mismatch (#13565) * fix(*): reject config if both deprecated and new field defined and their values mismatch This commit adds a validation to deprecated fields that checks if in case both new field and old field were defined - their values must match. Note that if one of the fields is null then the validation passes even if the other is not null. KAG-5262 * fixup! fix(*): reject config if both deprecated and new field defined and their values mismatch PR fixes * fixup! fix(*): reject config if both deprecated and new field defined and their values mismatch PR fixes 2
1cb063a
to
b043022
Compare
|
|
Generate 3.8.0 changelog