Skip to content

Commit 383dc94

Browse files
committed
fix: use apis.dbname join for RLS_SETTINGS_BY_DBNAME_SQL
metaschema_public.database.name is not the same as the PG database name (apis.dbname). Join through services_public.apis instead to correctly resolve dbname to database_id for the rls_settings lookup.
1 parent 9baaad5 commit 383dc94

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

graphql/server/src/middleware/upload.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ const RLS_SETTINGS_BY_DBNAME_SQL = `
115115
ua_fn.name AS current_user_agent,
116116
ip_fn.name AS current_ip_address
117117
FROM services_public.rls_settings rs
118-
JOIN metaschema_public.database db ON rs.database_id = db.id
118+
JOIN services_public.apis a ON rs.database_id = a.database_id
119119
LEFT JOIN metaschema_public.schema auth_schema ON rs.authenticate_schema_id = auth_schema.id
120120
LEFT JOIN metaschema_public.schema role_schema ON rs.role_schema_id = role_schema.id
121121
LEFT JOIN metaschema_public.function auth_fn ON rs.authenticate_function_id = auth_fn.id
@@ -124,7 +124,7 @@ const RLS_SETTINGS_BY_DBNAME_SQL = `
124124
LEFT JOIN metaschema_public.function role_id_fn ON rs.current_role_id_function_id = role_id_fn.id
125125
LEFT JOIN metaschema_public.function ua_fn ON rs.current_user_agent_function_id = ua_fn.id
126126
LEFT JOIN metaschema_public.function ip_fn ON rs.current_ip_address_function_id = ip_fn.id
127-
WHERE db.database_name = $1
127+
WHERE a.dbname = $1
128128
LIMIT 1
129129
`;
130130

0 commit comments

Comments
 (0)