diff --git a/pg_ivm--1.10.sql b/pg_ivm--1.10.sql index 98f0145..d7e1a27 100644 --- a/pg_ivm--1.10.sql +++ b/pg_ivm--1.10.sql @@ -1,3 +1,24 @@ +DO $$ + DECLARE + shared_pl text; + session_pl text; + BEGIN + SELECT setting INTO shared_pl FROM pg_catalog.pg_settings + WHERE name = 'shared_preload_libraries'; + + SELECT setting INTO session_pl FROM pg_catalog.pg_settings + WHERE name = 'session_preload_libraries'; + + IF shared_pl !~ '\mpg_ivm\M' AND session_pl !~ '\mpg_ivm\M' THEN + RAISE EXCEPTION 'pg_ivm is not loaded in shared_preload_libraries ' + 'or session_preload_libraries' + USING HINT = 'Add pg_ivm to session_preload_libraries and ' + 'restart the session. Or, add pg_ivm to ' + 'shared_preload_libraries and restart Postgres.'; + END IF; + END +$$; + CREATE SCHEMA pgivm; -- catalog diff --git a/pg_ivm--1.9--1.10.sql b/pg_ivm--1.9--1.10.sql index f117add..2f4e678 100644 --- a/pg_ivm--1.9--1.10.sql +++ b/pg_ivm--1.9--1.10.sql @@ -1,3 +1,24 @@ +DO $$ + DECLARE + shared_pl text; + session_pl text; + BEGIN + SELECT setting INTO shared_pl FROM pg_catalog.pg_settings + WHERE name = 'shared_preload_libraries'; + + SELECT setting INTO session_pl FROM pg_catalog.pg_settings + WHERE name = 'session_preload_libraries'; + + IF shared_pl !~ '\mpg_ivm\M' AND session_pl !~ '\mpg_ivm\M' THEN + RAISE EXCEPTION 'pg_ivm is not loaded in shared_preload_libraries ' + 'or session_preload_libraries' + USING HINT = 'Add pg_ivm to session_preload_libraries and ' + 'restart the session. Or, add pg_ivm to ' + 'shared_preload_libraries and restart Postgres.'; + END IF; + END +$$; + -- create a new schema pgivm and change the objects' schema to it CREATE SCHEMA pgivm;