diff --git a/contrib/pg_freespacemap/Makefile b/contrib/pg_freespacemap/Makefile index 5760d9fe51..7bc0e9555d 100644 --- a/contrib/pg_freespacemap/Makefile +++ b/contrib/pg_freespacemap/Makefile @@ -4,7 +4,8 @@ MODULE_big = pg_freespacemap OBJS = pg_freespacemap.o $(WIN32RES) EXTENSION = pg_freespacemap -DATA = pg_freespacemap--1.0.sql pg_freespacemap--unpackaged--1.0.sql +DATA = pg_freespacemap--1.1.sql pg_freespacemap--1.0--1.1.sql \ + pg_freespacemap--unpackaged--1.0.sql PGFILEDESC = "pg_freespacemap - monitoring of free space map" ifdef USE_PGXS diff --git a/contrib/pg_freespacemap/pg_freespacemap--1.0--1.1.sql b/contrib/pg_freespacemap/pg_freespacemap--1.0--1.1.sql new file mode 100644 index 0000000000..52d6576df0 --- /dev/null +++ b/contrib/pg_freespacemap/pg_freespacemap--1.0--1.1.sql @@ -0,0 +1,7 @@ +/* contrib/pg_freespacemap/pg_freespacemap--1.0--1.1.sql */ + +-- complain if script is sourced in psql, rather than via ALTER EXTENSION +\echo Use "ALTER EXTENSION pg_freespacemap UPDATE TO '1.1'" to load this file. \quit + +ALTER FUNCTION pg_freespace(regclass, bigint) PARALLEL SAFE; +ALTER FUNCTION pg_freespace(regclass) PARALLEL SAFE; diff --git a/contrib/pg_freespacemap/pg_freespacemap--1.0.sql b/contrib/pg_freespacemap/pg_freespacemap--1.1.sql similarity index 87% rename from contrib/pg_freespacemap/pg_freespacemap--1.0.sql rename to contrib/pg_freespacemap/pg_freespacemap--1.1.sql index 2adb52a375..e1b8242268 100644 --- a/contrib/pg_freespacemap/pg_freespacemap--1.0.sql +++ b/contrib/pg_freespacemap/pg_freespacemap--1.1.sql @@ -1,4 +1,4 @@ -/* contrib/pg_freespacemap/pg_freespacemap--1.0.sql */ +/* contrib/pg_freespacemap/pg_freespacemap--1.1.sql */ -- complain if script is sourced in psql, rather than via CREATE EXTENSION \echo Use "CREATE EXTENSION pg_freespacemap" to load this file. \quit @@ -7,7 +7,7 @@ CREATE FUNCTION pg_freespace(regclass, bigint) RETURNS int2 AS 'MODULE_PATHNAME', 'pg_freespace' -LANGUAGE C STRICT; +LANGUAGE C STRICT PARALLEL SAFE; -- pg_freespace shows the recorded space avail at each block in a relation CREATE FUNCTION @@ -17,7 +17,7 @@ AS $$ SELECT blkno, pg_freespace($1, blkno) AS avail FROM generate_series(0, pg_relation_size($1) / current_setting('block_size')::bigint - 1) AS blkno; $$ -LANGUAGE SQL; +LANGUAGE SQL PARALLEL SAFE; -- Don't want these to be available to public. diff --git a/contrib/pg_freespacemap/pg_freespacemap.control b/contrib/pg_freespacemap/pg_freespacemap.control index 34b695ff75..764db30d18 100644 --- a/contrib/pg_freespacemap/pg_freespacemap.control +++ b/contrib/pg_freespacemap/pg_freespacemap.control @@ -1,5 +1,5 @@ # pg_freespacemap extension comment = 'examine the free space map (FSM)' -default_version = '1.0' +default_version = '1.1' module_pathname = '$libdir/pg_freespacemap' relocatable = true