From 5fb23d4ba95121b225e01c2e24e5c213b99902d5 Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Sat, 29 Sep 2012 16:14:05 +0000 Subject: [PATCH] Provide a script to opt out of extensions git-svn-id: http://svn.osgeo.org/postgis/trunk@10345 b70326c6-7e19-0410-871a-916f4a2858ee --- extensions/opt_out.sh | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100755 extensions/opt_out.sh diff --git a/extensions/opt_out.sh b/extensions/opt_out.sh new file mode 100755 index 000000000..7e9cbf8b9 --- /dev/null +++ b/extensions/opt_out.sh @@ -0,0 +1,36 @@ +#!/bin/sh + +test -n "$1" || { + echo "Usage: $0 " + exit 1 +} + +db="$1" + +psql -XtA ${db} <<'EOF' | psql -XtA ${db} + +-- for topology +SELECT 'ALTER EXTENSION ' || extname || ' DROP ' || regexp_replace( + regexp_replace(pg_catalog.pg_describe_object(d.classid, d.objid, 0), E'cast from (.*) to (.*)', E'cast\(\\1 as \\2\)'), + E'(.*) for access method (.*)', E'\\1 using \\2') || ';' AS sqladd +FROM pg_catalog.pg_depend AS d +INNER JOIN pg_extension AS e ON (d.refobjid = e.oid) +WHERE d.refclassid = 'pg_catalog.pg_extension'::pg_catalog.regclass +AND deptype = 'e' AND e.extname = 'postgis_topology' +ORDER BY sqladd; + +SELECT 'DROP EXTENSION postgis_topology;'; + +-- for postgis +SELECT 'ALTER EXTENSION ' || extname || ' DROP ' || regexp_replace( + regexp_replace(pg_catalog.pg_describe_object(d.classid, d.objid, 0), E'cast from (.*) to (.*)', E'cast\(\\1 as \\2\)'), + E'(.*) for access method (.*)', E'\\1 using \\2') || ';' AS sqladd +FROM pg_catalog.pg_depend AS d +INNER JOIN pg_extension AS e ON (d.refobjid = e.oid) +WHERE d.refclassid = 'pg_catalog.pg_extension'::pg_catalog.regclass +AND deptype = 'e' AND e.extname = 'postgis' +ORDER BY sqladd; + +SELECT 'DROP EXTENSION postgis;'; + +EOF -- 2.40.0