Skip to content

Commit 14c1330

Browse files
rafaelfenos
andauthored
feat(migrations): do not use bound parameters (#1128)
Signed-off-by: Rafael Chacon <24160+rafael@users.noreply.github.com> Co-authored-by: Fabrizio <fabri.feno@gmail.com>
1 parent 4778d47 commit 14c1330

1 file changed

Lines changed: 12 additions & 10 deletions

File tree

src/internal/database/migrations/migrate.ts

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -809,16 +809,18 @@ function runMigrations({
809809
const icebergDefaultShard = icebergShards.length > 0 ? icebergShards[0] : ''
810810

811811
if (migrationsToRun.length > 0) {
812-
await client.query(SQL`SELECT
813-
set_config('storage.install_roles', ${dbInstallRoles}, false),
814-
set_config('storage.multitenant', ${isMultitenant ? 'true' : 'false'}, false),
815-
set_config('storage.anon_role', ${dbAnonRole}, false),
816-
set_config('storage.authenticated_role', ${dbAuthenticatedRole}, false),
817-
set_config('storage.service_role', ${dbServiceRole}, false),
818-
set_config('storage.super_user', ${dbSuperUser}, false),
819-
set_config('storage.iceberg_default_shard', ${icebergDefaultShard}, false),
820-
set_config('storage.iceberg_shards', ${icebergShardVar}, false),
821-
set_config('storage.vector_bucket_provider', ${vectorBucketProvider}, false);
812+
// set_config requires literal values, not bound parameters.
813+
const lit = (v: string | boolean) => `'${String(v).replace(/'/g, "''")}'`
814+
await client.query(`SELECT
815+
set_config('storage.install_roles', ${lit(dbInstallRoles)}, false),
816+
set_config('storage.multitenant', ${lit(isMultitenant ? 'true' : 'false')}, false),
817+
set_config('storage.anon_role', ${lit(dbAnonRole)}, false),
818+
set_config('storage.authenticated_role', ${lit(dbAuthenticatedRole)}, false),
819+
set_config('storage.service_role', ${lit(dbServiceRole)}, false),
820+
set_config('storage.super_user', ${lit(dbSuperUser)}, false),
821+
set_config('storage.iceberg_default_shard', ${lit(icebergDefaultShard)}, false),
822+
set_config('storage.iceberg_shards', ${lit(icebergShardVar)}, false),
823+
set_config('storage.vector_bucket_provider', ${lit(vectorBucketProvider)}, false);
822824
`)
823825
}
824826

0 commit comments

Comments
 (0)