1- /*  contrib/pageinspect/pageinspect--1.4 .sql */ 
1+ /*  contrib/pageinspect/pageinspect--1.5 .sql */ 
22
33--  complain if script is sourced in psql, rather than via CREATE EXTENSION
44\echo Use " CREATE EXTENSION pageinspect" 
99CREATE  FUNCTION  get_raw_page (text , int4)
1010RETURNS bytea 
1111AS  ' MODULE_PATHNAME' ' get_raw_page' 
12- LANGUAGE C STRICT;
12+ LANGUAGE C STRICT PARALLEL SAFE ;
1313
1414CREATE  FUNCTION  get_raw_page (text , text , int4)
1515RETURNS bytea 
1616AS  ' MODULE_PATHNAME' ' get_raw_page_fork' 
17- LANGUAGE C STRICT;
17+ LANGUAGE C STRICT PARALLEL SAFE ;
1818
1919-- 
2020--  page_header()
@@ -30,7 +30,7 @@ CREATE FUNCTION page_header(IN page bytea,
3030    OUT version smallint ,
3131    OUT prune_xid xid)
3232AS  ' MODULE_PATHNAME' ' page_header' 
33- LANGUAGE C STRICT;
33+ LANGUAGE C STRICT PARALLEL SAFE ;
3434
3535-- 
3636--  heap_page_items()
@@ -52,7 +52,7 @@ CREATE FUNCTION heap_page_items(IN page bytea,
5252    OUT t_data bytea )
5353RETURNS SETOF record
5454AS  ' MODULE_PATHNAME' ' heap_page_items' 
55- LANGUAGE C STRICT;
55+ LANGUAGE C STRICT PARALLEL SAFE ;
5656
5757-- 
5858--  tuple_data_split()
@@ -64,7 +64,7 @@ CREATE FUNCTION tuple_data_split(rel_oid oid,
6464    t_bits text )
6565RETURNS bytea []
6666AS  ' MODULE_PATHNAME' ' tuple_data_split' 
67- LANGUAGE C;
67+ LANGUAGE C PARALLEL SAFE ;
6868
6969CREATE  FUNCTION  tuple_data_split (rel_oid oid ,
7070    t_data bytea ,
@@ -74,7 +74,7 @@ CREATE FUNCTION tuple_data_split(rel_oid oid,
7474    do_detoast bool)
7575RETURNS bytea []
7676AS  ' MODULE_PATHNAME' ' tuple_data_split' 
77- LANGUAGE C;
77+ LANGUAGE C PARALLEL SAFE ;
7878
7979-- 
8080--  heap_page_item_attrs()
@@ -121,7 +121,7 @@ SELECT lp,
121121         do_detoast)
122122         AS  t_attrs
123123  FROM  heap_page_items(page);
124- $$ LANGUAGE SQL;
124+ $$ LANGUAGE SQL PARALLEL SAFE ;
125125
126126CREATE  FUNCTION  heap_page_item_attrs (IN  page bytea , IN  rel_oid regclass,
127127    OUT lp smallint ,
@@ -141,7 +141,7 @@ CREATE FUNCTION heap_page_item_attrs(IN page bytea, IN rel_oid regclass,
141141    )
142142RETURNS SETOF record AS  $$
143143SELECT  *  from  heap_page_item_attrs(page, rel_oid, false);
144- $$ LANGUAGE SQL;
144+ $$ LANGUAGE SQL PARALLEL SAFE ;
145145
146146-- 
147147--  bt_metap()
@@ -154,7 +154,7 @@ CREATE FUNCTION bt_metap(IN relname text,
154154    OUT fastroot int4,
155155    OUT fastlevel int4)
156156AS  ' MODULE_PATHNAME' ' bt_metap' 
157- LANGUAGE C STRICT;
157+ LANGUAGE C STRICT PARALLEL SAFE ;
158158
159159-- 
160160--  bt_page_stats()
@@ -172,7 +172,7 @@ CREATE FUNCTION bt_page_stats(IN relname text, IN blkno int4,
172172    OUT btpo int4,
173173    OUT btpo_flags int4)
174174AS  ' MODULE_PATHNAME' ' bt_page_stats' 
175- LANGUAGE C STRICT;
175+ LANGUAGE C STRICT PARALLEL SAFE ;
176176
177177-- 
178178--  bt_page_items()
@@ -186,23 +186,23 @@ CREATE FUNCTION bt_page_items(IN relname text, IN blkno int4,
186186    OUT data text )
187187RETURNS SETOF record
188188AS  ' MODULE_PATHNAME' ' bt_page_items' 
189- LANGUAGE C STRICT;
189+ LANGUAGE C STRICT PARALLEL SAFE ;
190190
191191-- 
192192--  brin_page_type()
193193-- 
194194CREATE  FUNCTION  brin_page_type (IN  page bytea )
195195RETURNS text 
196196AS  ' MODULE_PATHNAME' ' brin_page_type' 
197- LANGUAGE C STRICT;
197+ LANGUAGE C STRICT PARALLEL SAFE ;
198198
199199-- 
200200--  brin_metapage_info()
201201-- 
202202CREATE  FUNCTION  brin_metapage_info (IN  page bytea , OUT magic text ,
203203	OUT version integer , OUT pagesperrange integer , OUT lastrevmappage bigint )
204204AS  ' MODULE_PATHNAME' ' brin_metapage_info' 
205- LANGUAGE C STRICT;
205+ LANGUAGE C STRICT PARALLEL SAFE ;
206206
207207-- 
208208--  brin_revmap_data()
@@ -211,7 +211,7 @@ CREATE FUNCTION brin_revmap_data(IN page bytea,
211211	OUT pages tid)
212212RETURNS SETOF tid
213213AS  ' MODULE_PATHNAME' ' brin_revmap_data' 
214- LANGUAGE C STRICT;
214+ LANGUAGE C STRICT PARALLEL SAFE ;
215215
216216-- 
217217--  brin_page_items()
@@ -226,15 +226,15 @@ CREATE FUNCTION brin_page_items(IN page bytea, IN index_oid regclass,
226226	OUT value text )
227227RETURNS SETOF record
228228AS  ' MODULE_PATHNAME' ' brin_page_items' 
229- LANGUAGE C STRICT;
229+ LANGUAGE C STRICT PARALLEL SAFE ;
230230
231231-- 
232232--  fsm_page_contents()
233233-- 
234234CREATE  FUNCTION  fsm_page_contents (IN  page bytea )
235235RETURNS text 
236236AS  ' MODULE_PATHNAME' ' fsm_page_contents' 
237- LANGUAGE C STRICT;
237+ LANGUAGE C STRICT PARALLEL SAFE ;
238238
239239-- 
240240--  GIN functions
@@ -255,7 +255,7 @@ CREATE FUNCTION gin_metapage_info(IN page bytea,
255255    OUT n_entries bigint ,
256256    OUT version int4)
257257AS  ' MODULE_PATHNAME' ' gin_metapage_info' 
258- LANGUAGE C STRICT;
258+ LANGUAGE C STRICT PARALLEL SAFE ;
259259
260260-- 
261261--  gin_page_opaque_info()
@@ -265,7 +265,7 @@ CREATE FUNCTION gin_page_opaque_info(IN page bytea,
265265    OUT maxoff int4,
266266    OUT flags text [])
267267AS  ' MODULE_PATHNAME' ' gin_page_opaque_info' 
268- LANGUAGE C STRICT;
268+ LANGUAGE C STRICT PARALLEL SAFE ;
269269
270270-- 
271271--  gin_leafpage_items()
@@ -276,4 +276,4 @@ CREATE FUNCTION gin_leafpage_items(IN page bytea,
276276    OUT tids tid[])
277277RETURNS SETOF record
278278AS  ' MODULE_PATHNAME' ' gin_leafpage_items' 
279- LANGUAGE C STRICT;
279+ LANGUAGE C STRICT PARALLEL SAFE ;
0 commit comments