From fbca145e39873c3dc5f831b3ece22426c2aded65 Mon Sep 17 00:00:00 2001 From: priyanshi-yb Date: Fri, 14 Feb 2025 17:05:29 +0530 Subject: [PATCH] Add GRANT to set the session parameter to voyager user in fallback if PG >= 15 --- .../yb-voyager-pg-grant-migration-permissions.sql | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/guardrails-scripts/yb-voyager-pg-grant-migration-permissions.sql b/guardrails-scripts/yb-voyager-pg-grant-migration-permissions.sql index 81efa5c60c..a66902f17c 100644 --- a/guardrails-scripts/yb-voyager-pg-grant-migration-permissions.sql +++ b/guardrails-scripts/yb-voyager-pg-grant-migration-permissions.sql @@ -228,5 +228,14 @@ GRANT pg_read_all_stats to :voyager_user; WHERE schema_name = ANY(string_to_array(:'schema_list', ',')) \gexec + + DO $$ + BEGIN + IF (substring((SELECT setting FROM pg_catalog.pg_settings WHERE name = 'server_version'), '^[0-9]+')::int >= 15) THEN + RAISE NOTICE 'Granting set on PARAMETER session_replication_role TO %;', current_setting('myvars.voyager_user'); + EXECUTE format('GRANT SET ON PARAMETER session_replication_role TO %I;', current_setting('myvars.voyager_user')); + END IF; + END $$; + \endif \endif