From 6c512dabdcfa83537101cf5f4536f5244ed4206d Mon Sep 17 00:00:00 2001 From: Mike Date: Wed, 12 Nov 2025 06:15:43 -0800 Subject: [PATCH] Secrets: Fix MariaDB syntax error due to unsupported CTE syntax (#111610) (#113690) * Secrets: fix MariaDB syntax error due to unsupported CTE syntax (#111610) * parametrize guid/created columns and re-generate test fixtures --------- Co-authored-by: Matheus Macabu --- .../data/secure_value_lease_inactive.sql | 27 +++++++++---------- ...re_value_lease_inactive-lease inactive.sql | 25 +++++++++-------- ...re_value_lease_inactive-lease inactive.sql | 25 +++++++++-------- ...re_value_lease_inactive-lease inactive.sql | 25 +++++++++-------- 4 files changed, 49 insertions(+), 53 deletions(-) diff --git a/pkg/storage/secret/metadata/data/secure_value_lease_inactive.sql b/pkg/storage/secret/metadata/data/secure_value_lease_inactive.sql index 3b95aed3000..cabaaed9aa2 100644 --- a/pkg/storage/secret/metadata/data/secure_value_lease_inactive.sql +++ b/pkg/storage/secret/metadata/data/secure_value_lease_inactive.sql @@ -1,20 +1,19 @@ -WITH to_update AS ( - SELECT guid FROM ( - SELECT - guid, - ROW_NUMBER() OVER (ORDER BY created ASC) AS rn - FROM {{ .Ident "secret_secure_value" }} - WHERE +UPDATE + {{ .Ident "secret_secure_value" }} +SET + {{ .Ident "lease_token" }} = {{ .Arg .LeaseToken }}, + {{ .Ident "lease_created" }} = {{ .Arg .Now }} +WHERE {{ .Ident "guid" }} IN ( + SELECT {{ .Ident "guid" }} FROM ( + SELECT + {{ .Ident "guid" }}, + ROW_NUMBER() OVER (ORDER BY {{ .Ident "created" }} ASC) AS rn + FROM {{ .Ident "secret_secure_value" }} + WHERE {{ .Ident "active" }} = FALSE AND {{ .Arg .Now }} - {{ .Ident "created" }} > {{ .Arg .MinAge }} AND {{ .Arg .Now }} - {{ .Ident "lease_created" }} > {{ .Arg .LeaseTTL }} ) AS sub WHERE rn <= {{ .Arg .MaxBatchSize }} ) -UPDATE - {{ .Ident "secret_secure_value" }} -SET - {{ .Ident "lease_token" }} = {{ .Arg .LeaseToken }}, - {{ .Ident "lease_created" }} = {{ .Arg .Now }} -WHERE guid IN (SELECT guid FROM to_update) -; \ No newline at end of file +; diff --git a/pkg/storage/secret/metadata/testdata/mysql--secure_value_lease_inactive-lease inactive.sql b/pkg/storage/secret/metadata/testdata/mysql--secure_value_lease_inactive-lease inactive.sql index 52d84085dc8..b93f38c4b45 100755 --- a/pkg/storage/secret/metadata/testdata/mysql--secure_value_lease_inactive-lease inactive.sql +++ b/pkg/storage/secret/metadata/testdata/mysql--secure_value_lease_inactive-lease inactive.sql @@ -1,20 +1,19 @@ -WITH to_update AS ( - SELECT guid FROM ( - SELECT - guid, - ROW_NUMBER() OVER (ORDER BY created ASC) AS rn - FROM `secret_secure_value` - WHERE +UPDATE + `secret_secure_value` +SET + `lease_token` = 'token', + `lease_created` = 10 +WHERE `guid` IN ( + SELECT `guid` FROM ( + SELECT + `guid`, + ROW_NUMBER() OVER (ORDER BY `created` ASC) AS rn + FROM `secret_secure_value` + WHERE `active` = FALSE AND 10 - `created` > 300 AND 10 - `lease_created` > 30 ) AS sub WHERE rn <= 10 ) -UPDATE - `secret_secure_value` -SET - `lease_token` = 'token', - `lease_created` = 10 -WHERE guid IN (SELECT guid FROM to_update) ; diff --git a/pkg/storage/secret/metadata/testdata/postgres--secure_value_lease_inactive-lease inactive.sql b/pkg/storage/secret/metadata/testdata/postgres--secure_value_lease_inactive-lease inactive.sql index 9c0d824458f..e490897ac97 100755 --- a/pkg/storage/secret/metadata/testdata/postgres--secure_value_lease_inactive-lease inactive.sql +++ b/pkg/storage/secret/metadata/testdata/postgres--secure_value_lease_inactive-lease inactive.sql @@ -1,20 +1,19 @@ -WITH to_update AS ( - SELECT guid FROM ( - SELECT - guid, - ROW_NUMBER() OVER (ORDER BY created ASC) AS rn - FROM "secret_secure_value" - WHERE +UPDATE + "secret_secure_value" +SET + "lease_token" = 'token', + "lease_created" = 10 +WHERE "guid" IN ( + SELECT "guid" FROM ( + SELECT + "guid", + ROW_NUMBER() OVER (ORDER BY "created" ASC) AS rn + FROM "secret_secure_value" + WHERE "active" = FALSE AND 10 - "created" > 300 AND 10 - "lease_created" > 30 ) AS sub WHERE rn <= 10 ) -UPDATE - "secret_secure_value" -SET - "lease_token" = 'token', - "lease_created" = 10 -WHERE guid IN (SELECT guid FROM to_update) ; diff --git a/pkg/storage/secret/metadata/testdata/sqlite--secure_value_lease_inactive-lease inactive.sql b/pkg/storage/secret/metadata/testdata/sqlite--secure_value_lease_inactive-lease inactive.sql index 9c0d824458f..e490897ac97 100755 --- a/pkg/storage/secret/metadata/testdata/sqlite--secure_value_lease_inactive-lease inactive.sql +++ b/pkg/storage/secret/metadata/testdata/sqlite--secure_value_lease_inactive-lease inactive.sql @@ -1,20 +1,19 @@ -WITH to_update AS ( - SELECT guid FROM ( - SELECT - guid, - ROW_NUMBER() OVER (ORDER BY created ASC) AS rn - FROM "secret_secure_value" - WHERE +UPDATE + "secret_secure_value" +SET + "lease_token" = 'token', + "lease_created" = 10 +WHERE "guid" IN ( + SELECT "guid" FROM ( + SELECT + "guid", + ROW_NUMBER() OVER (ORDER BY "created" ASC) AS rn + FROM "secret_secure_value" + WHERE "active" = FALSE AND 10 - "created" > 300 AND 10 - "lease_created" > 30 ) AS sub WHERE rn <= 10 ) -UPDATE - "secret_secure_value" -SET - "lease_token" = 'token', - "lease_created" = 10 -WHERE guid IN (SELECT guid FROM to_update) ;