diff --git a/contrib/pageinspect/heapfuncs.c b/contrib/pageinspect/heapfuncs.c index 49a2f9112006bce779be5272efba09eece088158..20bca0dc539dd92d79fe4922c6108238b3826c28 100644 --- a/contrib/pageinspect/heapfuncs.c +++ b/contrib/pageinspect/heapfuncs.c @@ -170,8 +170,8 @@ heap_page_items(PG_FUNCTION_ARGS) values[5] = UInt32GetDatum(HeapTupleHeaderGetXmax(tuphdr)); values[6] = UInt32GetDatum(HeapTupleHeaderGetRawCommandId(tuphdr)); /* shared with xvac */ values[7] = PointerGetDatum(&tuphdr->t_ctid); - values[8] = UInt16GetDatum(tuphdr->t_infomask2); - values[9] = UInt16GetDatum(tuphdr->t_infomask); + values[8] = UInt32GetDatum(tuphdr->t_infomask2); + values[9] = UInt32GetDatum(tuphdr->t_infomask); values[10] = UInt8GetDatum(tuphdr->t_hoff); /* diff --git a/contrib/pageinspect/pageinspect--unpackaged--1.0.sql b/contrib/pageinspect/pageinspect--unpackaged--1.0.sql index a9d1b52a4268cf14793f07dd0cdf0b7fe1698793..7d4feaf034ae40198355b49b2862ef20a07df1bc 100644 --- a/contrib/pageinspect/pageinspect--unpackaged--1.0.sql +++ b/contrib/pageinspect/pageinspect--unpackaged--1.0.sql @@ -1,9 +1,27 @@ /* contrib/pageinspect/pageinspect--unpackaged--1.0.sql */ +DROP FUNCTION heap_page_items(bytea); +CREATE FUNCTION heap_page_items(IN page bytea, + OUT lp smallint, + OUT lp_off smallint, + OUT lp_flags smallint, + OUT lp_len smallint, + OUT t_xmin xid, + OUT t_xmax xid, + OUT t_field3 int4, + OUT t_ctid tid, + OUT t_infomask2 integer, + OUT t_infomask integer, + OUT t_hoff smallint, + OUT t_bits text, + OUT t_oid oid) +RETURNS SETOF record +AS 'MODULE_PATHNAME', 'heap_page_items' +LANGUAGE C STRICT; + ALTER EXTENSION pageinspect ADD function get_raw_page(text,integer); ALTER EXTENSION pageinspect ADD function get_raw_page(text,text,integer); ALTER EXTENSION pageinspect ADD function page_header(bytea); -ALTER EXTENSION pageinspect ADD function heap_page_items(bytea); ALTER EXTENSION pageinspect ADD function bt_metap(text); ALTER EXTENSION pageinspect ADD function bt_page_stats(text,integer); ALTER EXTENSION pageinspect ADD function bt_page_items(text,integer);