Do pre-release housekeeping on catalog data.

Run renumber_oids.pl to move high-numbered OIDs down, as per pre-beta
tasks specified by RELEASE_CHANGES.  For reference, the command was
./renumber_oids.pl --first-mapped-oid 8000 --target-oid 6150
This commit is contained in:
Tom Lane 2021-05-12 13:36:06 -04:00
parent def5b065ff
commit 1447244286
6 changed files with 55 additions and 55 deletions

View File

@ -53,6 +53,6 @@
*/
/* yyyymmddN */
#define CATALOG_VERSION_NO 202105091
#define CATALOG_VERSION_NO 202105121
#endif

View File

@ -24,17 +24,17 @@
rolcreaterole => 't', rolcreatedb => 't', rolcanlogin => 't',
rolreplication => 't', rolbypassrls => 't', rolconnlimit => '-1',
rolpassword => '_null_', rolvaliduntil => '_null_' },
{ oid => '8778', oid_symbol => 'ROLE_PG_DATABASE_OWNER',
{ oid => '6171', oid_symbol => 'ROLE_PG_DATABASE_OWNER',
rolname => 'pg_database_owner', rolsuper => 'f', rolinherit => 't',
rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f',
rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1',
rolpassword => '_null_', rolvaliduntil => '_null_' },
{ oid => '9274', oid_symbol => 'ROLE_PG_READ_ALL_DATA',
{ oid => '6181', oid_symbol => 'ROLE_PG_READ_ALL_DATA',
rolname => 'pg_read_all_data', rolsuper => 'f', rolinherit => 't',
rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f',
rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1',
rolpassword => '_null_', rolvaliduntil => '_null_' },
{ oid => '9275', oid_symbol => 'ROLE_PG_WRITE_ALL_DATA',
{ oid => '6182', oid_symbol => 'ROLE_PG_WRITE_ALL_DATA',
rolname => 'pg_write_all_data', rolsuper => 'f', rolinherit => 't',
rolcreaterole => 'f', rolcreatedb => 'f', rolcanlogin => 'f',
rolreplication => 'f', rolbypassrls => 'f', rolconnlimit => '-1',

View File

@ -55,7 +55,7 @@ CATALOG(pg_collation,3456,CollationRelationId)
*/
typedef FormData_pg_collation *Form_pg_collation;
DECLARE_TOAST(pg_collation, 8888, 8889);
DECLARE_TOAST(pg_collation, 6175, 6176);
DECLARE_UNIQUE_INDEX(pg_collation_name_enc_nsp_index, 3164, on pg_collation using btree(collname name_ops, collencoding int4_ops, collnamespace oid_ops));
#define CollationNameEncNspIndexId 3164

View File

@ -76,7 +76,7 @@
opfmethod => 'hash', opfname => 'oidvector_ops' },
{ oid => '2994',
opfmethod => 'btree', opfname => 'record_ops' },
{ oid => '9611',
{ oid => '6194',
opfmethod => 'hash', opfname => 'record_ops' },
{ oid => '3194',
opfmethod => 'btree', opfname => 'record_image_ops' },
@ -302,7 +302,7 @@
opfmethod => 'btree', opfname => 'multirange_ops' },
{ oid => '4225',
opfmethod => 'hash', opfname => 'multirange_ops' },
{ oid => '8021',
{ oid => '6158',
opfmethod => 'gist', opfname => 'multirange_ops' },
]

View File

@ -1446,7 +1446,7 @@
{ oid => '752', descr => 'substitute portion of string',
proname => 'overlay', prorettype => 'bytea',
proargtypes => 'bytea bytea int4', prosrc => 'byteaoverlay_no_len' },
{ oid => '8436', descr => 'number of set bits',
{ oid => '6163', descr => 'number of set bits',
proname => 'bit_count', prorettype => 'int8', proargtypes => 'bytea',
prosrc => 'bytea_bit_count' },
@ -1570,11 +1570,11 @@
{ oid => '376', descr => 'split delimited text, with null string',
proname => 'string_to_array', proisstrict => 'f', prorettype => '_text',
proargtypes => 'text text text', prosrc => 'text_to_array_null' },
{ oid => '8432', descr => 'split delimited text',
{ oid => '6160', descr => 'split delimited text',
proname => 'string_to_table', prorows => '1000', proisstrict => 'f',
proretset => 't', prorettype => 'text', proargtypes => 'text text',
prosrc => 'text_to_table' },
{ oid => '8433', descr => 'split delimited text, with null string',
{ oid => '6161', descr => 'split delimited text, with null string',
proname => 'string_to_table', prorows => '1000', proisstrict => 'f',
proretset => 't', prorettype => 'text', proargtypes => 'text text text',
prosrc => 'text_to_table_null' },
@ -1666,7 +1666,7 @@
proname => 'width_bucket', prorettype => 'int4',
proargtypes => 'anycompatible anycompatiblearray',
prosrc => 'width_bucket_array' },
{ oid => '8819', descr => 'remove last N elements of array',
{ oid => '6172', descr => 'remove last N elements of array',
proname => 'trim_array', prorettype => 'anyarray',
proargtypes => 'anyarray int4', prosrc => 'trim_array' },
{ oid => '3816', descr => 'array typanalyze',
@ -2339,13 +2339,13 @@
{ oid => '1171', descr => 'extract field from timestamp with time zone',
proname => 'date_part', provolatile => 's', prorettype => 'float8',
proargtypes => 'text timestamptz', prosrc => 'timestamptz_part' },
{ oid => '9983', descr => 'extract field from timestamp with time zone',
{ oid => '6203', descr => 'extract field from timestamp with time zone',
proname => 'extract', provolatile => 's', prorettype => 'numeric',
proargtypes => 'text timestamptz', prosrc => 'extract_timestamptz' },
{ oid => '1172', descr => 'extract field from interval',
proname => 'date_part', prorettype => 'float8',
proargtypes => 'text interval', prosrc => 'interval_part' },
{ oid => '9984', descr => 'extract field from interval',
{ oid => '6204', descr => 'extract field from interval',
proname => 'extract', prorettype => 'numeric', proargtypes => 'text interval',
prosrc => 'extract_interval' },
{ oid => '1174', descr => 'convert date to timestamp with time zone',
@ -2495,7 +2495,7 @@
{ oid => '1273', descr => 'extract field from time with time zone',
proname => 'date_part', prorettype => 'float8', proargtypes => 'text timetz',
prosrc => 'timetz_part' },
{ oid => '9981', descr => 'extract field from time with time zone',
{ oid => '6201', descr => 'extract field from time with time zone',
proname => 'extract', prorettype => 'numeric', proargtypes => 'text timetz',
prosrc => 'extract_timetz' },
{ oid => '1274',
@ -2842,13 +2842,13 @@
{ oid => '1384', descr => 'extract field from date',
proname => 'date_part', prolang => 'sql', prorettype => 'float8',
proargtypes => 'text date', prosrc => 'see system_functions.sql' },
{ oid => '9979', descr => 'extract field from date',
{ oid => '6199', descr => 'extract field from date',
proname => 'extract', prorettype => 'numeric', proargtypes => 'text date',
prosrc => 'extract_date' },
{ oid => '1385', descr => 'extract field from time',
proname => 'date_part', prorettype => 'float8', proargtypes => 'text time',
prosrc => 'time_part' },
{ oid => '9980', descr => 'extract field from time',
{ oid => '6200', descr => 'extract field from time',
proname => 'extract', prorettype => 'numeric', proargtypes => 'text time',
prosrc => 'extract_time' },
{ oid => '1386',
@ -3670,11 +3670,11 @@
proname => 'pg_get_statisticsobjdef', provolatile => 's',
prorettype => 'text', proargtypes => 'oid',
prosrc => 'pg_get_statisticsobjdef' },
{ oid => '8887', descr => 'extended statistics columns',
{ oid => '6174', descr => 'extended statistics columns',
proname => 'pg_get_statisticsobjdef_columns', provolatile => 's',
prorettype => 'text', proargtypes => 'oid',
prosrc => 'pg_get_statisticsobjdef_columns' },
{ oid => '8886', descr => 'extended statistics expressions',
{ oid => '6173', descr => 'extended statistics expressions',
proname => 'pg_get_statisticsobjdef_expressions', provolatile => 's',
prorettype => '_text', proargtypes => 'oid',
prosrc => 'pg_get_statisticsobjdef_expressions' },
@ -3715,7 +3715,7 @@
proname => 'pg_get_function_arg_default', provolatile => 's',
prorettype => 'text', proargtypes => 'oid int4',
prosrc => 'pg_get_function_arg_default' },
{ oid => '9704', descr => 'function SQL body',
{ oid => '6197', descr => 'function SQL body',
proname => 'pg_get_function_sqlbody', provolatile => 's',
prorettype => 'text', proargtypes => 'oid',
prosrc => 'pg_get_function_sqlbody' },
@ -3728,7 +3728,7 @@
proargnames => '{word,catcode,barelabel,catdesc,baredesc}',
prosrc => 'pg_get_keywords' },
{ oid => '8103', descr => 'list of catalog foreign key relationships',
{ oid => '6159', descr => 'list of catalog foreign key relationships',
proname => 'pg_get_catalog_foreign_keys', procost => '10', prorows => '250',
proretset => 't', provolatile => 's', prorettype => 'record',
proargtypes => '',
@ -3904,7 +3904,7 @@
{ oid => '3033', descr => 'set bit',
proname => 'set_bit', prorettype => 'bit', proargtypes => 'bit int4 int4',
prosrc => 'bitsetbit' },
{ oid => '8435', descr => 'number of set bits',
{ oid => '6162', descr => 'number of set bits',
proname => 'bit_count', prorettype => 'int8', proargtypes => 'bit',
prosrc => 'bit_bit_count' },
@ -5309,7 +5309,7 @@
proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
proargnames => '{pid,status,receive_start_lsn,receive_start_tli,written_lsn,flushed_lsn,received_tli,last_msg_send_time,last_msg_receipt_time,latest_end_lsn,latest_end_time,slot_name,sender_host,sender_port,conninfo}',
prosrc => 'pg_stat_get_wal_receiver' },
{ oid => '8595', descr => 'statistics: information about replication slot',
{ oid => '6169', descr => 'statistics: information about replication slot',
proname => 'pg_stat_get_replication_slot', prorows => '1', proisstrict => 'f',
proretset => 't', provolatile => 's', proparallel => 'r',
prorettype => 'record', proargtypes => 'text',
@ -5483,34 +5483,34 @@
proname => 'pg_stat_get_db_blk_write_time', provolatile => 's',
proparallel => 'r', prorettype => 'float8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_blk_write_time' },
{ oid => '9575', descr => 'statistics: session time, in milliseconds',
{ oid => '6185', descr => 'statistics: session time, in milliseconds',
proname => 'pg_stat_get_db_session_time', provolatile => 's',
proparallel => 'r', prorettype => 'float8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_session_time' },
{ oid => '9576', descr => 'statistics: session active time, in milliseconds',
{ oid => '6186', descr => 'statistics: session active time, in milliseconds',
proname => 'pg_stat_get_db_active_time', provolatile => 's',
proparallel => 'r', prorettype => 'float8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_active_time' },
{ oid => '9577',
{ oid => '6187',
descr => 'statistics: session idle in transaction time, in milliseconds',
proname => 'pg_stat_get_db_idle_in_transaction_time', provolatile => 's',
proparallel => 'r', prorettype => 'float8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_idle_in_transaction_time' },
{ oid => '9578', descr => 'statistics: total number of sessions',
{ oid => '6188', descr => 'statistics: total number of sessions',
proname => 'pg_stat_get_db_sessions', provolatile => 's', proparallel => 'r',
prorettype => 'int8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_sessions' },
{ oid => '9579',
{ oid => '6189',
descr => 'statistics: number of sessions disconnected by the client closing the network connection',
proname => 'pg_stat_get_db_sessions_abandoned', provolatile => 's',
proparallel => 'r', prorettype => 'int8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_sessions_abandoned' },
{ oid => '9580',
{ oid => '6190',
descr => 'statistics: number of sessions disconnected by fatal errors',
proname => 'pg_stat_get_db_sessions_fatal', provolatile => 's',
proparallel => 'r', prorettype => 'int8', proargtypes => 'oid',
prosrc => 'pg_stat_get_db_sessions_fatal' },
{ oid => '9581',
{ oid => '6191',
descr => 'statistics: number of sessions killed by administrative action',
proname => 'pg_stat_get_db_sessions_killed', provolatile => 's',
proparallel => 'r', prorettype => 'int8', proargtypes => 'oid',
@ -5699,7 +5699,7 @@
descr => 'statistics: reset collected statistics for a single SLRU',
proname => 'pg_stat_reset_slru', proisstrict => 'f', provolatile => 'v',
prorettype => 'void', proargtypes => 'text', prosrc => 'pg_stat_reset_slru' },
{ oid => '8596',
{ oid => '6170',
descr => 'statistics: reset collected statistics for a single replication slot',
proname => 'pg_stat_reset_replication_slot', proisstrict => 'f',
provolatile => 'v', prorettype => 'void', proargtypes => 'text',
@ -5825,10 +5825,10 @@
{ oid => '2015', descr => 'trim selected bytes from both ends of string',
proname => 'btrim', prorettype => 'bytea', proargtypes => 'bytea bytea',
prosrc => 'byteatrim' },
{ oid => '9612', descr => 'trim selected bytes from left end of string',
{ oid => '6195', descr => 'trim selected bytes from left end of string',
proname => 'ltrim', prorettype => 'bytea', proargtypes => 'bytea bytea',
prosrc => 'bytealtrim' },
{ oid => '9613', descr => 'trim selected bytes from right end of string',
{ oid => '6196', descr => 'trim selected bytes from right end of string',
proname => 'rtrim', prorettype => 'bytea', proargtypes => 'bytea bytea',
prosrc => 'byteartrim' },
@ -5839,10 +5839,10 @@
proname => 'date_trunc', prorettype => 'timestamp',
proargtypes => 'text timestamp', prosrc => 'timestamp_trunc' },
{ oid => '8990', descr => 'bin timestamp into specified interval',
{ oid => '6177', descr => 'bin timestamp into specified interval',
proname => 'date_bin', prorettype => 'timestamp',
proargtypes => 'interval timestamp timestamp', prosrc => 'timestamp_bin' },
{ oid => '8993',
{ oid => '6178',
descr => 'bin timestamp with time zone into specified interval',
proname => 'date_bin', prorettype => 'timestamptz',
proargtypes => 'interval timestamptz timestamptz',
@ -5851,7 +5851,7 @@
{ oid => '2021', descr => 'extract field from timestamp',
proname => 'date_part', prorettype => 'float8',
proargtypes => 'text timestamp', prosrc => 'timestamp_part' },
{ oid => '9982', descr => 'extract field from timestamp',
{ oid => '6202', descr => 'extract field from timestamp',
proname => 'extract', prorettype => 'numeric',
proargtypes => 'text timestamp', prosrc => 'extract_timestamp' },
{ oid => '2024', descr => 'convert date to timestamp',
@ -6076,7 +6076,7 @@
prorettype => 'timestamptz', proargtypes => 'xid',
prosrc => 'pg_xact_commit_timestamp' },
{ oid => '8456',
{ oid => '6168',
descr => 'get commit timestamp and replication origin of a transaction',
proname => 'pg_xact_commit_timestamp_origin', provolatile => 'v',
prorettype => 'record', proargtypes => 'xid',
@ -8058,7 +8058,7 @@
{ oid => '2237', descr => 'bitwise-or smallint aggregate',
proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'int2',
proargtypes => 'int2', prosrc => 'aggregate_dummy' },
{ oid => '8452', descr => 'bitwise-xor smallint aggregate',
{ oid => '6164', descr => 'bitwise-xor smallint aggregate',
proname => 'bit_xor', prokind => 'a', proisstrict => 'f',
prorettype => 'int2', proargtypes => 'int2', prosrc => 'aggregate_dummy' },
{ oid => '2238', descr => 'bitwise-and integer aggregate',
@ -8067,7 +8067,7 @@
{ oid => '2239', descr => 'bitwise-or integer aggregate',
proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'int4',
proargtypes => 'int4', prosrc => 'aggregate_dummy' },
{ oid => '8453', descr => 'bitwise-xor integer aggregate',
{ oid => '6165', descr => 'bitwise-xor integer aggregate',
proname => 'bit_xor', prokind => 'a', proisstrict => 'f',
prorettype => 'int4', proargtypes => 'int4', prosrc => 'aggregate_dummy' },
{ oid => '2240', descr => 'bitwise-and bigint aggregate',
@ -8076,7 +8076,7 @@
{ oid => '2241', descr => 'bitwise-or bigint aggregate',
proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'int8',
proargtypes => 'int8', prosrc => 'aggregate_dummy' },
{ oid => '8454', descr => 'bitwise-xor bigint aggregate',
{ oid => '6166', descr => 'bitwise-xor bigint aggregate',
proname => 'bit_xor', prokind => 'a', proisstrict => 'f',
prorettype => 'int8', proargtypes => 'int8', prosrc => 'aggregate_dummy' },
{ oid => '2242', descr => 'bitwise-and bit aggregate',
@ -8085,7 +8085,7 @@
{ oid => '2243', descr => 'bitwise-or bit aggregate',
proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'bit',
proargtypes => 'bit', prosrc => 'aggregate_dummy' },
{ oid => '8455', descr => 'bitwise-xor bit aggregate',
{ oid => '6167', descr => 'bitwise-xor bit aggregate',
proname => 'bit_xor', prokind => 'a', proisstrict => 'f', prorettype => 'bit',
proargtypes => 'bit', prosrc => 'aggregate_dummy' },
@ -9323,7 +9323,7 @@
proname => 'ts_lexize', prorettype => '_text',
proargtypes => 'regdictionary text', prosrc => 'ts_lexize' },
{ oid => '9531', descr => 'debug function for text search configuration',
{ oid => '6183', descr => 'debug function for text search configuration',
proname => 'ts_debug', prolang => 'sql', prorows => '1000', proretset => 't',
provolatile => 's', prorettype => 'record', proargtypes => 'regconfig text',
proallargtypes => '{regconfig,text,text,text,text,_regdictionary,regdictionary,_text}',
@ -9331,7 +9331,7 @@
proargnames => '{config,document,alias,description,token,dictionaries,dictionary,lexemes}',
prosrc => 'see system_functions.sql' },
{ oid => '9532',
{ oid => '6184',
descr => 'debug function for current text search configuration',
proname => 'ts_debug', prolang => 'sql', prorows => '1000', proretset => 't',
provolatile => 's', prorettype => 'record', proargtypes => 'text',
@ -9939,10 +9939,10 @@
proname => 'btrecordcmp', prorettype => 'int4',
proargtypes => 'record record', prosrc => 'btrecordcmp' },
{ oid => '9609', descr => 'hash',
{ oid => '6192', descr => 'hash',
proname => 'hash_record', prorettype => 'int4', proargtypes => 'record',
prosrc => 'hash_record' },
{ oid => '9610', descr => 'hash',
{ oid => '6193', descr => 'hash',
proname => 'hash_record_extended', prorettype => 'int8',
proargtypes => 'record int8', prosrc => 'hash_record_extended' },
@ -10172,11 +10172,11 @@
{ oid => '3881', descr => 'GiST support',
proname => 'range_gist_same', prorettype => 'internal',
proargtypes => 'anyrange anyrange internal', prosrc => 'range_gist_same' },
{ oid => '8017', descr => 'GiST support',
{ oid => '6154', descr => 'GiST support',
proname => 'multirange_gist_consistent', prorettype => 'bool',
proargtypes => 'internal anymultirange int2 oid internal',
prosrc => 'multirange_gist_consistent' },
{ oid => '8019', descr => 'GiST support',
{ oid => '6156', descr => 'GiST support',
proname => 'multirange_gist_compress', prorettype => 'internal',
proargtypes => 'internal', prosrc => 'multirange_gist_compress' },
{ oid => '3902', descr => 'hash a range',
@ -11501,10 +11501,10 @@
prosrc => 'pg_control_init' },
# subscripting support for built-in types
{ oid => '9255', descr => 'standard array subscripting support',
{ oid => '6179', descr => 'standard array subscripting support',
proname => 'array_subscript_handler', prorettype => 'internal',
proargtypes => 'internal', prosrc => 'array_subscript_handler' },
{ oid => '9256', descr => 'raw array subscripting support',
{ oid => '6180', descr => 'raw array subscripting support',
proname => 'raw_array_subscript_handler', prorettype => 'internal',
proargtypes => 'internal', prosrc => 'raw_array_subscript_handler' },
# type subscripting support
@ -11586,7 +11586,7 @@
proname => 'is_normalized', prorettype => 'bool', proargtypes => 'text text',
prosrc => 'unicode_is_normalized' },
{ oid => '9822', descr => 'unescape Unicode characters',
{ oid => '6198', descr => 'unescape Unicode characters',
proname => 'unistr', prorettype => 'text', proargtypes => 'text',
prosrc => 'unistr' },

View File

@ -498,39 +498,39 @@
typanalyze => 'range_typanalyze', typalign => 'd', typstorage => 'x' },
# multirange types
{ oid => '4451', array_type_oid => '8010', descr => 'multirange of integers',
{ oid => '4451', array_type_oid => '6150', descr => 'multirange of integers',
typname => 'int4multirange', typlen => '-1', typbyval => 'f', typtype => 'm',
typcategory => 'R', typinput => 'multirange_in',
typoutput => 'multirange_out', typreceive => 'multirange_recv',
typsend => 'multirange_send', typanalyze => 'multirange_typanalyze',
typalign => 'i', typstorage => 'x' },
{ oid => '4532', array_type_oid => '8012', descr => 'multirange of numerics',
{ oid => '4532', array_type_oid => '6151', descr => 'multirange of numerics',
typname => 'nummultirange', typlen => '-1', typbyval => 'f', typtype => 'm',
typcategory => 'R', typinput => 'multirange_in',
typoutput => 'multirange_out', typreceive => 'multirange_recv',
typsend => 'multirange_send', typanalyze => 'multirange_typanalyze',
typalign => 'i', typstorage => 'x' },
{ oid => '4533', array_type_oid => '8014',
{ oid => '4533', array_type_oid => '6152',
descr => 'multirange of timestamps without time zone',
typname => 'tsmultirange', typlen => '-1', typbyval => 'f', typtype => 'm',
typcategory => 'R', typinput => 'multirange_in',
typoutput => 'multirange_out', typreceive => 'multirange_recv',
typsend => 'multirange_send', typanalyze => 'multirange_typanalyze',
typalign => 'd', typstorage => 'x' },
{ oid => '4534', array_type_oid => '8016',
{ oid => '4534', array_type_oid => '6153',
descr => 'multirange of timestamps with time zone',
typname => 'tstzmultirange', typlen => '-1', typbyval => 'f', typtype => 'm',
typcategory => 'R', typinput => 'multirange_in',
typoutput => 'multirange_out', typreceive => 'multirange_recv',
typsend => 'multirange_send', typanalyze => 'multirange_typanalyze',
typalign => 'd', typstorage => 'x' },
{ oid => '4535', array_type_oid => '8018', descr => 'multirange of dates',
{ oid => '4535', array_type_oid => '6155', descr => 'multirange of dates',
typname => 'datemultirange', typlen => '-1', typbyval => 'f', typtype => 'm',
typcategory => 'R', typinput => 'multirange_in',
typoutput => 'multirange_out', typreceive => 'multirange_recv',
typsend => 'multirange_send', typanalyze => 'multirange_typanalyze',
typalign => 'i', typstorage => 'x' },
{ oid => '4536', array_type_oid => '8020', descr => 'multirange of bigints',
{ oid => '4536', array_type_oid => '6157', descr => 'multirange of bigints',
typname => 'int8multirange', typlen => '-1', typbyval => 'f', typtype => 'm',
typcategory => 'R', typinput => 'multirange_in',
typoutput => 'multirange_out', typreceive => 'multirange_recv',