Skip to content

Commit 42f4584

Browse files
committed
Expose pg_stat_statements for Supabase Studio
1 parent 09226be commit 42f4584

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

files/supabase.sql

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2358,4 +2358,30 @@ ALTER function supabase_functions.http_request() SECURITY DEFINER;
23582358
ALTER function supabase_functions.http_request() SET search_path = supabase_functions;
23592359
REVOKE ALL ON FUNCTION supabase_functions.http_request() FROM PUBLIC;
23602360
GRANT EXECUTE ON FUNCTION supabase_functions.http_request() TO postgres, anon, authenticated, service_role;
2361+
2362+
----------------------------------------------------
2363+
-- Pigsty custom migration: Supabase Studio query performance
2364+
-- 20260709000000_pigsty_pg_stat_statements_extensions_compat.sql
2365+
--
2366+
-- Supabase Studio sets search_path to public, extensions when loading query
2367+
-- performance data. Pigsty keeps pg_stat_statements in monitor for pg_exporter,
2368+
-- so expose compatibility wrappers in extensions without moving the extension.
2369+
----------------------------------------------------
2370+
-- migrate:up
2371+
CREATE OR REPLACE VIEW extensions.pg_stat_statements AS
2372+
SELECT * FROM monitor.pg_stat_statements;
2373+
2374+
CREATE OR REPLACE VIEW extensions.pg_stat_statements_info AS
2375+
SELECT * FROM monitor.pg_stat_statements_info;
2376+
2377+
CREATE OR REPLACE FUNCTION extensions.pg_stat_statements(showtext boolean)
2378+
RETURNS SETOF monitor.pg_stat_statements
2379+
LANGUAGE sql STABLE
2380+
AS $$ SELECT * FROM monitor.pg_stat_statements(showtext); $$;
2381+
2382+
ALTER VIEW extensions.pg_stat_statements OWNER TO supabase_admin;
2383+
ALTER VIEW extensions.pg_stat_statements_info OWNER TO supabase_admin;
2384+
ALTER FUNCTION extensions.pg_stat_statements(boolean) OWNER TO supabase_admin;
2385+
2386+
-- migrate:down
23612387
COMMIT;

0 commit comments

Comments
 (0)