1#---------------------------------------------------------------------- 2# 3# pg_proc.dat 4# Initial contents of the pg_proc system catalog. 5# 6# Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group 7# Portions Copyright (c) 1994, Regents of the University of California 8# 9# src/include/catalog/pg_proc.dat 10# 11#---------------------------------------------------------------------- 12 13[ 14 15# Note: every entry in pg_proc.dat is expected to have a 'descr' comment, 16# except for functions that implement pg_operator.dat operators and don't 17# have a good reason to be called directly rather than via the operator. 18# (If you do expect such a function to be used directly, you should 19# duplicate the operator's comment.) initdb will supply suitable default 20# comments for functions referenced by pg_operator. 21 22# Try to follow the style of existing functions' comments. 23# Some recommended conventions: 24# 25# "I/O" for typinput, typoutput, typreceive, typsend functions 26# "I/O typmod" for typmodin, typmodout functions 27# "aggregate transition function" for aggtransfn functions, unless 28# they are reasonably useful in their own right 29# "aggregate final function" for aggfinalfn functions (likewise) 30# "convert srctypename to desttypename" for cast functions 31# "less-equal-greater" for B-tree comparison functions 32 33# Note: pronargs is computed when this file is read, so it does not need 34# to be specified in entries here. See AddDefaultValues() in Catalog.pm. 35 36# Once upon a time these entries were ordered by OID. Lately it's often 37# been the custom to insert new entries adjacent to related older entries. 38# Try to do one or the other though, don't just insert entries at random. 39 40# OIDS 1 - 99 41 42{ oid => '1242', descr => 'I/O', 43 proname => 'boolin', prorettype => 'bool', proargtypes => 'cstring', 44 prosrc => 'boolin' }, 45{ oid => '1243', descr => 'I/O', 46 proname => 'boolout', prorettype => 'cstring', proargtypes => 'bool', 47 prosrc => 'boolout' }, 48{ oid => '1244', descr => 'I/O', 49 proname => 'byteain', prorettype => 'bytea', proargtypes => 'cstring', 50 prosrc => 'byteain' }, 51{ oid => '31', descr => 'I/O', 52 proname => 'byteaout', prorettype => 'cstring', proargtypes => 'bytea', 53 prosrc => 'byteaout' }, 54{ oid => '1245', descr => 'I/O', 55 proname => 'charin', prorettype => 'char', proargtypes => 'cstring', 56 prosrc => 'charin' }, 57{ oid => '33', descr => 'I/O', 58 proname => 'charout', prorettype => 'cstring', proargtypes => 'char', 59 prosrc => 'charout' }, 60{ oid => '34', descr => 'I/O', 61 proname => 'namein', prorettype => 'name', proargtypes => 'cstring', 62 prosrc => 'namein' }, 63{ oid => '35', descr => 'I/O', 64 proname => 'nameout', prorettype => 'cstring', proargtypes => 'name', 65 prosrc => 'nameout' }, 66{ oid => '38', descr => 'I/O', 67 proname => 'int2in', prorettype => 'int2', proargtypes => 'cstring', 68 prosrc => 'int2in' }, 69{ oid => '39', descr => 'I/O', 70 proname => 'int2out', prorettype => 'cstring', proargtypes => 'int2', 71 prosrc => 'int2out' }, 72{ oid => '40', descr => 'I/O', 73 proname => 'int2vectorin', prorettype => 'int2vector', 74 proargtypes => 'cstring', prosrc => 'int2vectorin' }, 75{ oid => '41', descr => 'I/O', 76 proname => 'int2vectorout', prorettype => 'cstring', 77 proargtypes => 'int2vector', prosrc => 'int2vectorout' }, 78{ oid => '42', descr => 'I/O', 79 proname => 'int4in', prorettype => 'int4', proargtypes => 'cstring', 80 prosrc => 'int4in' }, 81{ oid => '43', descr => 'I/O', 82 proname => 'int4out', prorettype => 'cstring', proargtypes => 'int4', 83 prosrc => 'int4out' }, 84{ oid => '44', descr => 'I/O', 85 proname => 'regprocin', provolatile => 's', prorettype => 'regproc', 86 proargtypes => 'cstring', prosrc => 'regprocin' }, 87{ oid => '45', descr => 'I/O', 88 proname => 'regprocout', provolatile => 's', prorettype => 'cstring', 89 proargtypes => 'regproc', prosrc => 'regprocout' }, 90{ oid => '3494', descr => 'convert proname to regproc', 91 proname => 'to_regproc', provolatile => 's', prorettype => 'regproc', 92 proargtypes => 'text', prosrc => 'to_regproc' }, 93{ oid => '3479', descr => 'convert proname to regprocedure', 94 proname => 'to_regprocedure', provolatile => 's', 95 prorettype => 'regprocedure', proargtypes => 'text', 96 prosrc => 'to_regprocedure' }, 97{ oid => '46', descr => 'I/O', 98 proname => 'textin', prorettype => 'text', proargtypes => 'cstring', 99 prosrc => 'textin' }, 100{ oid => '47', descr => 'I/O', 101 proname => 'textout', prorettype => 'cstring', proargtypes => 'text', 102 prosrc => 'textout' }, 103{ oid => '48', descr => 'I/O', 104 proname => 'tidin', prorettype => 'tid', proargtypes => 'cstring', 105 prosrc => 'tidin' }, 106{ oid => '49', descr => 'I/O', 107 proname => 'tidout', prorettype => 'cstring', proargtypes => 'tid', 108 prosrc => 'tidout' }, 109{ oid => '50', descr => 'I/O', 110 proname => 'xidin', prorettype => 'xid', proargtypes => 'cstring', 111 prosrc => 'xidin' }, 112{ oid => '51', descr => 'I/O', 113 proname => 'xidout', prorettype => 'cstring', proargtypes => 'xid', 114 prosrc => 'xidout' }, 115{ oid => '5070', descr => 'I/O', 116 proname => 'xid8in', prorettype => 'xid8', proargtypes => 'cstring', 117 prosrc => 'xid8in' }, 118{ oid => '5081', descr => 'I/O', 119 proname => 'xid8out', prorettype => 'cstring', proargtypes => 'xid8', 120 prosrc => 'xid8out' }, 121{ oid => '5082', descr => 'I/O', 122 proname => 'xid8recv', prorettype => 'xid8', proargtypes => 'internal', 123 prosrc => 'xid8recv' }, 124{ oid => '5083', descr => 'I/O', 125 proname => 'xid8send', prorettype => 'bytea', proargtypes => 'xid8', 126 prosrc => 'xid8send' }, 127{ oid => '52', descr => 'I/O', 128 proname => 'cidin', prorettype => 'cid', proargtypes => 'cstring', 129 prosrc => 'cidin' }, 130{ oid => '53', descr => 'I/O', 131 proname => 'cidout', prorettype => 'cstring', proargtypes => 'cid', 132 prosrc => 'cidout' }, 133{ oid => '54', descr => 'I/O', 134 proname => 'oidvectorin', prorettype => 'oidvector', proargtypes => 'cstring', 135 prosrc => 'oidvectorin' }, 136{ oid => '55', descr => 'I/O', 137 proname => 'oidvectorout', prorettype => 'cstring', 138 proargtypes => 'oidvector', prosrc => 'oidvectorout' }, 139{ oid => '56', 140 proname => 'boollt', proleakproof => 't', prorettype => 'bool', 141 proargtypes => 'bool bool', prosrc => 'boollt' }, 142{ oid => '57', 143 proname => 'boolgt', proleakproof => 't', prorettype => 'bool', 144 proargtypes => 'bool bool', prosrc => 'boolgt' }, 145{ oid => '60', 146 proname => 'booleq', proleakproof => 't', prorettype => 'bool', 147 proargtypes => 'bool bool', prosrc => 'booleq' }, 148{ oid => '61', 149 proname => 'chareq', proleakproof => 't', prorettype => 'bool', 150 proargtypes => 'char char', prosrc => 'chareq' }, 151{ oid => '62', 152 proname => 'nameeq', proleakproof => 't', prorettype => 'bool', 153 proargtypes => 'name name', prosrc => 'nameeq' }, 154{ oid => '63', 155 proname => 'int2eq', proleakproof => 't', prorettype => 'bool', 156 proargtypes => 'int2 int2', prosrc => 'int2eq' }, 157{ oid => '64', 158 proname => 'int2lt', proleakproof => 't', prorettype => 'bool', 159 proargtypes => 'int2 int2', prosrc => 'int2lt' }, 160{ oid => '65', 161 proname => 'int4eq', proleakproof => 't', prorettype => 'bool', 162 proargtypes => 'int4 int4', prosrc => 'int4eq' }, 163{ oid => '66', 164 proname => 'int4lt', proleakproof => 't', prorettype => 'bool', 165 proargtypes => 'int4 int4', prosrc => 'int4lt' }, 166{ oid => '67', 167 proname => 'texteq', proleakproof => 't', prorettype => 'bool', 168 proargtypes => 'text text', prosrc => 'texteq' }, 169{ oid => '3696', 170 proname => 'starts_with', proleakproof => 't', prorettype => 'bool', 171 proargtypes => 'text text', prosrc => 'text_starts_with' }, 172{ oid => '68', 173 proname => 'xideq', proleakproof => 't', prorettype => 'bool', 174 proargtypes => 'xid xid', prosrc => 'xideq' }, 175{ oid => '3308', 176 proname => 'xidneq', proleakproof => 't', prorettype => 'bool', 177 proargtypes => 'xid xid', prosrc => 'xidneq' }, 178{ oid => '5084', 179 proname => 'xid8eq', proleakproof => 't', prorettype => 'bool', 180 proargtypes => 'xid8 xid8', prosrc => 'xid8eq' }, 181{ oid => '5085', 182 proname => 'xid8ne', proleakproof => 't', prorettype => 'bool', 183 proargtypes => 'xid8 xid8', prosrc => 'xid8ne' }, 184{ oid => '5034', 185 proname => 'xid8lt', proleakproof => 't', prorettype => 'bool', 186 proargtypes => 'xid8 xid8', prosrc => 'xid8lt' }, 187{ oid => '5035', 188 proname => 'xid8gt', proleakproof => 't', prorettype => 'bool', 189 proargtypes => 'xid8 xid8', prosrc => 'xid8gt' }, 190{ oid => '5036', 191 proname => 'xid8le', proleakproof => 't', prorettype => 'bool', 192 proargtypes => 'xid8 xid8', prosrc => 'xid8le' }, 193{ oid => '5037', 194 proname => 'xid8ge', proleakproof => 't', prorettype => 'bool', 195 proargtypes => 'xid8 xid8', prosrc => 'xid8ge' }, 196{ oid => '5096', descr => 'less-equal-greater', 197 proname => 'xid8cmp', proleakproof => 't', prorettype => 'int4', 198 proargtypes => 'xid8 xid8', prosrc => 'xid8cmp' }, 199{ oid => '5071', descr => 'convert xid8 to xid', 200 proname => 'xid', prorettype => 'xid', proargtypes => 'xid8', 201 prosrc => 'xid8toxid' }, 202{ oid => '69', 203 proname => 'cideq', proleakproof => 't', prorettype => 'bool', 204 proargtypes => 'cid cid', prosrc => 'cideq' }, 205{ oid => '70', 206 proname => 'charne', proleakproof => 't', prorettype => 'bool', 207 proargtypes => 'char char', prosrc => 'charne' }, 208{ oid => '1246', 209 proname => 'charlt', proleakproof => 't', prorettype => 'bool', 210 proargtypes => 'char char', prosrc => 'charlt' }, 211{ oid => '72', 212 proname => 'charle', proleakproof => 't', prorettype => 'bool', 213 proargtypes => 'char char', prosrc => 'charle' }, 214{ oid => '73', 215 proname => 'chargt', proleakproof => 't', prorettype => 'bool', 216 proargtypes => 'char char', prosrc => 'chargt' }, 217{ oid => '74', 218 proname => 'charge', proleakproof => 't', prorettype => 'bool', 219 proargtypes => 'char char', prosrc => 'charge' }, 220{ oid => '77', descr => 'convert char to int4', 221 proname => 'int4', prorettype => 'int4', proargtypes => 'char', 222 prosrc => 'chartoi4' }, 223{ oid => '78', descr => 'convert int4 to char', 224 proname => 'char', prorettype => 'char', proargtypes => 'int4', 225 prosrc => 'i4tochar' }, 226 227{ oid => '79', 228 proname => 'nameregexeq', prosupport => 'textregexeq_support', 229 prorettype => 'bool', proargtypes => 'name text', prosrc => 'nameregexeq' }, 230{ oid => '1252', 231 proname => 'nameregexne', prorettype => 'bool', proargtypes => 'name text', 232 prosrc => 'nameregexne' }, 233{ oid => '1254', 234 proname => 'textregexeq', prosupport => 'textregexeq_support', 235 prorettype => 'bool', proargtypes => 'text text', prosrc => 'textregexeq' }, 236{ oid => '1256', 237 proname => 'textregexne', prorettype => 'bool', proargtypes => 'text text', 238 prosrc => 'textregexne' }, 239{ oid => '1364', descr => 'planner support for textregexeq', 240 proname => 'textregexeq_support', prorettype => 'internal', 241 proargtypes => 'internal', prosrc => 'textregexeq_support' }, 242 243{ oid => '1257', descr => 'length', 244 proname => 'textlen', prorettype => 'int4', proargtypes => 'text', 245 prosrc => 'textlen' }, 246{ oid => '1258', 247 proname => 'textcat', prorettype => 'text', proargtypes => 'text text', 248 prosrc => 'textcat' }, 249 250{ oid => '84', 251 proname => 'boolne', proleakproof => 't', prorettype => 'bool', 252 proargtypes => 'bool bool', prosrc => 'boolne' }, 253{ oid => '89', descr => 'PostgreSQL version string', 254 proname => 'version', provolatile => 's', prorettype => 'text', 255 proargtypes => '', prosrc => 'pgsql_version' }, 256 257{ oid => '86', descr => 'I/O', 258 proname => 'pg_ddl_command_in', prorettype => 'pg_ddl_command', 259 proargtypes => 'cstring', prosrc => 'pg_ddl_command_in' }, 260{ oid => '87', descr => 'I/O', 261 proname => 'pg_ddl_command_out', prorettype => 'cstring', 262 proargtypes => 'pg_ddl_command', prosrc => 'pg_ddl_command_out' }, 263{ oid => '88', descr => 'I/O', 264 proname => 'pg_ddl_command_recv', prorettype => 'pg_ddl_command', 265 proargtypes => 'internal', prosrc => 'pg_ddl_command_recv' }, 266{ oid => '90', descr => 'I/O', 267 proname => 'pg_ddl_command_send', prorettype => 'bytea', 268 proargtypes => 'pg_ddl_command', prosrc => 'pg_ddl_command_send' }, 269 270# OIDS 100 - 199 271 272{ oid => '101', descr => 'restriction selectivity of = and related operators', 273 proname => 'eqsel', provolatile => 's', prorettype => 'float8', 274 proargtypes => 'internal oid internal int4', prosrc => 'eqsel' }, 275{ oid => '102', 276 descr => 'restriction selectivity of <> and related operators', 277 proname => 'neqsel', provolatile => 's', prorettype => 'float8', 278 proargtypes => 'internal oid internal int4', prosrc => 'neqsel' }, 279{ oid => '103', 280 descr => 'restriction selectivity of < and related operators on scalar datatypes', 281 proname => 'scalarltsel', provolatile => 's', prorettype => 'float8', 282 proargtypes => 'internal oid internal int4', prosrc => 'scalarltsel' }, 283{ oid => '104', 284 descr => 'restriction selectivity of > and related operators on scalar datatypes', 285 proname => 'scalargtsel', provolatile => 's', prorettype => 'float8', 286 proargtypes => 'internal oid internal int4', prosrc => 'scalargtsel' }, 287{ oid => '105', descr => 'join selectivity of = and related operators', 288 proname => 'eqjoinsel', provolatile => 's', prorettype => 'float8', 289 proargtypes => 'internal oid internal int2 internal', prosrc => 'eqjoinsel' }, 290{ oid => '106', descr => 'join selectivity of <> and related operators', 291 proname => 'neqjoinsel', provolatile => 's', prorettype => 'float8', 292 proargtypes => 'internal oid internal int2 internal', 293 prosrc => 'neqjoinsel' }, 294{ oid => '107', 295 descr => 'join selectivity of < and related operators on scalar datatypes', 296 proname => 'scalarltjoinsel', provolatile => 's', prorettype => 'float8', 297 proargtypes => 'internal oid internal int2 internal', 298 prosrc => 'scalarltjoinsel' }, 299{ oid => '108', 300 descr => 'join selectivity of > and related operators on scalar datatypes', 301 proname => 'scalargtjoinsel', provolatile => 's', prorettype => 'float8', 302 proargtypes => 'internal oid internal int2 internal', 303 prosrc => 'scalargtjoinsel' }, 304 305{ oid => '336', 306 descr => 'restriction selectivity of <= and related operators on scalar datatypes', 307 proname => 'scalarlesel', provolatile => 's', prorettype => 'float8', 308 proargtypes => 'internal oid internal int4', prosrc => 'scalarlesel' }, 309{ oid => '337', 310 descr => 'restriction selectivity of >= and related operators on scalar datatypes', 311 proname => 'scalargesel', provolatile => 's', prorettype => 'float8', 312 proargtypes => 'internal oid internal int4', prosrc => 'scalargesel' }, 313{ oid => '386', 314 descr => 'join selectivity of <= and related operators on scalar datatypes', 315 proname => 'scalarlejoinsel', provolatile => 's', prorettype => 'float8', 316 proargtypes => 'internal oid internal int2 internal', 317 prosrc => 'scalarlejoinsel' }, 318{ oid => '398', 319 descr => 'join selectivity of >= and related operators on scalar datatypes', 320 proname => 'scalargejoinsel', provolatile => 's', prorettype => 'float8', 321 proargtypes => 'internal oid internal int2 internal', 322 prosrc => 'scalargejoinsel' }, 323 324{ oid => '109', descr => 'I/O', 325 proname => 'unknownin', prorettype => 'unknown', proargtypes => 'cstring', 326 prosrc => 'unknownin' }, 327{ oid => '110', descr => 'I/O', 328 proname => 'unknownout', prorettype => 'cstring', proargtypes => 'unknown', 329 prosrc => 'unknownout' }, 330{ oid => '111', 331 descr => 'implementation of deprecated ! and !! factorial operators', 332 proname => 'numeric_fac', prorettype => 'numeric', proargtypes => 'int8', 333 prosrc => 'numeric_fac' }, 334 335{ oid => '115', 336 proname => 'box_above_eq', prorettype => 'bool', proargtypes => 'box box', 337 prosrc => 'box_above_eq' }, 338{ oid => '116', 339 proname => 'box_below_eq', prorettype => 'bool', proargtypes => 'box box', 340 prosrc => 'box_below_eq' }, 341 342{ oid => '117', descr => 'I/O', 343 proname => 'point_in', prorettype => 'point', proargtypes => 'cstring', 344 prosrc => 'point_in' }, 345{ oid => '118', descr => 'I/O', 346 proname => 'point_out', prorettype => 'cstring', proargtypes => 'point', 347 prosrc => 'point_out' }, 348{ oid => '119', descr => 'I/O', 349 proname => 'lseg_in', prorettype => 'lseg', proargtypes => 'cstring', 350 prosrc => 'lseg_in' }, 351{ oid => '120', descr => 'I/O', 352 proname => 'lseg_out', prorettype => 'cstring', proargtypes => 'lseg', 353 prosrc => 'lseg_out' }, 354{ oid => '121', descr => 'I/O', 355 proname => 'path_in', prorettype => 'path', proargtypes => 'cstring', 356 prosrc => 'path_in' }, 357{ oid => '122', descr => 'I/O', 358 proname => 'path_out', prorettype => 'cstring', proargtypes => 'path', 359 prosrc => 'path_out' }, 360{ oid => '123', descr => 'I/O', 361 proname => 'box_in', prorettype => 'box', proargtypes => 'cstring', 362 prosrc => 'box_in' }, 363{ oid => '124', descr => 'I/O', 364 proname => 'box_out', prorettype => 'cstring', proargtypes => 'box', 365 prosrc => 'box_out' }, 366{ oid => '125', 367 proname => 'box_overlap', prorettype => 'bool', proargtypes => 'box box', 368 prosrc => 'box_overlap' }, 369{ oid => '126', 370 proname => 'box_ge', prorettype => 'bool', proargtypes => 'box box', 371 prosrc => 'box_ge' }, 372{ oid => '127', 373 proname => 'box_gt', prorettype => 'bool', proargtypes => 'box box', 374 prosrc => 'box_gt' }, 375{ oid => '128', 376 proname => 'box_eq', prorettype => 'bool', proargtypes => 'box box', 377 prosrc => 'box_eq' }, 378{ oid => '129', 379 proname => 'box_lt', prorettype => 'bool', proargtypes => 'box box', 380 prosrc => 'box_lt' }, 381{ oid => '130', 382 proname => 'box_le', prorettype => 'bool', proargtypes => 'box box', 383 prosrc => 'box_le' }, 384{ oid => '131', 385 proname => 'point_above', prorettype => 'bool', proargtypes => 'point point', 386 prosrc => 'point_above' }, 387{ oid => '132', 388 proname => 'point_left', prorettype => 'bool', proargtypes => 'point point', 389 prosrc => 'point_left' }, 390{ oid => '133', 391 proname => 'point_right', prorettype => 'bool', proargtypes => 'point point', 392 prosrc => 'point_right' }, 393{ oid => '134', 394 proname => 'point_below', prorettype => 'bool', proargtypes => 'point point', 395 prosrc => 'point_below' }, 396{ oid => '135', 397 proname => 'point_eq', prorettype => 'bool', proargtypes => 'point point', 398 prosrc => 'point_eq' }, 399{ oid => '136', 400 proname => 'on_pb', prorettype => 'bool', proargtypes => 'point box', 401 prosrc => 'on_pb' }, 402{ oid => '137', 403 proname => 'on_ppath', prorettype => 'bool', proargtypes => 'point path', 404 prosrc => 'on_ppath' }, 405{ oid => '138', 406 proname => 'box_center', prorettype => 'point', proargtypes => 'box', 407 prosrc => 'box_center' }, 408{ oid => '139', 409 descr => 'restriction selectivity for area-comparison operators', 410 proname => 'areasel', provolatile => 's', prorettype => 'float8', 411 proargtypes => 'internal oid internal int4', prosrc => 'areasel' }, 412{ oid => '140', descr => 'join selectivity for area-comparison operators', 413 proname => 'areajoinsel', provolatile => 's', prorettype => 'float8', 414 proargtypes => 'internal oid internal int2 internal', 415 prosrc => 'areajoinsel' }, 416{ oid => '141', 417 proname => 'int4mul', prorettype => 'int4', proargtypes => 'int4 int4', 418 prosrc => 'int4mul' }, 419{ oid => '144', 420 proname => 'int4ne', proleakproof => 't', prorettype => 'bool', 421 proargtypes => 'int4 int4', prosrc => 'int4ne' }, 422{ oid => '145', 423 proname => 'int2ne', proleakproof => 't', prorettype => 'bool', 424 proargtypes => 'int2 int2', prosrc => 'int2ne' }, 425{ oid => '146', 426 proname => 'int2gt', proleakproof => 't', prorettype => 'bool', 427 proargtypes => 'int2 int2', prosrc => 'int2gt' }, 428{ oid => '147', 429 proname => 'int4gt', proleakproof => 't', prorettype => 'bool', 430 proargtypes => 'int4 int4', prosrc => 'int4gt' }, 431{ oid => '148', 432 proname => 'int2le', proleakproof => 't', prorettype => 'bool', 433 proargtypes => 'int2 int2', prosrc => 'int2le' }, 434{ oid => '149', 435 proname => 'int4le', proleakproof => 't', prorettype => 'bool', 436 proargtypes => 'int4 int4', prosrc => 'int4le' }, 437{ oid => '150', 438 proname => 'int4ge', proleakproof => 't', prorettype => 'bool', 439 proargtypes => 'int4 int4', prosrc => 'int4ge' }, 440{ oid => '151', 441 proname => 'int2ge', proleakproof => 't', prorettype => 'bool', 442 proargtypes => 'int2 int2', prosrc => 'int2ge' }, 443{ oid => '152', 444 proname => 'int2mul', prorettype => 'int2', proargtypes => 'int2 int2', 445 prosrc => 'int2mul' }, 446{ oid => '153', 447 proname => 'int2div', prorettype => 'int2', proargtypes => 'int2 int2', 448 prosrc => 'int2div' }, 449{ oid => '154', 450 proname => 'int4div', prorettype => 'int4', proargtypes => 'int4 int4', 451 prosrc => 'int4div' }, 452{ oid => '155', 453 proname => 'int2mod', prorettype => 'int2', proargtypes => 'int2 int2', 454 prosrc => 'int2mod' }, 455{ oid => '156', 456 proname => 'int4mod', prorettype => 'int4', proargtypes => 'int4 int4', 457 prosrc => 'int4mod' }, 458{ oid => '157', 459 proname => 'textne', proleakproof => 't', prorettype => 'bool', 460 proargtypes => 'text text', prosrc => 'textne' }, 461{ oid => '158', 462 proname => 'int24eq', proleakproof => 't', prorettype => 'bool', 463 proargtypes => 'int2 int4', prosrc => 'int24eq' }, 464{ oid => '159', 465 proname => 'int42eq', proleakproof => 't', prorettype => 'bool', 466 proargtypes => 'int4 int2', prosrc => 'int42eq' }, 467{ oid => '160', 468 proname => 'int24lt', proleakproof => 't', prorettype => 'bool', 469 proargtypes => 'int2 int4', prosrc => 'int24lt' }, 470{ oid => '161', 471 proname => 'int42lt', proleakproof => 't', prorettype => 'bool', 472 proargtypes => 'int4 int2', prosrc => 'int42lt' }, 473{ oid => '162', 474 proname => 'int24gt', proleakproof => 't', prorettype => 'bool', 475 proargtypes => 'int2 int4', prosrc => 'int24gt' }, 476{ oid => '163', 477 proname => 'int42gt', proleakproof => 't', prorettype => 'bool', 478 proargtypes => 'int4 int2', prosrc => 'int42gt' }, 479{ oid => '164', 480 proname => 'int24ne', proleakproof => 't', prorettype => 'bool', 481 proargtypes => 'int2 int4', prosrc => 'int24ne' }, 482{ oid => '165', 483 proname => 'int42ne', proleakproof => 't', prorettype => 'bool', 484 proargtypes => 'int4 int2', prosrc => 'int42ne' }, 485{ oid => '166', 486 proname => 'int24le', proleakproof => 't', prorettype => 'bool', 487 proargtypes => 'int2 int4', prosrc => 'int24le' }, 488{ oid => '167', 489 proname => 'int42le', proleakproof => 't', prorettype => 'bool', 490 proargtypes => 'int4 int2', prosrc => 'int42le' }, 491{ oid => '168', 492 proname => 'int24ge', proleakproof => 't', prorettype => 'bool', 493 proargtypes => 'int2 int4', prosrc => 'int24ge' }, 494{ oid => '169', 495 proname => 'int42ge', proleakproof => 't', prorettype => 'bool', 496 proargtypes => 'int4 int2', prosrc => 'int42ge' }, 497{ oid => '170', 498 proname => 'int24mul', prorettype => 'int4', proargtypes => 'int2 int4', 499 prosrc => 'int24mul' }, 500{ oid => '171', 501 proname => 'int42mul', prorettype => 'int4', proargtypes => 'int4 int2', 502 prosrc => 'int42mul' }, 503{ oid => '172', 504 proname => 'int24div', prorettype => 'int4', proargtypes => 'int2 int4', 505 prosrc => 'int24div' }, 506{ oid => '173', 507 proname => 'int42div', prorettype => 'int4', proargtypes => 'int4 int2', 508 prosrc => 'int42div' }, 509{ oid => '176', 510 proname => 'int2pl', prorettype => 'int2', proargtypes => 'int2 int2', 511 prosrc => 'int2pl' }, 512{ oid => '177', 513 proname => 'int4pl', prorettype => 'int4', proargtypes => 'int4 int4', 514 prosrc => 'int4pl' }, 515{ oid => '178', 516 proname => 'int24pl', prorettype => 'int4', proargtypes => 'int2 int4', 517 prosrc => 'int24pl' }, 518{ oid => '179', 519 proname => 'int42pl', prorettype => 'int4', proargtypes => 'int4 int2', 520 prosrc => 'int42pl' }, 521{ oid => '180', 522 proname => 'int2mi', prorettype => 'int2', proargtypes => 'int2 int2', 523 prosrc => 'int2mi' }, 524{ oid => '181', 525 proname => 'int4mi', prorettype => 'int4', proargtypes => 'int4 int4', 526 prosrc => 'int4mi' }, 527{ oid => '182', 528 proname => 'int24mi', prorettype => 'int4', proargtypes => 'int2 int4', 529 prosrc => 'int24mi' }, 530{ oid => '183', 531 proname => 'int42mi', prorettype => 'int4', proargtypes => 'int4 int2', 532 prosrc => 'int42mi' }, 533{ oid => '184', 534 proname => 'oideq', proleakproof => 't', prorettype => 'bool', 535 proargtypes => 'oid oid', prosrc => 'oideq' }, 536{ oid => '185', 537 proname => 'oidne', proleakproof => 't', prorettype => 'bool', 538 proargtypes => 'oid oid', prosrc => 'oidne' }, 539{ oid => '186', 540 proname => 'box_same', prorettype => 'bool', proargtypes => 'box box', 541 prosrc => 'box_same' }, 542{ oid => '187', 543 proname => 'box_contain', prorettype => 'bool', proargtypes => 'box box', 544 prosrc => 'box_contain' }, 545{ oid => '188', 546 proname => 'box_left', prorettype => 'bool', proargtypes => 'box box', 547 prosrc => 'box_left' }, 548{ oid => '189', 549 proname => 'box_overleft', prorettype => 'bool', proargtypes => 'box box', 550 prosrc => 'box_overleft' }, 551{ oid => '190', 552 proname => 'box_overright', prorettype => 'bool', proargtypes => 'box box', 553 prosrc => 'box_overright' }, 554{ oid => '191', 555 proname => 'box_right', prorettype => 'bool', proargtypes => 'box box', 556 prosrc => 'box_right' }, 557{ oid => '192', 558 proname => 'box_contained', prorettype => 'bool', proargtypes => 'box box', 559 prosrc => 'box_contained' }, 560{ oid => '193', 561 proname => 'box_contain_pt', prorettype => 'bool', proargtypes => 'box point', 562 prosrc => 'box_contain_pt' }, 563 564{ oid => '195', descr => 'I/O', 565 proname => 'pg_node_tree_in', prorettype => 'pg_node_tree', 566 proargtypes => 'cstring', prosrc => 'pg_node_tree_in' }, 567{ oid => '196', descr => 'I/O', 568 proname => 'pg_node_tree_out', prorettype => 'cstring', 569 proargtypes => 'pg_node_tree', prosrc => 'pg_node_tree_out' }, 570{ oid => '197', descr => 'I/O', 571 proname => 'pg_node_tree_recv', provolatile => 's', 572 prorettype => 'pg_node_tree', proargtypes => 'internal', 573 prosrc => 'pg_node_tree_recv' }, 574{ oid => '198', descr => 'I/O', 575 proname => 'pg_node_tree_send', provolatile => 's', prorettype => 'bytea', 576 proargtypes => 'pg_node_tree', prosrc => 'pg_node_tree_send' }, 577 578# OIDS 200 - 299 579 580{ oid => '200', descr => 'I/O', 581 proname => 'float4in', prorettype => 'float4', proargtypes => 'cstring', 582 prosrc => 'float4in' }, 583{ oid => '201', descr => 'I/O', 584 proname => 'float4out', prorettype => 'cstring', proargtypes => 'float4', 585 prosrc => 'float4out' }, 586{ oid => '202', 587 proname => 'float4mul', prorettype => 'float4', 588 proargtypes => 'float4 float4', prosrc => 'float4mul' }, 589{ oid => '203', 590 proname => 'float4div', prorettype => 'float4', 591 proargtypes => 'float4 float4', prosrc => 'float4div' }, 592{ oid => '204', 593 proname => 'float4pl', prorettype => 'float4', proargtypes => 'float4 float4', 594 prosrc => 'float4pl' }, 595{ oid => '205', 596 proname => 'float4mi', prorettype => 'float4', proargtypes => 'float4 float4', 597 prosrc => 'float4mi' }, 598{ oid => '206', 599 proname => 'float4um', prorettype => 'float4', proargtypes => 'float4', 600 prosrc => 'float4um' }, 601{ oid => '207', 602 proname => 'float4abs', prorettype => 'float4', proargtypes => 'float4', 603 prosrc => 'float4abs' }, 604{ oid => '208', descr => 'aggregate transition function', 605 proname => 'float4_accum', prorettype => '_float8', 606 proargtypes => '_float8 float4', prosrc => 'float4_accum' }, 607{ oid => '209', descr => 'larger of two', 608 proname => 'float4larger', prorettype => 'float4', 609 proargtypes => 'float4 float4', prosrc => 'float4larger' }, 610{ oid => '211', descr => 'smaller of two', 611 proname => 'float4smaller', prorettype => 'float4', 612 proargtypes => 'float4 float4', prosrc => 'float4smaller' }, 613 614{ oid => '212', 615 proname => 'int4um', prorettype => 'int4', proargtypes => 'int4', 616 prosrc => 'int4um' }, 617{ oid => '213', 618 proname => 'int2um', prorettype => 'int2', proargtypes => 'int2', 619 prosrc => 'int2um' }, 620 621{ oid => '214', descr => 'I/O', 622 proname => 'float8in', prorettype => 'float8', proargtypes => 'cstring', 623 prosrc => 'float8in' }, 624{ oid => '215', descr => 'I/O', 625 proname => 'float8out', prorettype => 'cstring', proargtypes => 'float8', 626 prosrc => 'float8out' }, 627{ oid => '216', 628 proname => 'float8mul', prorettype => 'float8', 629 proargtypes => 'float8 float8', prosrc => 'float8mul' }, 630{ oid => '217', 631 proname => 'float8div', prorettype => 'float8', 632 proargtypes => 'float8 float8', prosrc => 'float8div' }, 633{ oid => '218', 634 proname => 'float8pl', prorettype => 'float8', proargtypes => 'float8 float8', 635 prosrc => 'float8pl' }, 636{ oid => '219', 637 proname => 'float8mi', prorettype => 'float8', proargtypes => 'float8 float8', 638 prosrc => 'float8mi' }, 639{ oid => '220', 640 proname => 'float8um', prorettype => 'float8', proargtypes => 'float8', 641 prosrc => 'float8um' }, 642{ oid => '221', 643 proname => 'float8abs', prorettype => 'float8', proargtypes => 'float8', 644 prosrc => 'float8abs' }, 645{ oid => '222', descr => 'aggregate transition function', 646 proname => 'float8_accum', prorettype => '_float8', 647 proargtypes => '_float8 float8', prosrc => 'float8_accum' }, 648{ oid => '276', descr => 'aggregate combine function', 649 proname => 'float8_combine', prorettype => '_float8', 650 proargtypes => '_float8 _float8', prosrc => 'float8_combine' }, 651{ oid => '223', descr => 'larger of two', 652 proname => 'float8larger', prorettype => 'float8', 653 proargtypes => 'float8 float8', prosrc => 'float8larger' }, 654{ oid => '224', descr => 'smaller of two', 655 proname => 'float8smaller', prorettype => 'float8', 656 proargtypes => 'float8 float8', prosrc => 'float8smaller' }, 657 658{ oid => '225', 659 proname => 'lseg_center', prorettype => 'point', proargtypes => 'lseg', 660 prosrc => 'lseg_center' }, 661{ oid => '226', 662 proname => 'path_center', prorettype => 'point', proargtypes => 'path', 663 prosrc => 'path_center' }, 664{ oid => '227', 665 proname => 'poly_center', prorettype => 'point', proargtypes => 'polygon', 666 prosrc => 'poly_center' }, 667 668{ oid => '228', descr => 'round to nearest integer', 669 proname => 'dround', prorettype => 'float8', proargtypes => 'float8', 670 prosrc => 'dround' }, 671{ oid => '229', descr => 'truncate to integer', 672 proname => 'dtrunc', prorettype => 'float8', proargtypes => 'float8', 673 prosrc => 'dtrunc' }, 674{ oid => '2308', descr => 'nearest integer >= value', 675 proname => 'ceil', prorettype => 'float8', proargtypes => 'float8', 676 prosrc => 'dceil' }, 677{ oid => '2320', descr => 'nearest integer >= value', 678 proname => 'ceiling', prorettype => 'float8', proargtypes => 'float8', 679 prosrc => 'dceil' }, 680{ oid => '2309', descr => 'nearest integer <= value', 681 proname => 'floor', prorettype => 'float8', proargtypes => 'float8', 682 prosrc => 'dfloor' }, 683{ oid => '2310', descr => 'sign of value', 684 proname => 'sign', prorettype => 'float8', proargtypes => 'float8', 685 prosrc => 'dsign' }, 686{ oid => '230', 687 proname => 'dsqrt', prorettype => 'float8', proargtypes => 'float8', 688 prosrc => 'dsqrt' }, 689{ oid => '231', 690 proname => 'dcbrt', prorettype => 'float8', proargtypes => 'float8', 691 prosrc => 'dcbrt' }, 692{ oid => '232', 693 proname => 'dpow', prorettype => 'float8', proargtypes => 'float8 float8', 694 prosrc => 'dpow' }, 695{ oid => '233', descr => 'natural exponential (e^x)', 696 proname => 'dexp', prorettype => 'float8', proargtypes => 'float8', 697 prosrc => 'dexp' }, 698{ oid => '234', descr => 'natural logarithm', 699 proname => 'dlog1', prorettype => 'float8', proargtypes => 'float8', 700 prosrc => 'dlog1' }, 701{ oid => '235', descr => 'convert int2 to float8', 702 proname => 'float8', prorettype => 'float8', proargtypes => 'int2', 703 prosrc => 'i2tod' }, 704{ oid => '236', descr => 'convert int2 to float4', 705 proname => 'float4', prorettype => 'float4', proargtypes => 'int2', 706 prosrc => 'i2tof' }, 707{ oid => '237', descr => 'convert float8 to int2', 708 proname => 'int2', prorettype => 'int2', proargtypes => 'float8', 709 prosrc => 'dtoi2' }, 710{ oid => '238', descr => 'convert float4 to int2', 711 proname => 'int2', prorettype => 'int2', proargtypes => 'float4', 712 prosrc => 'ftoi2' }, 713{ oid => '239', 714 proname => 'line_distance', prorettype => 'float8', 715 proargtypes => 'line line', prosrc => 'line_distance' }, 716 717{ oid => '240', 718 proname => 'nameeqtext', proleakproof => 't', prorettype => 'bool', 719 proargtypes => 'name text', prosrc => 'nameeqtext' }, 720{ oid => '241', 721 proname => 'namelttext', proleakproof => 't', prorettype => 'bool', 722 proargtypes => 'name text', prosrc => 'namelttext' }, 723{ oid => '242', 724 proname => 'nameletext', proleakproof => 't', prorettype => 'bool', 725 proargtypes => 'name text', prosrc => 'nameletext' }, 726{ oid => '243', 727 proname => 'namegetext', proleakproof => 't', prorettype => 'bool', 728 proargtypes => 'name text', prosrc => 'namegetext' }, 729{ oid => '244', 730 proname => 'namegttext', proleakproof => 't', prorettype => 'bool', 731 proargtypes => 'name text', prosrc => 'namegttext' }, 732{ oid => '245', 733 proname => 'namenetext', proleakproof => 't', prorettype => 'bool', 734 proargtypes => 'name text', prosrc => 'namenetext' }, 735{ oid => '246', descr => 'less-equal-greater', 736 proname => 'btnametextcmp', proleakproof => 't', prorettype => 'int4', 737 proargtypes => 'name text', prosrc => 'btnametextcmp' }, 738{ oid => '247', 739 proname => 'texteqname', proleakproof => 't', prorettype => 'bool', 740 proargtypes => 'text name', prosrc => 'texteqname' }, 741{ oid => '248', 742 proname => 'textltname', proleakproof => 't', prorettype => 'bool', 743 proargtypes => 'text name', prosrc => 'textltname' }, 744{ oid => '249', 745 proname => 'textlename', proleakproof => 't', prorettype => 'bool', 746 proargtypes => 'text name', prosrc => 'textlename' }, 747{ oid => '250', 748 proname => 'textgename', proleakproof => 't', prorettype => 'bool', 749 proargtypes => 'text name', prosrc => 'textgename' }, 750{ oid => '251', 751 proname => 'textgtname', proleakproof => 't', prorettype => 'bool', 752 proargtypes => 'text name', prosrc => 'textgtname' }, 753{ oid => '252', 754 proname => 'textnename', proleakproof => 't', prorettype => 'bool', 755 proargtypes => 'text name', prosrc => 'textnename' }, 756{ oid => '253', descr => 'less-equal-greater', 757 proname => 'bttextnamecmp', proleakproof => 't', prorettype => 'int4', 758 proargtypes => 'text name', prosrc => 'bttextnamecmp' }, 759 760{ oid => '266', descr => 'concatenate name and oid', 761 proname => 'nameconcatoid', prorettype => 'name', proargtypes => 'name oid', 762 prosrc => 'nameconcatoid' }, 763 764{ oid => '274', 765 descr => 'current date and time - increments during transactions', 766 proname => 'timeofday', provolatile => 'v', prorettype => 'text', 767 proargtypes => '', prosrc => 'timeofday' }, 768 769{ oid => '277', 770 proname => 'inter_sl', prorettype => 'bool', proargtypes => 'lseg line', 771 prosrc => 'inter_sl' }, 772{ oid => '278', 773 proname => 'inter_lb', prorettype => 'bool', proargtypes => 'line box', 774 prosrc => 'inter_lb' }, 775 776{ oid => '279', 777 proname => 'float48mul', prorettype => 'float8', 778 proargtypes => 'float4 float8', prosrc => 'float48mul' }, 779{ oid => '280', 780 proname => 'float48div', prorettype => 'float8', 781 proargtypes => 'float4 float8', prosrc => 'float48div' }, 782{ oid => '281', 783 proname => 'float48pl', prorettype => 'float8', 784 proargtypes => 'float4 float8', prosrc => 'float48pl' }, 785{ oid => '282', 786 proname => 'float48mi', prorettype => 'float8', 787 proargtypes => 'float4 float8', prosrc => 'float48mi' }, 788{ oid => '283', 789 proname => 'float84mul', prorettype => 'float8', 790 proargtypes => 'float8 float4', prosrc => 'float84mul' }, 791{ oid => '284', 792 proname => 'float84div', prorettype => 'float8', 793 proargtypes => 'float8 float4', prosrc => 'float84div' }, 794{ oid => '285', 795 proname => 'float84pl', prorettype => 'float8', 796 proargtypes => 'float8 float4', prosrc => 'float84pl' }, 797{ oid => '286', 798 proname => 'float84mi', prorettype => 'float8', 799 proargtypes => 'float8 float4', prosrc => 'float84mi' }, 800 801{ oid => '287', 802 proname => 'float4eq', proleakproof => 't', prorettype => 'bool', 803 proargtypes => 'float4 float4', prosrc => 'float4eq' }, 804{ oid => '288', 805 proname => 'float4ne', proleakproof => 't', prorettype => 'bool', 806 proargtypes => 'float4 float4', prosrc => 'float4ne' }, 807{ oid => '289', 808 proname => 'float4lt', proleakproof => 't', prorettype => 'bool', 809 proargtypes => 'float4 float4', prosrc => 'float4lt' }, 810{ oid => '290', 811 proname => 'float4le', proleakproof => 't', prorettype => 'bool', 812 proargtypes => 'float4 float4', prosrc => 'float4le' }, 813{ oid => '291', 814 proname => 'float4gt', proleakproof => 't', prorettype => 'bool', 815 proargtypes => 'float4 float4', prosrc => 'float4gt' }, 816{ oid => '292', 817 proname => 'float4ge', proleakproof => 't', prorettype => 'bool', 818 proargtypes => 'float4 float4', prosrc => 'float4ge' }, 819 820{ oid => '293', 821 proname => 'float8eq', proleakproof => 't', prorettype => 'bool', 822 proargtypes => 'float8 float8', prosrc => 'float8eq' }, 823{ oid => '294', 824 proname => 'float8ne', proleakproof => 't', prorettype => 'bool', 825 proargtypes => 'float8 float8', prosrc => 'float8ne' }, 826{ oid => '295', 827 proname => 'float8lt', proleakproof => 't', prorettype => 'bool', 828 proargtypes => 'float8 float8', prosrc => 'float8lt' }, 829{ oid => '296', 830 proname => 'float8le', proleakproof => 't', prorettype => 'bool', 831 proargtypes => 'float8 float8', prosrc => 'float8le' }, 832{ oid => '297', 833 proname => 'float8gt', proleakproof => 't', prorettype => 'bool', 834 proargtypes => 'float8 float8', prosrc => 'float8gt' }, 835{ oid => '298', 836 proname => 'float8ge', proleakproof => 't', prorettype => 'bool', 837 proargtypes => 'float8 float8', prosrc => 'float8ge' }, 838 839{ oid => '299', 840 proname => 'float48eq', proleakproof => 't', prorettype => 'bool', 841 proargtypes => 'float4 float8', prosrc => 'float48eq' }, 842 843# OIDS 300 - 399 844 845{ oid => '300', 846 proname => 'float48ne', proleakproof => 't', prorettype => 'bool', 847 proargtypes => 'float4 float8', prosrc => 'float48ne' }, 848{ oid => '301', 849 proname => 'float48lt', proleakproof => 't', prorettype => 'bool', 850 proargtypes => 'float4 float8', prosrc => 'float48lt' }, 851{ oid => '302', 852 proname => 'float48le', proleakproof => 't', prorettype => 'bool', 853 proargtypes => 'float4 float8', prosrc => 'float48le' }, 854{ oid => '303', 855 proname => 'float48gt', proleakproof => 't', prorettype => 'bool', 856 proargtypes => 'float4 float8', prosrc => 'float48gt' }, 857{ oid => '304', 858 proname => 'float48ge', proleakproof => 't', prorettype => 'bool', 859 proargtypes => 'float4 float8', prosrc => 'float48ge' }, 860{ oid => '305', 861 proname => 'float84eq', proleakproof => 't', prorettype => 'bool', 862 proargtypes => 'float8 float4', prosrc => 'float84eq' }, 863{ oid => '306', 864 proname => 'float84ne', proleakproof => 't', prorettype => 'bool', 865 proargtypes => 'float8 float4', prosrc => 'float84ne' }, 866{ oid => '307', 867 proname => 'float84lt', proleakproof => 't', prorettype => 'bool', 868 proargtypes => 'float8 float4', prosrc => 'float84lt' }, 869{ oid => '308', 870 proname => 'float84le', proleakproof => 't', prorettype => 'bool', 871 proargtypes => 'float8 float4', prosrc => 'float84le' }, 872{ oid => '309', 873 proname => 'float84gt', proleakproof => 't', prorettype => 'bool', 874 proargtypes => 'float8 float4', prosrc => 'float84gt' }, 875{ oid => '310', 876 proname => 'float84ge', proleakproof => 't', prorettype => 'bool', 877 proargtypes => 'float8 float4', prosrc => 'float84ge' }, 878{ oid => '320', descr => 'bucket number of operand in equal-width histogram', 879 proname => 'width_bucket', prorettype => 'int4', 880 proargtypes => 'float8 float8 float8 int4', prosrc => 'width_bucket_float8' }, 881 882{ oid => '311', descr => 'convert float4 to float8', 883 proname => 'float8', prorettype => 'float8', proargtypes => 'float4', 884 prosrc => 'ftod' }, 885{ oid => '312', descr => 'convert float8 to float4', 886 proname => 'float4', prorettype => 'float4', proargtypes => 'float8', 887 prosrc => 'dtof' }, 888{ oid => '313', descr => 'convert int2 to int4', 889 proname => 'int4', prorettype => 'int4', proargtypes => 'int2', 890 prosrc => 'i2toi4' }, 891{ oid => '314', descr => 'convert int4 to int2', 892 proname => 'int2', prorettype => 'int2', proargtypes => 'int4', 893 prosrc => 'i4toi2' }, 894{ oid => '316', descr => 'convert int4 to float8', 895 proname => 'float8', prorettype => 'float8', proargtypes => 'int4', 896 prosrc => 'i4tod' }, 897{ oid => '317', descr => 'convert float8 to int4', 898 proname => 'int4', prorettype => 'int4', proargtypes => 'float8', 899 prosrc => 'dtoi4' }, 900{ oid => '318', descr => 'convert int4 to float4', 901 proname => 'float4', prorettype => 'float4', proargtypes => 'int4', 902 prosrc => 'i4tof' }, 903{ oid => '319', descr => 'convert float4 to int4', 904 proname => 'int4', prorettype => 'int4', proargtypes => 'float4', 905 prosrc => 'ftoi4' }, 906 907# Table access method handlers 908{ oid => '3', oid_symbol => 'HEAP_TABLE_AM_HANDLER_OID', 909 descr => 'row-oriented heap table access method handler', 910 proname => 'heap_tableam_handler', provolatile => 'v', 911 prorettype => 'table_am_handler', proargtypes => 'internal', 912 prosrc => 'heap_tableam_handler' }, 913 914# Index access method handlers 915{ oid => '330', descr => 'btree index access method handler', 916 proname => 'bthandler', provolatile => 'v', prorettype => 'index_am_handler', 917 proargtypes => 'internal', prosrc => 'bthandler' }, 918{ oid => '331', descr => 'hash index access method handler', 919 proname => 'hashhandler', provolatile => 'v', 920 prorettype => 'index_am_handler', proargtypes => 'internal', 921 prosrc => 'hashhandler' }, 922{ oid => '332', descr => 'gist index access method handler', 923 proname => 'gisthandler', provolatile => 'v', 924 prorettype => 'index_am_handler', proargtypes => 'internal', 925 prosrc => 'gisthandler' }, 926{ oid => '333', descr => 'gin index access method handler', 927 proname => 'ginhandler', provolatile => 'v', prorettype => 'index_am_handler', 928 proargtypes => 'internal', prosrc => 'ginhandler' }, 929{ oid => '334', descr => 'spgist index access method handler', 930 proname => 'spghandler', provolatile => 'v', prorettype => 'index_am_handler', 931 proargtypes => 'internal', prosrc => 'spghandler' }, 932{ oid => '335', descr => 'brin index access method handler', 933 proname => 'brinhandler', provolatile => 'v', 934 prorettype => 'index_am_handler', proargtypes => 'internal', 935 prosrc => 'brinhandler' }, 936{ oid => '3952', descr => 'brin: standalone scan new table pages', 937 proname => 'brin_summarize_new_values', provolatile => 'v', 938 proparallel => 'u', prorettype => 'int4', proargtypes => 'regclass', 939 prosrc => 'brin_summarize_new_values' }, 940{ oid => '3999', descr => 'brin: standalone scan new table pages', 941 proname => 'brin_summarize_range', provolatile => 'v', proparallel => 'u', 942 prorettype => 'int4', proargtypes => 'regclass int8', 943 prosrc => 'brin_summarize_range' }, 944{ oid => '4014', descr => 'brin: desummarize page range', 945 proname => 'brin_desummarize_range', provolatile => 'v', proparallel => 'u', 946 prorettype => 'void', proargtypes => 'regclass int8', 947 prosrc => 'brin_desummarize_range' }, 948 949{ oid => '338', descr => 'validate an operator class', 950 proname => 'amvalidate', provolatile => 'v', prorettype => 'bool', 951 proargtypes => 'oid', prosrc => 'amvalidate' }, 952 953{ oid => '636', descr => 'test property of an index access method', 954 proname => 'pg_indexam_has_property', provolatile => 's', 955 prorettype => 'bool', proargtypes => 'oid text', 956 prosrc => 'pg_indexam_has_property' }, 957{ oid => '637', descr => 'test property of an index', 958 proname => 'pg_index_has_property', provolatile => 's', prorettype => 'bool', 959 proargtypes => 'regclass text', prosrc => 'pg_index_has_property' }, 960{ oid => '638', descr => 'test property of an index column', 961 proname => 'pg_index_column_has_property', provolatile => 's', 962 prorettype => 'bool', proargtypes => 'regclass int4 text', 963 prosrc => 'pg_index_column_has_property' }, 964{ oid => '676', descr => 'return name of given index build phase', 965 proname => 'pg_indexam_progress_phasename', prorettype => 'text', 966 proargtypes => 'oid int8', prosrc => 'pg_indexam_progress_phasename' }, 967 968{ oid => '339', 969 proname => 'poly_same', prorettype => 'bool', 970 proargtypes => 'polygon polygon', prosrc => 'poly_same' }, 971{ oid => '340', 972 proname => 'poly_contain', prorettype => 'bool', 973 proargtypes => 'polygon polygon', prosrc => 'poly_contain' }, 974{ oid => '341', 975 proname => 'poly_left', prorettype => 'bool', 976 proargtypes => 'polygon polygon', prosrc => 'poly_left' }, 977{ oid => '342', 978 proname => 'poly_overleft', prorettype => 'bool', 979 proargtypes => 'polygon polygon', prosrc => 'poly_overleft' }, 980{ oid => '343', 981 proname => 'poly_overright', prorettype => 'bool', 982 proargtypes => 'polygon polygon', prosrc => 'poly_overright' }, 983{ oid => '344', 984 proname => 'poly_right', prorettype => 'bool', 985 proargtypes => 'polygon polygon', prosrc => 'poly_right' }, 986{ oid => '345', 987 proname => 'poly_contained', prorettype => 'bool', 988 proargtypes => 'polygon polygon', prosrc => 'poly_contained' }, 989{ oid => '346', 990 proname => 'poly_overlap', prorettype => 'bool', 991 proargtypes => 'polygon polygon', prosrc => 'poly_overlap' }, 992{ oid => '347', descr => 'I/O', 993 proname => 'poly_in', prorettype => 'polygon', proargtypes => 'cstring', 994 prosrc => 'poly_in' }, 995{ oid => '348', descr => 'I/O', 996 proname => 'poly_out', prorettype => 'cstring', proargtypes => 'polygon', 997 prosrc => 'poly_out' }, 998 999{ oid => '350', descr => 'less-equal-greater', 1000 proname => 'btint2cmp', proleakproof => 't', prorettype => 'int4', 1001 proargtypes => 'int2 int2', prosrc => 'btint2cmp' }, 1002{ oid => '3129', descr => 'sort support', 1003 proname => 'btint2sortsupport', prorettype => 'void', 1004 proargtypes => 'internal', prosrc => 'btint2sortsupport' }, 1005{ oid => '351', descr => 'less-equal-greater', 1006 proname => 'btint4cmp', proleakproof => 't', prorettype => 'int4', 1007 proargtypes => 'int4 int4', prosrc => 'btint4cmp' }, 1008{ oid => '3130', descr => 'sort support', 1009 proname => 'btint4sortsupport', prorettype => 'void', 1010 proargtypes => 'internal', prosrc => 'btint4sortsupport' }, 1011{ oid => '842', descr => 'less-equal-greater', 1012 proname => 'btint8cmp', proleakproof => 't', prorettype => 'int4', 1013 proargtypes => 'int8 int8', prosrc => 'btint8cmp' }, 1014{ oid => '3131', descr => 'sort support', 1015 proname => 'btint8sortsupport', prorettype => 'void', 1016 proargtypes => 'internal', prosrc => 'btint8sortsupport' }, 1017{ oid => '354', descr => 'less-equal-greater', 1018 proname => 'btfloat4cmp', proleakproof => 't', prorettype => 'int4', 1019 proargtypes => 'float4 float4', prosrc => 'btfloat4cmp' }, 1020{ oid => '3132', descr => 'sort support', 1021 proname => 'btfloat4sortsupport', prorettype => 'void', 1022 proargtypes => 'internal', prosrc => 'btfloat4sortsupport' }, 1023{ oid => '355', descr => 'less-equal-greater', 1024 proname => 'btfloat8cmp', proleakproof => 't', prorettype => 'int4', 1025 proargtypes => 'float8 float8', prosrc => 'btfloat8cmp' }, 1026{ oid => '3133', descr => 'sort support', 1027 proname => 'btfloat8sortsupport', prorettype => 'void', 1028 proargtypes => 'internal', prosrc => 'btfloat8sortsupport' }, 1029{ oid => '356', descr => 'less-equal-greater', 1030 proname => 'btoidcmp', proleakproof => 't', prorettype => 'int4', 1031 proargtypes => 'oid oid', prosrc => 'btoidcmp' }, 1032{ oid => '3134', descr => 'sort support', 1033 proname => 'btoidsortsupport', prorettype => 'void', 1034 proargtypes => 'internal', prosrc => 'btoidsortsupport' }, 1035{ oid => '404', descr => 'less-equal-greater', 1036 proname => 'btoidvectorcmp', proleakproof => 't', prorettype => 'int4', 1037 proargtypes => 'oidvector oidvector', prosrc => 'btoidvectorcmp' }, 1038{ oid => '358', descr => 'less-equal-greater', 1039 proname => 'btcharcmp', proleakproof => 't', prorettype => 'int4', 1040 proargtypes => 'char char', prosrc => 'btcharcmp' }, 1041{ oid => '359', descr => 'less-equal-greater', 1042 proname => 'btnamecmp', proleakproof => 't', prorettype => 'int4', 1043 proargtypes => 'name name', prosrc => 'btnamecmp' }, 1044{ oid => '3135', descr => 'sort support', 1045 proname => 'btnamesortsupport', prorettype => 'void', 1046 proargtypes => 'internal', prosrc => 'btnamesortsupport' }, 1047{ oid => '360', descr => 'less-equal-greater', 1048 proname => 'bttextcmp', proleakproof => 't', prorettype => 'int4', 1049 proargtypes => 'text text', prosrc => 'bttextcmp' }, 1050{ oid => '3255', descr => 'sort support', 1051 proname => 'bttextsortsupport', prorettype => 'void', 1052 proargtypes => 'internal', prosrc => 'bttextsortsupport' }, 1053{ oid => '5050', descr => 'equal image', 1054 proname => 'btvarstrequalimage', prorettype => 'bool', proargtypes => 'oid', 1055 prosrc => 'btvarstrequalimage' }, 1056{ oid => '377', descr => 'less-equal-greater', 1057 proname => 'cash_cmp', proleakproof => 't', prorettype => 'int4', 1058 proargtypes => 'money money', prosrc => 'cash_cmp' }, 1059{ oid => '382', descr => 'less-equal-greater', 1060 proname => 'btarraycmp', prorettype => 'int4', 1061 proargtypes => 'anyarray anyarray', prosrc => 'btarraycmp' }, 1062{ oid => '4126', descr => 'window RANGE support', 1063 proname => 'in_range', prorettype => 'bool', 1064 proargtypes => 'int8 int8 int8 bool bool', prosrc => 'in_range_int8_int8' }, 1065{ oid => '4127', descr => 'window RANGE support', 1066 proname => 'in_range', prorettype => 'bool', 1067 proargtypes => 'int4 int4 int8 bool bool', prosrc => 'in_range_int4_int8' }, 1068{ oid => '4128', descr => 'window RANGE support', 1069 proname => 'in_range', prorettype => 'bool', 1070 proargtypes => 'int4 int4 int4 bool bool', prosrc => 'in_range_int4_int4' }, 1071{ oid => '4129', descr => 'window RANGE support', 1072 proname => 'in_range', prorettype => 'bool', 1073 proargtypes => 'int4 int4 int2 bool bool', prosrc => 'in_range_int4_int2' }, 1074{ oid => '4130', descr => 'window RANGE support', 1075 proname => 'in_range', prorettype => 'bool', 1076 proargtypes => 'int2 int2 int8 bool bool', prosrc => 'in_range_int2_int8' }, 1077{ oid => '4131', descr => 'window RANGE support', 1078 proname => 'in_range', prorettype => 'bool', 1079 proargtypes => 'int2 int2 int4 bool bool', prosrc => 'in_range_int2_int4' }, 1080{ oid => '4132', descr => 'window RANGE support', 1081 proname => 'in_range', prorettype => 'bool', 1082 proargtypes => 'int2 int2 int2 bool bool', prosrc => 'in_range_int2_int2' }, 1083{ oid => '4139', descr => 'window RANGE support', 1084 proname => 'in_range', prorettype => 'bool', 1085 proargtypes => 'float8 float8 float8 bool bool', 1086 prosrc => 'in_range_float8_float8' }, 1087{ oid => '4140', descr => 'window RANGE support', 1088 proname => 'in_range', prorettype => 'bool', 1089 proargtypes => 'float4 float4 float8 bool bool', 1090 prosrc => 'in_range_float4_float8' }, 1091{ oid => '4141', descr => 'window RANGE support', 1092 proname => 'in_range', prorettype => 'bool', 1093 proargtypes => 'numeric numeric numeric bool bool', 1094 prosrc => 'in_range_numeric_numeric' }, 1095 1096{ oid => '361', 1097 proname => 'lseg_distance', prorettype => 'float8', 1098 proargtypes => 'lseg lseg', prosrc => 'lseg_distance' }, 1099{ oid => '362', 1100 proname => 'lseg_interpt', prorettype => 'point', proargtypes => 'lseg lseg', 1101 prosrc => 'lseg_interpt' }, 1102{ oid => '363', 1103 proname => 'dist_ps', prorettype => 'float8', proargtypes => 'point lseg', 1104 prosrc => 'dist_ps' }, 1105{ oid => '380', 1106 proname => 'dist_sp', prorettype => 'float8', proargtypes => 'lseg point', 1107 prosrc => 'dist_sp' }, 1108{ oid => '364', 1109 proname => 'dist_pb', prorettype => 'float8', proargtypes => 'point box', 1110 prosrc => 'dist_pb' }, 1111{ oid => '357', 1112 proname => 'dist_bp', prorettype => 'float8', proargtypes => 'box point', 1113 prosrc => 'dist_bp' }, 1114{ oid => '365', 1115 proname => 'dist_sb', prorettype => 'float8', proargtypes => 'lseg box', 1116 prosrc => 'dist_sb' }, 1117{ oid => '381', 1118 proname => 'dist_bs', prorettype => 'float8', proargtypes => 'box lseg', 1119 prosrc => 'dist_bs' }, 1120{ oid => '366', 1121 proname => 'close_ps', prorettype => 'point', proargtypes => 'point lseg', 1122 prosrc => 'close_ps' }, 1123{ oid => '367', 1124 proname => 'close_pb', prorettype => 'point', proargtypes => 'point box', 1125 prosrc => 'close_pb' }, 1126{ oid => '368', 1127 proname => 'close_sb', prorettype => 'point', proargtypes => 'lseg box', 1128 prosrc => 'close_sb' }, 1129{ oid => '369', 1130 proname => 'on_ps', prorettype => 'bool', proargtypes => 'point lseg', 1131 prosrc => 'on_ps' }, 1132{ oid => '370', 1133 proname => 'path_distance', prorettype => 'float8', 1134 proargtypes => 'path path', prosrc => 'path_distance' }, 1135{ oid => '371', 1136 proname => 'dist_ppath', prorettype => 'float8', proargtypes => 'point path', 1137 prosrc => 'dist_ppath' }, 1138{ oid => '421', 1139 proname => 'dist_pathp', prorettype => 'float8', proargtypes => 'path point', 1140 prosrc => 'dist_pathp' }, 1141{ oid => '372', 1142 proname => 'on_sb', prorettype => 'bool', proargtypes => 'lseg box', 1143 prosrc => 'on_sb' }, 1144{ oid => '373', 1145 proname => 'inter_sb', prorettype => 'bool', proargtypes => 'lseg box', 1146 prosrc => 'inter_sb' }, 1147 1148# OIDS 400 - 499 1149 1150{ oid => '401', descr => 'convert char(n) to text', 1151 proname => 'text', prorettype => 'text', proargtypes => 'bpchar', 1152 prosrc => 'rtrim1' }, 1153{ oid => '406', descr => 'convert name to text', 1154 proname => 'text', prorettype => 'text', proargtypes => 'name', 1155 prosrc => 'name_text' }, 1156{ oid => '407', descr => 'convert text to name', 1157 proname => 'name', prorettype => 'name', proargtypes => 'text', 1158 prosrc => 'text_name' }, 1159{ oid => '408', descr => 'convert name to char(n)', 1160 proname => 'bpchar', prorettype => 'bpchar', proargtypes => 'name', 1161 prosrc => 'name_bpchar' }, 1162{ oid => '409', descr => 'convert char(n) to name', 1163 proname => 'name', prorettype => 'name', proargtypes => 'bpchar', 1164 prosrc => 'bpchar_name' }, 1165 1166{ oid => '449', descr => 'hash', 1167 proname => 'hashint2', prorettype => 'int4', proargtypes => 'int2', 1168 prosrc => 'hashint2' }, 1169{ oid => '441', descr => 'hash', 1170 proname => 'hashint2extended', prorettype => 'int8', 1171 proargtypes => 'int2 int8', prosrc => 'hashint2extended' }, 1172{ oid => '450', descr => 'hash', 1173 proname => 'hashint4', prorettype => 'int4', proargtypes => 'int4', 1174 prosrc => 'hashint4' }, 1175{ oid => '425', descr => 'hash', 1176 proname => 'hashint4extended', prorettype => 'int8', 1177 proargtypes => 'int4 int8', prosrc => 'hashint4extended' }, 1178{ oid => '949', descr => 'hash', 1179 proname => 'hashint8', prorettype => 'int4', proargtypes => 'int8', 1180 prosrc => 'hashint8' }, 1181{ oid => '442', descr => 'hash', 1182 proname => 'hashint8extended', prorettype => 'int8', 1183 proargtypes => 'int8 int8', prosrc => 'hashint8extended' }, 1184{ oid => '451', descr => 'hash', 1185 proname => 'hashfloat4', prorettype => 'int4', proargtypes => 'float4', 1186 prosrc => 'hashfloat4' }, 1187{ oid => '443', descr => 'hash', 1188 proname => 'hashfloat4extended', prorettype => 'int8', 1189 proargtypes => 'float4 int8', prosrc => 'hashfloat4extended' }, 1190{ oid => '452', descr => 'hash', 1191 proname => 'hashfloat8', prorettype => 'int4', proargtypes => 'float8', 1192 prosrc => 'hashfloat8' }, 1193{ oid => '444', descr => 'hash', 1194 proname => 'hashfloat8extended', prorettype => 'int8', 1195 proargtypes => 'float8 int8', prosrc => 'hashfloat8extended' }, 1196{ oid => '453', descr => 'hash', 1197 proname => 'hashoid', prorettype => 'int4', proargtypes => 'oid', 1198 prosrc => 'hashoid' }, 1199{ oid => '445', descr => 'hash', 1200 proname => 'hashoidextended', prorettype => 'int8', proargtypes => 'oid int8', 1201 prosrc => 'hashoidextended' }, 1202{ oid => '454', descr => 'hash', 1203 proname => 'hashchar', prorettype => 'int4', proargtypes => 'char', 1204 prosrc => 'hashchar' }, 1205{ oid => '446', descr => 'hash', 1206 proname => 'hashcharextended', prorettype => 'int8', 1207 proargtypes => 'char int8', prosrc => 'hashcharextended' }, 1208{ oid => '455', descr => 'hash', 1209 proname => 'hashname', prorettype => 'int4', proargtypes => 'name', 1210 prosrc => 'hashname' }, 1211{ oid => '447', descr => 'hash', 1212 proname => 'hashnameextended', prorettype => 'int8', 1213 proargtypes => 'name int8', prosrc => 'hashnameextended' }, 1214{ oid => '400', descr => 'hash', 1215 proname => 'hashtext', prorettype => 'int4', proargtypes => 'text', 1216 prosrc => 'hashtext' }, 1217{ oid => '448', descr => 'hash', 1218 proname => 'hashtextextended', prorettype => 'int8', 1219 proargtypes => 'text int8', prosrc => 'hashtextextended' }, 1220{ oid => '456', descr => 'hash', 1221 proname => 'hashvarlena', prorettype => 'int4', proargtypes => 'internal', 1222 prosrc => 'hashvarlena' }, 1223{ oid => '772', descr => 'hash', 1224 proname => 'hashvarlenaextended', prorettype => 'int8', 1225 proargtypes => 'internal int8', prosrc => 'hashvarlenaextended' }, 1226{ oid => '457', descr => 'hash', 1227 proname => 'hashoidvector', prorettype => 'int4', proargtypes => 'oidvector', 1228 prosrc => 'hashoidvector' }, 1229{ oid => '776', descr => 'hash', 1230 proname => 'hashoidvectorextended', prorettype => 'int8', 1231 proargtypes => 'oidvector int8', prosrc => 'hashoidvectorextended' }, 1232{ oid => '329', descr => 'hash', 1233 proname => 'hash_aclitem', prorettype => 'int4', proargtypes => 'aclitem', 1234 prosrc => 'hash_aclitem' }, 1235{ oid => '777', descr => 'hash', 1236 proname => 'hash_aclitem_extended', prorettype => 'int8', 1237 proargtypes => 'aclitem int8', prosrc => 'hash_aclitem_extended' }, 1238{ oid => '399', descr => 'hash', 1239 proname => 'hashmacaddr', prorettype => 'int4', proargtypes => 'macaddr', 1240 prosrc => 'hashmacaddr' }, 1241{ oid => '778', descr => 'hash', 1242 proname => 'hashmacaddrextended', prorettype => 'int8', 1243 proargtypes => 'macaddr int8', prosrc => 'hashmacaddrextended' }, 1244{ oid => '422', descr => 'hash', 1245 proname => 'hashinet', prorettype => 'int4', proargtypes => 'inet', 1246 prosrc => 'hashinet' }, 1247{ oid => '779', descr => 'hash', 1248 proname => 'hashinetextended', prorettype => 'int8', 1249 proargtypes => 'inet int8', prosrc => 'hashinetextended' }, 1250{ oid => '432', descr => 'hash', 1251 proname => 'hash_numeric', prorettype => 'int4', proargtypes => 'numeric', 1252 prosrc => 'hash_numeric' }, 1253{ oid => '780', descr => 'hash', 1254 proname => 'hash_numeric_extended', prorettype => 'int8', 1255 proargtypes => 'numeric int8', prosrc => 'hash_numeric_extended' }, 1256{ oid => '328', descr => 'hash', 1257 proname => 'hashmacaddr8', prorettype => 'int4', proargtypes => 'macaddr8', 1258 prosrc => 'hashmacaddr8' }, 1259{ oid => '781', descr => 'hash', 1260 proname => 'hashmacaddr8extended', prorettype => 'int8', 1261 proargtypes => 'macaddr8 int8', prosrc => 'hashmacaddr8extended' }, 1262 1263{ oid => '438', descr => 'count the number of NULL arguments', 1264 proname => 'num_nulls', provariadic => 'any', proisstrict => 'f', 1265 prorettype => 'int4', proargtypes => 'any', proallargtypes => '{any}', 1266 proargmodes => '{v}', prosrc => 'pg_num_nulls' }, 1267{ oid => '440', descr => 'count the number of non-NULL arguments', 1268 proname => 'num_nonnulls', provariadic => 'any', proisstrict => 'f', 1269 prorettype => 'int4', proargtypes => 'any', proallargtypes => '{any}', 1270 proargmodes => '{v}', prosrc => 'pg_num_nonnulls' }, 1271 1272{ oid => '458', descr => 'larger of two', 1273 proname => 'text_larger', proleakproof => 't', prorettype => 'text', 1274 proargtypes => 'text text', prosrc => 'text_larger' }, 1275{ oid => '459', descr => 'smaller of two', 1276 proname => 'text_smaller', proleakproof => 't', prorettype => 'text', 1277 proargtypes => 'text text', prosrc => 'text_smaller' }, 1278 1279{ oid => '460', descr => 'I/O', 1280 proname => 'int8in', prorettype => 'int8', proargtypes => 'cstring', 1281 prosrc => 'int8in' }, 1282{ oid => '461', descr => 'I/O', 1283 proname => 'int8out', prorettype => 'cstring', proargtypes => 'int8', 1284 prosrc => 'int8out' }, 1285{ oid => '462', 1286 proname => 'int8um', prorettype => 'int8', proargtypes => 'int8', 1287 prosrc => 'int8um' }, 1288{ oid => '463', 1289 proname => 'int8pl', prorettype => 'int8', proargtypes => 'int8 int8', 1290 prosrc => 'int8pl' }, 1291{ oid => '464', 1292 proname => 'int8mi', prorettype => 'int8', proargtypes => 'int8 int8', 1293 prosrc => 'int8mi' }, 1294{ oid => '465', 1295 proname => 'int8mul', prorettype => 'int8', proargtypes => 'int8 int8', 1296 prosrc => 'int8mul' }, 1297{ oid => '466', 1298 proname => 'int8div', prorettype => 'int8', proargtypes => 'int8 int8', 1299 prosrc => 'int8div' }, 1300{ oid => '467', 1301 proname => 'int8eq', proleakproof => 't', prorettype => 'bool', 1302 proargtypes => 'int8 int8', prosrc => 'int8eq' }, 1303{ oid => '468', 1304 proname => 'int8ne', proleakproof => 't', prorettype => 'bool', 1305 proargtypes => 'int8 int8', prosrc => 'int8ne' }, 1306{ oid => '469', 1307 proname => 'int8lt', proleakproof => 't', prorettype => 'bool', 1308 proargtypes => 'int8 int8', prosrc => 'int8lt' }, 1309{ oid => '470', 1310 proname => 'int8gt', proleakproof => 't', prorettype => 'bool', 1311 proargtypes => 'int8 int8', prosrc => 'int8gt' }, 1312{ oid => '471', 1313 proname => 'int8le', proleakproof => 't', prorettype => 'bool', 1314 proargtypes => 'int8 int8', prosrc => 'int8le' }, 1315{ oid => '472', 1316 proname => 'int8ge', proleakproof => 't', prorettype => 'bool', 1317 proargtypes => 'int8 int8', prosrc => 'int8ge' }, 1318 1319{ oid => '474', 1320 proname => 'int84eq', proleakproof => 't', prorettype => 'bool', 1321 proargtypes => 'int8 int4', prosrc => 'int84eq' }, 1322{ oid => '475', 1323 proname => 'int84ne', proleakproof => 't', prorettype => 'bool', 1324 proargtypes => 'int8 int4', prosrc => 'int84ne' }, 1325{ oid => '476', 1326 proname => 'int84lt', proleakproof => 't', prorettype => 'bool', 1327 proargtypes => 'int8 int4', prosrc => 'int84lt' }, 1328{ oid => '477', 1329 proname => 'int84gt', proleakproof => 't', prorettype => 'bool', 1330 proargtypes => 'int8 int4', prosrc => 'int84gt' }, 1331{ oid => '478', 1332 proname => 'int84le', proleakproof => 't', prorettype => 'bool', 1333 proargtypes => 'int8 int4', prosrc => 'int84le' }, 1334{ oid => '479', 1335 proname => 'int84ge', proleakproof => 't', prorettype => 'bool', 1336 proargtypes => 'int8 int4', prosrc => 'int84ge' }, 1337 1338{ oid => '480', descr => 'convert int8 to int4', 1339 proname => 'int4', prorettype => 'int4', proargtypes => 'int8', 1340 prosrc => 'int84' }, 1341{ oid => '481', descr => 'convert int4 to int8', 1342 proname => 'int8', prorettype => 'int8', proargtypes => 'int4', 1343 prosrc => 'int48' }, 1344{ oid => '482', descr => 'convert int8 to float8', 1345 proname => 'float8', prorettype => 'float8', proargtypes => 'int8', 1346 prosrc => 'i8tod' }, 1347{ oid => '483', descr => 'convert float8 to int8', 1348 proname => 'int8', prorettype => 'int8', proargtypes => 'float8', 1349 prosrc => 'dtoi8' }, 1350 1351# OIDS 500 - 599 1352 1353# OIDS 600 - 699 1354 1355{ oid => '626', descr => 'hash', 1356 proname => 'hash_array', prorettype => 'int4', proargtypes => 'anyarray', 1357 prosrc => 'hash_array' }, 1358{ oid => '782', descr => 'hash', 1359 proname => 'hash_array_extended', prorettype => 'int8', 1360 proargtypes => 'anyarray int8', prosrc => 'hash_array_extended' }, 1361 1362{ oid => '652', descr => 'convert int8 to float4', 1363 proname => 'float4', prorettype => 'float4', proargtypes => 'int8', 1364 prosrc => 'i8tof' }, 1365{ oid => '653', descr => 'convert float4 to int8', 1366 proname => 'int8', prorettype => 'int8', proargtypes => 'float4', 1367 prosrc => 'ftoi8' }, 1368 1369{ oid => '714', descr => 'convert int8 to int2', 1370 proname => 'int2', prorettype => 'int2', proargtypes => 'int8', 1371 prosrc => 'int82' }, 1372{ oid => '754', descr => 'convert int2 to int8', 1373 proname => 'int8', prorettype => 'int8', proargtypes => 'int2', 1374 prosrc => 'int28' }, 1375 1376{ oid => '655', 1377 proname => 'namelt', proleakproof => 't', prorettype => 'bool', 1378 proargtypes => 'name name', prosrc => 'namelt' }, 1379{ oid => '656', 1380 proname => 'namele', proleakproof => 't', prorettype => 'bool', 1381 proargtypes => 'name name', prosrc => 'namele' }, 1382{ oid => '657', 1383 proname => 'namegt', proleakproof => 't', prorettype => 'bool', 1384 proargtypes => 'name name', prosrc => 'namegt' }, 1385{ oid => '658', 1386 proname => 'namege', proleakproof => 't', prorettype => 'bool', 1387 proargtypes => 'name name', prosrc => 'namege' }, 1388{ oid => '659', 1389 proname => 'namene', proleakproof => 't', prorettype => 'bool', 1390 proargtypes => 'name name', prosrc => 'namene' }, 1391 1392{ oid => '668', descr => 'adjust char() to typmod length', 1393 proname => 'bpchar', prorettype => 'bpchar', 1394 proargtypes => 'bpchar int4 bool', prosrc => 'bpchar' }, 1395{ oid => '3097', descr => 'planner support for varchar length coercion', 1396 proname => 'varchar_support', prorettype => 'internal', 1397 proargtypes => 'internal', prosrc => 'varchar_support' }, 1398{ oid => '669', descr => 'adjust varchar() to typmod length', 1399 proname => 'varchar', prosupport => 'varchar_support', 1400 prorettype => 'varchar', proargtypes => 'varchar int4 bool', 1401 prosrc => 'varchar' }, 1402 1403{ oid => '619', 1404 proname => 'oidvectorne', proleakproof => 't', prorettype => 'bool', 1405 proargtypes => 'oidvector oidvector', prosrc => 'oidvectorne' }, 1406{ oid => '677', 1407 proname => 'oidvectorlt', proleakproof => 't', prorettype => 'bool', 1408 proargtypes => 'oidvector oidvector', prosrc => 'oidvectorlt' }, 1409{ oid => '678', 1410 proname => 'oidvectorle', proleakproof => 't', prorettype => 'bool', 1411 proargtypes => 'oidvector oidvector', prosrc => 'oidvectorle' }, 1412{ oid => '679', 1413 proname => 'oidvectoreq', proleakproof => 't', prorettype => 'bool', 1414 proargtypes => 'oidvector oidvector', prosrc => 'oidvectoreq' }, 1415{ oid => '680', 1416 proname => 'oidvectorge', proleakproof => 't', prorettype => 'bool', 1417 proargtypes => 'oidvector oidvector', prosrc => 'oidvectorge' }, 1418{ oid => '681', 1419 proname => 'oidvectorgt', proleakproof => 't', prorettype => 'bool', 1420 proargtypes => 'oidvector oidvector', prosrc => 'oidvectorgt' }, 1421 1422# OIDS 700 - 799 1423{ oid => '710', descr => 'deprecated, use current_user instead', 1424 proname => 'getpgusername', provolatile => 's', prorettype => 'name', 1425 proargtypes => '', prosrc => 'current_user' }, 1426{ oid => '716', 1427 proname => 'oidlt', proleakproof => 't', prorettype => 'bool', 1428 proargtypes => 'oid oid', prosrc => 'oidlt' }, 1429{ oid => '717', 1430 proname => 'oidle', proleakproof => 't', prorettype => 'bool', 1431 proargtypes => 'oid oid', prosrc => 'oidle' }, 1432 1433{ oid => '720', descr => 'octet length', 1434 proname => 'octet_length', prorettype => 'int4', proargtypes => 'bytea', 1435 prosrc => 'byteaoctetlen' }, 1436{ oid => '721', descr => 'get byte', 1437 proname => 'get_byte', prorettype => 'int4', proargtypes => 'bytea int4', 1438 prosrc => 'byteaGetByte' }, 1439{ oid => '722', descr => 'set byte', 1440 proname => 'set_byte', prorettype => 'bytea', 1441 proargtypes => 'bytea int4 int4', prosrc => 'byteaSetByte' }, 1442{ oid => '723', descr => 'get bit', 1443 proname => 'get_bit', prorettype => 'int4', proargtypes => 'bytea int8', 1444 prosrc => 'byteaGetBit' }, 1445{ oid => '724', descr => 'set bit', 1446 proname => 'set_bit', prorettype => 'bytea', proargtypes => 'bytea int8 int4', 1447 prosrc => 'byteaSetBit' }, 1448{ oid => '749', descr => 'substitute portion of string', 1449 proname => 'overlay', prorettype => 'bytea', 1450 proargtypes => 'bytea bytea int4 int4', prosrc => 'byteaoverlay' }, 1451{ oid => '752', descr => 'substitute portion of string', 1452 proname => 'overlay', prorettype => 'bytea', 1453 proargtypes => 'bytea bytea int4', prosrc => 'byteaoverlay_no_len' }, 1454 1455{ oid => '725', 1456 proname => 'dist_pl', prorettype => 'float8', proargtypes => 'point line', 1457 prosrc => 'dist_pl' }, 1458{ oid => '702', 1459 proname => 'dist_lp', prorettype => 'float8', proargtypes => 'line point', 1460 prosrc => 'dist_lp' }, 1461{ oid => '726', 1462 proname => 'dist_lb', prorettype => 'float8', proargtypes => 'line box', 1463 prosrc => 'dist_lb' }, 1464{ oid => '703', 1465 proname => 'dist_bl', prorettype => 'float8', proargtypes => 'box line', 1466 prosrc => 'dist_bl' }, 1467{ oid => '727', 1468 proname => 'dist_sl', prorettype => 'float8', proargtypes => 'lseg line', 1469 prosrc => 'dist_sl' }, 1470{ oid => '704', 1471 proname => 'dist_ls', prorettype => 'float8', proargtypes => 'line lseg', 1472 prosrc => 'dist_ls' }, 1473 1474{ oid => '728', 1475 proname => 'dist_cpoly', prorettype => 'float8', 1476 proargtypes => 'circle polygon', prosrc => 'dist_cpoly' }, 1477{ oid => '785', 1478 proname => 'dist_polyc', prorettype => 'float8', 1479 proargtypes => 'polygon circle', prosrc => 'dist_polyc' }, 1480{ oid => '729', 1481 proname => 'poly_distance', prorettype => 'float8', 1482 proargtypes => 'polygon polygon', prosrc => 'poly_distance' }, 1483{ oid => '3275', 1484 proname => 'dist_ppoly', prorettype => 'float8', 1485 proargtypes => 'point polygon', prosrc => 'dist_ppoly' }, 1486{ oid => '3292', 1487 proname => 'dist_polyp', prorettype => 'float8', 1488 proargtypes => 'polygon point', prosrc => 'dist_polyp' }, 1489{ oid => '3290', 1490 proname => 'dist_cpoint', prorettype => 'float8', 1491 proargtypes => 'circle point', prosrc => 'dist_cpoint' }, 1492 1493{ oid => '740', 1494 proname => 'text_lt', proleakproof => 't', prorettype => 'bool', 1495 proargtypes => 'text text', prosrc => 'text_lt' }, 1496{ oid => '741', 1497 proname => 'text_le', proleakproof => 't', prorettype => 'bool', 1498 proargtypes => 'text text', prosrc => 'text_le' }, 1499{ oid => '742', 1500 proname => 'text_gt', proleakproof => 't', prorettype => 'bool', 1501 proargtypes => 'text text', prosrc => 'text_gt' }, 1502{ oid => '743', 1503 proname => 'text_ge', proleakproof => 't', prorettype => 'bool', 1504 proargtypes => 'text text', prosrc => 'text_ge' }, 1505 1506{ oid => '745', descr => 'current user name', 1507 proname => 'current_user', provolatile => 's', prorettype => 'name', 1508 proargtypes => '', prosrc => 'current_user' }, 1509{ oid => '746', descr => 'session user name', 1510 proname => 'session_user', provolatile => 's', prorettype => 'name', 1511 proargtypes => '', prosrc => 'session_user' }, 1512 1513{ oid => '744', 1514 proname => 'array_eq', prorettype => 'bool', 1515 proargtypes => 'anyarray anyarray', prosrc => 'array_eq' }, 1516{ oid => '390', 1517 proname => 'array_ne', prorettype => 'bool', 1518 proargtypes => 'anyarray anyarray', prosrc => 'array_ne' }, 1519{ oid => '391', 1520 proname => 'array_lt', prorettype => 'bool', 1521 proargtypes => 'anyarray anyarray', prosrc => 'array_lt' }, 1522{ oid => '392', 1523 proname => 'array_gt', prorettype => 'bool', 1524 proargtypes => 'anyarray anyarray', prosrc => 'array_gt' }, 1525{ oid => '393', 1526 proname => 'array_le', prorettype => 'bool', 1527 proargtypes => 'anyarray anyarray', prosrc => 'array_le' }, 1528{ oid => '396', 1529 proname => 'array_ge', prorettype => 'bool', 1530 proargtypes => 'anyarray anyarray', prosrc => 'array_ge' }, 1531{ oid => '747', descr => 'array dimensions', 1532 proname => 'array_dims', prorettype => 'text', proargtypes => 'anyarray', 1533 prosrc => 'array_dims' }, 1534{ oid => '748', descr => 'number of array dimensions', 1535 proname => 'array_ndims', prorettype => 'int4', proargtypes => 'anyarray', 1536 prosrc => 'array_ndims' }, 1537{ oid => '750', descr => 'I/O', 1538 proname => 'array_in', provolatile => 's', prorettype => 'anyarray', 1539 proargtypes => 'cstring oid int4', prosrc => 'array_in' }, 1540{ oid => '751', descr => 'I/O', 1541 proname => 'array_out', provolatile => 's', prorettype => 'cstring', 1542 proargtypes => 'anyarray', prosrc => 'array_out' }, 1543{ oid => '2091', descr => 'array lower dimension', 1544 proname => 'array_lower', prorettype => 'int4', 1545 proargtypes => 'anyarray int4', prosrc => 'array_lower' }, 1546{ oid => '2092', descr => 'array upper dimension', 1547 proname => 'array_upper', prorettype => 'int4', 1548 proargtypes => 'anyarray int4', prosrc => 'array_upper' }, 1549{ oid => '2176', descr => 'array length', 1550 proname => 'array_length', prorettype => 'int4', 1551 proargtypes => 'anyarray int4', prosrc => 'array_length' }, 1552{ oid => '3179', descr => 'array cardinality', 1553 proname => 'cardinality', prorettype => 'int4', proargtypes => 'anyarray', 1554 prosrc => 'array_cardinality' }, 1555{ oid => '378', descr => 'append element onto end of array', 1556 proname => 'array_append', proisstrict => 'f', prorettype => 'anyarray', 1557 proargtypes => 'anyarray anyelement', prosrc => 'array_append' }, 1558{ oid => '379', descr => 'prepend element onto front of array', 1559 proname => 'array_prepend', proisstrict => 'f', prorettype => 'anyarray', 1560 proargtypes => 'anyelement anyarray', prosrc => 'array_prepend' }, 1561{ oid => '383', 1562 proname => 'array_cat', proisstrict => 'f', prorettype => 'anyarray', 1563 proargtypes => 'anyarray anyarray', prosrc => 'array_cat' }, 1564{ oid => '394', descr => 'split delimited text into text[]', 1565 proname => 'string_to_array', proisstrict => 'f', prorettype => '_text', 1566 proargtypes => 'text text', prosrc => 'text_to_array' }, 1567{ oid => '395', 1568 descr => 'concatenate array elements, using delimiter, into text', 1569 proname => 'array_to_string', provolatile => 's', prorettype => 'text', 1570 proargtypes => 'anyarray text', prosrc => 'array_to_text' }, 1571{ oid => '376', descr => 'split delimited text into text[], with null string', 1572 proname => 'string_to_array', proisstrict => 'f', prorettype => '_text', 1573 proargtypes => 'text text text', prosrc => 'text_to_array_null' }, 1574{ oid => '384', 1575 descr => 'concatenate array elements, using delimiter and null string, into text', 1576 proname => 'array_to_string', proisstrict => 'f', provolatile => 's', 1577 prorettype => 'text', proargtypes => 'anyarray text text', 1578 prosrc => 'array_to_text_null' }, 1579{ oid => '515', descr => 'larger of two', 1580 proname => 'array_larger', prorettype => 'anyarray', 1581 proargtypes => 'anyarray anyarray', prosrc => 'array_larger' }, 1582{ oid => '516', descr => 'smaller of two', 1583 proname => 'array_smaller', prorettype => 'anyarray', 1584 proargtypes => 'anyarray anyarray', prosrc => 'array_smaller' }, 1585{ oid => '3277', descr => 'returns an offset of value in array', 1586 proname => 'array_position', proisstrict => 'f', prorettype => 'int4', 1587 proargtypes => 'anyarray anyelement', prosrc => 'array_position' }, 1588{ oid => '3278', 1589 descr => 'returns an offset of value in array with start index', 1590 proname => 'array_position', proisstrict => 'f', prorettype => 'int4', 1591 proargtypes => 'anyarray anyelement int4', prosrc => 'array_position_start' }, 1592{ oid => '3279', 1593 descr => 'returns an array of offsets of some value in array', 1594 proname => 'array_positions', proisstrict => 'f', prorettype => '_int4', 1595 proargtypes => 'anyarray anyelement', prosrc => 'array_positions' }, 1596{ oid => '1191', descr => 'array subscripts generator', 1597 proname => 'generate_subscripts', prorows => '1000', proretset => 't', 1598 prorettype => 'int4', proargtypes => 'anyarray int4 bool', 1599 prosrc => 'generate_subscripts' }, 1600{ oid => '1192', descr => 'array subscripts generator', 1601 proname => 'generate_subscripts', prorows => '1000', proretset => 't', 1602 prorettype => 'int4', proargtypes => 'anyarray int4', 1603 prosrc => 'generate_subscripts_nodir' }, 1604{ oid => '1193', descr => 'array constructor with value', 1605 proname => 'array_fill', proisstrict => 'f', prorettype => 'anyarray', 1606 proargtypes => 'anyelement _int4', prosrc => 'array_fill' }, 1607{ oid => '1286', descr => 'array constructor with value', 1608 proname => 'array_fill', proisstrict => 'f', prorettype => 'anyarray', 1609 proargtypes => 'anyelement _int4 _int4', 1610 prosrc => 'array_fill_with_lower_bounds' }, 1611{ oid => '2331', descr => 'expand array to set of rows', 1612 proname => 'unnest', prorows => '100', prosupport => 'array_unnest_support', 1613 proretset => 't', prorettype => 'anyelement', proargtypes => 'anyarray', 1614 prosrc => 'array_unnest' }, 1615{ oid => '3996', descr => 'planner support for array_unnest', 1616 proname => 'array_unnest_support', prorettype => 'internal', 1617 proargtypes => 'internal', prosrc => 'array_unnest_support' }, 1618{ oid => '3167', 1619 descr => 'remove any occurrences of an element from an array', 1620 proname => 'array_remove', proisstrict => 'f', prorettype => 'anyarray', 1621 proargtypes => 'anyarray anyelement', prosrc => 'array_remove' }, 1622{ oid => '3168', descr => 'replace any occurrences of an element in an array', 1623 proname => 'array_replace', proisstrict => 'f', prorettype => 'anyarray', 1624 proargtypes => 'anyarray anyelement anyelement', prosrc => 'array_replace' }, 1625{ oid => '2333', descr => 'aggregate transition function', 1626 proname => 'array_agg_transfn', proisstrict => 'f', prorettype => 'internal', 1627 proargtypes => 'internal anynonarray', prosrc => 'array_agg_transfn' }, 1628{ oid => '2334', descr => 'aggregate final function', 1629 proname => 'array_agg_finalfn', proisstrict => 'f', prorettype => 'anyarray', 1630 proargtypes => 'internal anynonarray', prosrc => 'array_agg_finalfn' }, 1631{ oid => '2335', descr => 'concatenate aggregate input into an array', 1632 proname => 'array_agg', prokind => 'a', proisstrict => 'f', 1633 prorettype => 'anyarray', proargtypes => 'anynonarray', 1634 prosrc => 'aggregate_dummy' }, 1635{ oid => '4051', descr => 'aggregate transition function', 1636 proname => 'array_agg_array_transfn', proisstrict => 'f', 1637 prorettype => 'internal', proargtypes => 'internal anyarray', 1638 prosrc => 'array_agg_array_transfn' }, 1639{ oid => '4052', descr => 'aggregate final function', 1640 proname => 'array_agg_array_finalfn', proisstrict => 'f', 1641 prorettype => 'anyarray', proargtypes => 'internal anyarray', 1642 prosrc => 'array_agg_array_finalfn' }, 1643{ oid => '4053', descr => 'concatenate aggregate input into an array', 1644 proname => 'array_agg', prokind => 'a', proisstrict => 'f', 1645 prorettype => 'anyarray', proargtypes => 'anyarray', 1646 prosrc => 'aggregate_dummy' }, 1647{ oid => '3218', 1648 descr => 'bucket number of operand given a sorted array of bucket lower bounds', 1649 proname => 'width_bucket', prorettype => 'int4', 1650 proargtypes => 'anyelement anyarray', prosrc => 'width_bucket_array' }, 1651{ oid => '3816', descr => 'array typanalyze', 1652 proname => 'array_typanalyze', provolatile => 's', prorettype => 'bool', 1653 proargtypes => 'internal', prosrc => 'array_typanalyze' }, 1654{ oid => '3817', 1655 descr => 'restriction selectivity for array-containment operators', 1656 proname => 'arraycontsel', provolatile => 's', prorettype => 'float8', 1657 proargtypes => 'internal oid internal int4', prosrc => 'arraycontsel' }, 1658{ oid => '3818', descr => 'join selectivity for array-containment operators', 1659 proname => 'arraycontjoinsel', provolatile => 's', prorettype => 'float8', 1660 proargtypes => 'internal oid internal int2 internal', 1661 prosrc => 'arraycontjoinsel' }, 1662 1663{ oid => '764', descr => 'large object import', 1664 proname => 'lo_import', provolatile => 'v', proparallel => 'u', 1665 prorettype => 'oid', proargtypes => 'text', prosrc => 'be_lo_import' }, 1666{ oid => '767', descr => 'large object import', 1667 proname => 'lo_import', provolatile => 'v', proparallel => 'u', 1668 prorettype => 'oid', proargtypes => 'text oid', 1669 prosrc => 'be_lo_import_with_oid' }, 1670{ oid => '765', descr => 'large object export', 1671 proname => 'lo_export', provolatile => 'v', proparallel => 'u', 1672 prorettype => 'int4', proargtypes => 'oid text', prosrc => 'be_lo_export' }, 1673 1674{ oid => '766', descr => 'increment', 1675 proname => 'int4inc', prorettype => 'int4', proargtypes => 'int4', 1676 prosrc => 'int4inc' }, 1677{ oid => '768', descr => 'larger of two', 1678 proname => 'int4larger', prorettype => 'int4', proargtypes => 'int4 int4', 1679 prosrc => 'int4larger' }, 1680{ oid => '769', descr => 'smaller of two', 1681 proname => 'int4smaller', prorettype => 'int4', proargtypes => 'int4 int4', 1682 prosrc => 'int4smaller' }, 1683{ oid => '770', descr => 'larger of two', 1684 proname => 'int2larger', prorettype => 'int2', proargtypes => 'int2 int2', 1685 prosrc => 'int2larger' }, 1686{ oid => '771', descr => 'smaller of two', 1687 proname => 'int2smaller', prorettype => 'int2', proargtypes => 'int2 int2', 1688 prosrc => 'int2smaller' }, 1689 1690# OIDS 800 - 899 1691 1692{ oid => '846', 1693 proname => 'cash_mul_flt4', prorettype => 'money', 1694 proargtypes => 'money float4', prosrc => 'cash_mul_flt4' }, 1695{ oid => '847', 1696 proname => 'cash_div_flt4', prorettype => 'money', 1697 proargtypes => 'money float4', prosrc => 'cash_div_flt4' }, 1698{ oid => '848', 1699 proname => 'flt4_mul_cash', prorettype => 'money', 1700 proargtypes => 'float4 money', prosrc => 'flt4_mul_cash' }, 1701 1702{ oid => '849', descr => 'position of substring', 1703 proname => 'position', prorettype => 'int4', proargtypes => 'text text', 1704 prosrc => 'textpos' }, 1705{ oid => '850', 1706 proname => 'textlike', prosupport => 'textlike_support', prorettype => 'bool', 1707 proargtypes => 'text text', prosrc => 'textlike' }, 1708{ oid => '1023', descr => 'planner support for textlike', 1709 proname => 'textlike_support', prorettype => 'internal', 1710 proargtypes => 'internal', prosrc => 'textlike_support' }, 1711{ oid => '851', 1712 proname => 'textnlike', prorettype => 'bool', proargtypes => 'text text', 1713 prosrc => 'textnlike' }, 1714 1715{ oid => '852', 1716 proname => 'int48eq', proleakproof => 't', prorettype => 'bool', 1717 proargtypes => 'int4 int8', prosrc => 'int48eq' }, 1718{ oid => '853', 1719 proname => 'int48ne', proleakproof => 't', prorettype => 'bool', 1720 proargtypes => 'int4 int8', prosrc => 'int48ne' }, 1721{ oid => '854', 1722 proname => 'int48lt', proleakproof => 't', prorettype => 'bool', 1723 proargtypes => 'int4 int8', prosrc => 'int48lt' }, 1724{ oid => '855', 1725 proname => 'int48gt', proleakproof => 't', prorettype => 'bool', 1726 proargtypes => 'int4 int8', prosrc => 'int48gt' }, 1727{ oid => '856', 1728 proname => 'int48le', proleakproof => 't', prorettype => 'bool', 1729 proargtypes => 'int4 int8', prosrc => 'int48le' }, 1730{ oid => '857', 1731 proname => 'int48ge', proleakproof => 't', prorettype => 'bool', 1732 proargtypes => 'int4 int8', prosrc => 'int48ge' }, 1733 1734{ oid => '858', 1735 proname => 'namelike', prosupport => 'textlike_support', prorettype => 'bool', 1736 proargtypes => 'name text', prosrc => 'namelike' }, 1737{ oid => '859', 1738 proname => 'namenlike', prorettype => 'bool', proargtypes => 'name text', 1739 prosrc => 'namenlike' }, 1740 1741{ oid => '860', descr => 'convert char to char(n)', 1742 proname => 'bpchar', prorettype => 'bpchar', proargtypes => 'char', 1743 prosrc => 'char_bpchar' }, 1744 1745{ oid => '861', descr => 'name of the current database', 1746 proname => 'current_database', provolatile => 's', prorettype => 'name', 1747 proargtypes => '', prosrc => 'current_database' }, 1748{ oid => '817', descr => 'get the currently executing query', 1749 proname => 'current_query', proisstrict => 'f', provolatile => 'v', 1750 proparallel => 'r', prorettype => 'text', proargtypes => '', 1751 prosrc => 'current_query' }, 1752 1753{ oid => '3399', 1754 proname => 'int8_mul_cash', prorettype => 'money', 1755 proargtypes => 'int8 money', prosrc => 'int8_mul_cash' }, 1756{ oid => '862', 1757 proname => 'int4_mul_cash', prorettype => 'money', 1758 proargtypes => 'int4 money', prosrc => 'int4_mul_cash' }, 1759{ oid => '863', 1760 proname => 'int2_mul_cash', prorettype => 'money', 1761 proargtypes => 'int2 money', prosrc => 'int2_mul_cash' }, 1762{ oid => '3344', 1763 proname => 'cash_mul_int8', prorettype => 'money', 1764 proargtypes => 'money int8', prosrc => 'cash_mul_int8' }, 1765{ oid => '3345', 1766 proname => 'cash_div_int8', prorettype => 'money', 1767 proargtypes => 'money int8', prosrc => 'cash_div_int8' }, 1768{ oid => '864', 1769 proname => 'cash_mul_int4', prorettype => 'money', 1770 proargtypes => 'money int4', prosrc => 'cash_mul_int4' }, 1771{ oid => '865', 1772 proname => 'cash_div_int4', prorettype => 'money', 1773 proargtypes => 'money int4', prosrc => 'cash_div_int4' }, 1774{ oid => '866', 1775 proname => 'cash_mul_int2', prorettype => 'money', 1776 proargtypes => 'money int2', prosrc => 'cash_mul_int2' }, 1777{ oid => '867', 1778 proname => 'cash_div_int2', prorettype => 'money', 1779 proargtypes => 'money int2', prosrc => 'cash_div_int2' }, 1780 1781{ oid => '886', descr => 'I/O', 1782 proname => 'cash_in', provolatile => 's', prorettype => 'money', 1783 proargtypes => 'cstring', prosrc => 'cash_in' }, 1784{ oid => '887', descr => 'I/O', 1785 proname => 'cash_out', provolatile => 's', prorettype => 'cstring', 1786 proargtypes => 'money', prosrc => 'cash_out' }, 1787{ oid => '888', 1788 proname => 'cash_eq', proleakproof => 't', prorettype => 'bool', 1789 proargtypes => 'money money', prosrc => 'cash_eq' }, 1790{ oid => '889', 1791 proname => 'cash_ne', proleakproof => 't', prorettype => 'bool', 1792 proargtypes => 'money money', prosrc => 'cash_ne' }, 1793{ oid => '890', 1794 proname => 'cash_lt', proleakproof => 't', prorettype => 'bool', 1795 proargtypes => 'money money', prosrc => 'cash_lt' }, 1796{ oid => '891', 1797 proname => 'cash_le', proleakproof => 't', prorettype => 'bool', 1798 proargtypes => 'money money', prosrc => 'cash_le' }, 1799{ oid => '892', 1800 proname => 'cash_gt', proleakproof => 't', prorettype => 'bool', 1801 proargtypes => 'money money', prosrc => 'cash_gt' }, 1802{ oid => '893', 1803 proname => 'cash_ge', proleakproof => 't', prorettype => 'bool', 1804 proargtypes => 'money money', prosrc => 'cash_ge' }, 1805{ oid => '894', 1806 proname => 'cash_pl', prorettype => 'money', proargtypes => 'money money', 1807 prosrc => 'cash_pl' }, 1808{ oid => '895', 1809 proname => 'cash_mi', prorettype => 'money', proargtypes => 'money money', 1810 prosrc => 'cash_mi' }, 1811{ oid => '896', 1812 proname => 'cash_mul_flt8', prorettype => 'money', 1813 proargtypes => 'money float8', prosrc => 'cash_mul_flt8' }, 1814{ oid => '897', 1815 proname => 'cash_div_flt8', prorettype => 'money', 1816 proargtypes => 'money float8', prosrc => 'cash_div_flt8' }, 1817{ oid => '898', descr => 'larger of two', 1818 proname => 'cashlarger', prorettype => 'money', proargtypes => 'money money', 1819 prosrc => 'cashlarger' }, 1820{ oid => '899', descr => 'smaller of two', 1821 proname => 'cashsmaller', prorettype => 'money', proargtypes => 'money money', 1822 prosrc => 'cashsmaller' }, 1823{ oid => '919', 1824 proname => 'flt8_mul_cash', prorettype => 'money', 1825 proargtypes => 'float8 money', prosrc => 'flt8_mul_cash' }, 1826{ oid => '935', descr => 'output money amount as words', 1827 proname => 'cash_words', prorettype => 'text', proargtypes => 'money', 1828 prosrc => 'cash_words' }, 1829{ oid => '3822', 1830 proname => 'cash_div_cash', prorettype => 'float8', 1831 proargtypes => 'money money', prosrc => 'cash_div_cash' }, 1832{ oid => '3823', descr => 'convert money to numeric', 1833 proname => 'numeric', provolatile => 's', prorettype => 'numeric', 1834 proargtypes => 'money', prosrc => 'cash_numeric' }, 1835{ oid => '3824', descr => 'convert numeric to money', 1836 proname => 'money', provolatile => 's', prorettype => 'money', 1837 proargtypes => 'numeric', prosrc => 'numeric_cash' }, 1838{ oid => '3811', descr => 'convert int4 to money', 1839 proname => 'money', provolatile => 's', prorettype => 'money', 1840 proargtypes => 'int4', prosrc => 'int4_cash' }, 1841{ oid => '3812', descr => 'convert int8 to money', 1842 proname => 'money', provolatile => 's', prorettype => 'money', 1843 proargtypes => 'int8', prosrc => 'int8_cash' }, 1844 1845# OIDS 900 - 999 1846 1847{ oid => '940', descr => 'modulus', 1848 proname => 'mod', prorettype => 'int2', proargtypes => 'int2 int2', 1849 prosrc => 'int2mod' }, 1850{ oid => '941', descr => 'modulus', 1851 proname => 'mod', prorettype => 'int4', proargtypes => 'int4 int4', 1852 prosrc => 'int4mod' }, 1853 1854{ oid => '945', 1855 proname => 'int8mod', prorettype => 'int8', proargtypes => 'int8 int8', 1856 prosrc => 'int8mod' }, 1857{ oid => '947', descr => 'modulus', 1858 proname => 'mod', prorettype => 'int8', proargtypes => 'int8 int8', 1859 prosrc => 'int8mod' }, 1860 1861{ oid => '5044', descr => 'greatest common divisor', 1862 proname => 'gcd', prorettype => 'int4', proargtypes => 'int4 int4', 1863 prosrc => 'int4gcd' }, 1864{ oid => '5045', descr => 'greatest common divisor', 1865 proname => 'gcd', prorettype => 'int8', proargtypes => 'int8 int8', 1866 prosrc => 'int8gcd' }, 1867 1868{ oid => '5046', descr => 'least common multiple', 1869 proname => 'lcm', prorettype => 'int4', proargtypes => 'int4 int4', 1870 prosrc => 'int4lcm' }, 1871{ oid => '5047', descr => 'least common multiple', 1872 proname => 'lcm', prorettype => 'int8', proargtypes => 'int8 int8', 1873 prosrc => 'int8lcm' }, 1874 1875{ oid => '944', descr => 'convert text to char', 1876 proname => 'char', prorettype => 'char', proargtypes => 'text', 1877 prosrc => 'text_char' }, 1878{ oid => '946', descr => 'convert char to text', 1879 proname => 'text', prorettype => 'text', proargtypes => 'char', 1880 prosrc => 'char_text' }, 1881 1882{ oid => '952', descr => 'large object open', 1883 proname => 'lo_open', provolatile => 'v', proparallel => 'u', 1884 prorettype => 'int4', proargtypes => 'oid int4', prosrc => 'be_lo_open' }, 1885{ oid => '953', descr => 'large object close', 1886 proname => 'lo_close', provolatile => 'v', proparallel => 'u', 1887 prorettype => 'int4', proargtypes => 'int4', prosrc => 'be_lo_close' }, 1888{ oid => '954', descr => 'large object read', 1889 proname => 'loread', provolatile => 'v', proparallel => 'u', 1890 prorettype => 'bytea', proargtypes => 'int4 int4', prosrc => 'be_loread' }, 1891{ oid => '955', descr => 'large object write', 1892 proname => 'lowrite', provolatile => 'v', proparallel => 'u', 1893 prorettype => 'int4', proargtypes => 'int4 bytea', prosrc => 'be_lowrite' }, 1894{ oid => '956', descr => 'large object seek', 1895 proname => 'lo_lseek', provolatile => 'v', proparallel => 'u', 1896 prorettype => 'int4', proargtypes => 'int4 int4 int4', 1897 prosrc => 'be_lo_lseek' }, 1898{ oid => '3170', descr => 'large object seek (64 bit)', 1899 proname => 'lo_lseek64', provolatile => 'v', proparallel => 'u', 1900 prorettype => 'int8', proargtypes => 'int4 int8 int4', 1901 prosrc => 'be_lo_lseek64' }, 1902{ oid => '957', descr => 'large object create', 1903 proname => 'lo_creat', provolatile => 'v', proparallel => 'u', 1904 prorettype => 'oid', proargtypes => 'int4', prosrc => 'be_lo_creat' }, 1905{ oid => '715', descr => 'large object create', 1906 proname => 'lo_create', provolatile => 'v', proparallel => 'u', 1907 prorettype => 'oid', proargtypes => 'oid', prosrc => 'be_lo_create' }, 1908{ oid => '958', descr => 'large object position', 1909 proname => 'lo_tell', provolatile => 'v', proparallel => 'u', 1910 prorettype => 'int4', proargtypes => 'int4', prosrc => 'be_lo_tell' }, 1911{ oid => '3171', descr => 'large object position (64 bit)', 1912 proname => 'lo_tell64', provolatile => 'v', proparallel => 'u', 1913 prorettype => 'int8', proargtypes => 'int4', prosrc => 'be_lo_tell64' }, 1914{ oid => '1004', descr => 'truncate large object', 1915 proname => 'lo_truncate', provolatile => 'v', proparallel => 'u', 1916 prorettype => 'int4', proargtypes => 'int4 int4', 1917 prosrc => 'be_lo_truncate' }, 1918{ oid => '3172', descr => 'truncate large object (64 bit)', 1919 proname => 'lo_truncate64', provolatile => 'v', proparallel => 'u', 1920 prorettype => 'int4', proargtypes => 'int4 int8', 1921 prosrc => 'be_lo_truncate64' }, 1922 1923{ oid => '3457', descr => 'create new large object with given content', 1924 proname => 'lo_from_bytea', provolatile => 'v', proparallel => 'u', 1925 prorettype => 'oid', proargtypes => 'oid bytea', 1926 prosrc => 'be_lo_from_bytea' }, 1927{ oid => '3458', descr => 'read entire large object', 1928 proname => 'lo_get', provolatile => 'v', proparallel => 'u', 1929 prorettype => 'bytea', proargtypes => 'oid', prosrc => 'be_lo_get' }, 1930{ oid => '3459', descr => 'read large object from offset for length', 1931 proname => 'lo_get', provolatile => 'v', proparallel => 'u', 1932 prorettype => 'bytea', proargtypes => 'oid int8 int4', 1933 prosrc => 'be_lo_get_fragment' }, 1934{ oid => '3460', descr => 'write data at offset', 1935 proname => 'lo_put', provolatile => 'v', proparallel => 'u', 1936 prorettype => 'void', proargtypes => 'oid int8 bytea', 1937 prosrc => 'be_lo_put' }, 1938 1939{ oid => '959', 1940 proname => 'on_pl', prorettype => 'bool', proargtypes => 'point line', 1941 prosrc => 'on_pl' }, 1942{ oid => '960', 1943 proname => 'on_sl', prorettype => 'bool', proargtypes => 'lseg line', 1944 prosrc => 'on_sl' }, 1945{ oid => '961', 1946 proname => 'close_pl', prorettype => 'point', proargtypes => 'point line', 1947 prosrc => 'close_pl' }, 1948{ oid => '962', 1949 proname => 'close_sl', prorettype => 'point', proargtypes => 'lseg line', 1950 prosrc => 'close_sl' }, 1951{ oid => '963', 1952 proname => 'close_lb', prorettype => 'point', proargtypes => 'line box', 1953 prosrc => 'close_lb' }, 1954 1955{ oid => '964', descr => 'large object unlink (delete)', 1956 proname => 'lo_unlink', provolatile => 'v', proparallel => 'u', 1957 prorettype => 'int4', proargtypes => 'oid', prosrc => 'be_lo_unlink' }, 1958 1959{ oid => '973', 1960 proname => 'path_inter', prorettype => 'bool', proargtypes => 'path path', 1961 prosrc => 'path_inter' }, 1962{ oid => '975', descr => 'box area', 1963 proname => 'area', prorettype => 'float8', proargtypes => 'box', 1964 prosrc => 'box_area' }, 1965{ oid => '976', descr => 'box width', 1966 proname => 'width', prorettype => 'float8', proargtypes => 'box', 1967 prosrc => 'box_width' }, 1968{ oid => '977', descr => 'box height', 1969 proname => 'height', prorettype => 'float8', proargtypes => 'box', 1970 prosrc => 'box_height' }, 1971{ oid => '978', 1972 proname => 'box_distance', prorettype => 'float8', proargtypes => 'box box', 1973 prosrc => 'box_distance' }, 1974{ oid => '979', descr => 'area of a closed path', 1975 proname => 'area', prorettype => 'float8', proargtypes => 'path', 1976 prosrc => 'path_area' }, 1977{ oid => '980', 1978 proname => 'box_intersect', prorettype => 'box', proargtypes => 'box box', 1979 prosrc => 'box_intersect' }, 1980{ oid => '4067', descr => 'bounding box of two boxes', 1981 proname => 'bound_box', prorettype => 'box', proargtypes => 'box box', 1982 prosrc => 'boxes_bound_box' }, 1983{ oid => '981', descr => 'box diagonal', 1984 proname => 'diagonal', prorettype => 'lseg', proargtypes => 'box', 1985 prosrc => 'box_diagonal' }, 1986{ oid => '982', 1987 proname => 'path_n_lt', prorettype => 'bool', proargtypes => 'path path', 1988 prosrc => 'path_n_lt' }, 1989{ oid => '983', 1990 proname => 'path_n_gt', prorettype => 'bool', proargtypes => 'path path', 1991 prosrc => 'path_n_gt' }, 1992{ oid => '984', 1993 proname => 'path_n_eq', prorettype => 'bool', proargtypes => 'path path', 1994 prosrc => 'path_n_eq' }, 1995{ oid => '985', 1996 proname => 'path_n_le', prorettype => 'bool', proargtypes => 'path path', 1997 prosrc => 'path_n_le' }, 1998{ oid => '986', 1999 proname => 'path_n_ge', prorettype => 'bool', proargtypes => 'path path', 2000 prosrc => 'path_n_ge' }, 2001{ oid => '987', 2002 proname => 'path_length', prorettype => 'float8', proargtypes => 'path', 2003 prosrc => 'path_length' }, 2004{ oid => '988', 2005 proname => 'point_ne', prorettype => 'bool', proargtypes => 'point point', 2006 prosrc => 'point_ne' }, 2007{ oid => '989', 2008 proname => 'point_vert', prorettype => 'bool', proargtypes => 'point point', 2009 prosrc => 'point_vert' }, 2010{ oid => '990', 2011 proname => 'point_horiz', prorettype => 'bool', proargtypes => 'point point', 2012 prosrc => 'point_horiz' }, 2013{ oid => '991', 2014 proname => 'point_distance', prorettype => 'float8', 2015 proargtypes => 'point point', prosrc => 'point_distance' }, 2016{ oid => '992', descr => 'slope between points', 2017 proname => 'slope', prorettype => 'float8', proargtypes => 'point point', 2018 prosrc => 'point_slope' }, 2019{ oid => '993', descr => 'convert points to line segment', 2020 proname => 'lseg', prorettype => 'lseg', proargtypes => 'point point', 2021 prosrc => 'lseg_construct' }, 2022{ oid => '994', 2023 proname => 'lseg_intersect', prorettype => 'bool', proargtypes => 'lseg lseg', 2024 prosrc => 'lseg_intersect' }, 2025{ oid => '995', 2026 proname => 'lseg_parallel', prorettype => 'bool', proargtypes => 'lseg lseg', 2027 prosrc => 'lseg_parallel' }, 2028{ oid => '996', 2029 proname => 'lseg_perp', prorettype => 'bool', proargtypes => 'lseg lseg', 2030 prosrc => 'lseg_perp' }, 2031{ oid => '997', 2032 proname => 'lseg_vertical', prorettype => 'bool', proargtypes => 'lseg', 2033 prosrc => 'lseg_vertical' }, 2034{ oid => '998', 2035 proname => 'lseg_horizontal', prorettype => 'bool', proargtypes => 'lseg', 2036 prosrc => 'lseg_horizontal' }, 2037{ oid => '999', 2038 proname => 'lseg_eq', proleakproof => 't', prorettype => 'bool', 2039 proargtypes => 'lseg lseg', prosrc => 'lseg_eq' }, 2040 2041# OIDS 1000 - 1999 2042 2043{ oid => '1026', descr => 'adjust timestamp to new time zone', 2044 proname => 'timezone', prorettype => 'timestamp', 2045 proargtypes => 'interval timestamptz', prosrc => 'timestamptz_izone' }, 2046 2047{ oid => '1031', descr => 'I/O', 2048 proname => 'aclitemin', provolatile => 's', prorettype => 'aclitem', 2049 proargtypes => 'cstring', prosrc => 'aclitemin' }, 2050{ oid => '1032', descr => 'I/O', 2051 proname => 'aclitemout', provolatile => 's', prorettype => 'cstring', 2052 proargtypes => 'aclitem', prosrc => 'aclitemout' }, 2053{ oid => '1035', descr => 'add/update ACL item', 2054 proname => 'aclinsert', prorettype => '_aclitem', 2055 proargtypes => '_aclitem aclitem', prosrc => 'aclinsert' }, 2056{ oid => '1036', descr => 'remove ACL item', 2057 proname => 'aclremove', prorettype => '_aclitem', 2058 proargtypes => '_aclitem aclitem', prosrc => 'aclremove' }, 2059{ oid => '1037', descr => 'contains', 2060 proname => 'aclcontains', prorettype => 'bool', 2061 proargtypes => '_aclitem aclitem', prosrc => 'aclcontains' }, 2062{ oid => '1062', 2063 proname => 'aclitemeq', prorettype => 'bool', 2064 proargtypes => 'aclitem aclitem', prosrc => 'aclitem_eq' }, 2065{ oid => '1365', descr => 'make ACL item', 2066 proname => 'makeaclitem', prorettype => 'aclitem', 2067 proargtypes => 'oid oid text bool', prosrc => 'makeaclitem' }, 2068{ oid => '3943', 2069 descr => 'show hardwired default privileges, primarily for use by the information schema', 2070 proname => 'acldefault', prorettype => '_aclitem', proargtypes => 'char oid', 2071 prosrc => 'acldefault_sql' }, 2072{ oid => '1689', 2073 descr => 'convert ACL item array to table, primarily for use by information schema', 2074 proname => 'aclexplode', prorows => '10', proretset => 't', 2075 provolatile => 's', prorettype => 'record', proargtypes => '_aclitem', 2076 proallargtypes => '{_aclitem,oid,oid,text,bool}', 2077 proargmodes => '{i,o,o,o,o}', 2078 proargnames => '{acl,grantor,grantee,privilege_type,is_grantable}', 2079 prosrc => 'aclexplode' }, 2080{ oid => '1044', descr => 'I/O', 2081 proname => 'bpcharin', prorettype => 'bpchar', 2082 proargtypes => 'cstring oid int4', prosrc => 'bpcharin' }, 2083{ oid => '1045', descr => 'I/O', 2084 proname => 'bpcharout', prorettype => 'cstring', proargtypes => 'bpchar', 2085 prosrc => 'bpcharout' }, 2086{ oid => '2913', descr => 'I/O typmod', 2087 proname => 'bpchartypmodin', prorettype => 'int4', proargtypes => '_cstring', 2088 prosrc => 'bpchartypmodin' }, 2089{ oid => '2914', descr => 'I/O typmod', 2090 proname => 'bpchartypmodout', prorettype => 'cstring', proargtypes => 'int4', 2091 prosrc => 'bpchartypmodout' }, 2092{ oid => '1046', descr => 'I/O', 2093 proname => 'varcharin', prorettype => 'varchar', 2094 proargtypes => 'cstring oid int4', prosrc => 'varcharin' }, 2095{ oid => '1047', descr => 'I/O', 2096 proname => 'varcharout', prorettype => 'cstring', proargtypes => 'varchar', 2097 prosrc => 'varcharout' }, 2098{ oid => '2915', descr => 'I/O typmod', 2099 proname => 'varchartypmodin', prorettype => 'int4', proargtypes => '_cstring', 2100 prosrc => 'varchartypmodin' }, 2101{ oid => '2916', descr => 'I/O typmod', 2102 proname => 'varchartypmodout', prorettype => 'cstring', proargtypes => 'int4', 2103 prosrc => 'varchartypmodout' }, 2104{ oid => '1048', 2105 proname => 'bpchareq', proleakproof => 't', prorettype => 'bool', 2106 proargtypes => 'bpchar bpchar', prosrc => 'bpchareq' }, 2107{ oid => '1049', 2108 proname => 'bpcharlt', proleakproof => 't', prorettype => 'bool', 2109 proargtypes => 'bpchar bpchar', prosrc => 'bpcharlt' }, 2110{ oid => '1050', 2111 proname => 'bpcharle', proleakproof => 't', prorettype => 'bool', 2112 proargtypes => 'bpchar bpchar', prosrc => 'bpcharle' }, 2113{ oid => '1051', 2114 proname => 'bpchargt', proleakproof => 't', prorettype => 'bool', 2115 proargtypes => 'bpchar bpchar', prosrc => 'bpchargt' }, 2116{ oid => '1052', 2117 proname => 'bpcharge', proleakproof => 't', prorettype => 'bool', 2118 proargtypes => 'bpchar bpchar', prosrc => 'bpcharge' }, 2119{ oid => '1053', 2120 proname => 'bpcharne', proleakproof => 't', prorettype => 'bool', 2121 proargtypes => 'bpchar bpchar', prosrc => 'bpcharne' }, 2122{ oid => '1063', descr => 'larger of two', 2123 proname => 'bpchar_larger', proleakproof => 't', prorettype => 'bpchar', 2124 proargtypes => 'bpchar bpchar', prosrc => 'bpchar_larger' }, 2125{ oid => '1064', descr => 'smaller of two', 2126 proname => 'bpchar_smaller', proleakproof => 't', prorettype => 'bpchar', 2127 proargtypes => 'bpchar bpchar', prosrc => 'bpchar_smaller' }, 2128{ oid => '1078', descr => 'less-equal-greater', 2129 proname => 'bpcharcmp', proleakproof => 't', prorettype => 'int4', 2130 proargtypes => 'bpchar bpchar', prosrc => 'bpcharcmp' }, 2131{ oid => '3328', descr => 'sort support', 2132 proname => 'bpchar_sortsupport', prorettype => 'void', 2133 proargtypes => 'internal', prosrc => 'bpchar_sortsupport' }, 2134{ oid => '1080', descr => 'hash', 2135 proname => 'hashbpchar', prorettype => 'int4', proargtypes => 'bpchar', 2136 prosrc => 'hashbpchar' }, 2137{ oid => '972', descr => 'hash', 2138 proname => 'hashbpcharextended', prorettype => 'int8', 2139 proargtypes => 'bpchar int8', prosrc => 'hashbpcharextended' }, 2140{ oid => '1081', descr => 'format a type oid and atttypmod to canonical SQL', 2141 proname => 'format_type', proisstrict => 'f', provolatile => 's', 2142 prorettype => 'text', proargtypes => 'oid int4', prosrc => 'format_type' }, 2143{ oid => '1084', descr => 'I/O', 2144 proname => 'date_in', provolatile => 's', prorettype => 'date', 2145 proargtypes => 'cstring', prosrc => 'date_in' }, 2146{ oid => '1085', descr => 'I/O', 2147 proname => 'date_out', provolatile => 's', prorettype => 'cstring', 2148 proargtypes => 'date', prosrc => 'date_out' }, 2149{ oid => '1086', 2150 proname => 'date_eq', proleakproof => 't', prorettype => 'bool', 2151 proargtypes => 'date date', prosrc => 'date_eq' }, 2152{ oid => '1087', 2153 proname => 'date_lt', proleakproof => 't', prorettype => 'bool', 2154 proargtypes => 'date date', prosrc => 'date_lt' }, 2155{ oid => '1088', 2156 proname => 'date_le', proleakproof => 't', prorettype => 'bool', 2157 proargtypes => 'date date', prosrc => 'date_le' }, 2158{ oid => '1089', 2159 proname => 'date_gt', proleakproof => 't', prorettype => 'bool', 2160 proargtypes => 'date date', prosrc => 'date_gt' }, 2161{ oid => '1090', 2162 proname => 'date_ge', proleakproof => 't', prorettype => 'bool', 2163 proargtypes => 'date date', prosrc => 'date_ge' }, 2164{ oid => '1091', 2165 proname => 'date_ne', proleakproof => 't', prorettype => 'bool', 2166 proargtypes => 'date date', prosrc => 'date_ne' }, 2167{ oid => '1092', descr => 'less-equal-greater', 2168 proname => 'date_cmp', proleakproof => 't', prorettype => 'int4', 2169 proargtypes => 'date date', prosrc => 'date_cmp' }, 2170{ oid => '3136', descr => 'sort support', 2171 proname => 'date_sortsupport', prorettype => 'void', 2172 proargtypes => 'internal', prosrc => 'date_sortsupport' }, 2173{ oid => '4133', descr => 'window RANGE support', 2174 proname => 'in_range', prorettype => 'bool', 2175 proargtypes => 'date date interval bool bool', 2176 prosrc => 'in_range_date_interval' }, 2177 2178# OIDS 1100 - 1199 2179 2180{ oid => '1102', 2181 proname => 'time_lt', proleakproof => 't', prorettype => 'bool', 2182 proargtypes => 'time time', prosrc => 'time_lt' }, 2183{ oid => '1103', 2184 proname => 'time_le', proleakproof => 't', prorettype => 'bool', 2185 proargtypes => 'time time', prosrc => 'time_le' }, 2186{ oid => '1104', 2187 proname => 'time_gt', proleakproof => 't', prorettype => 'bool', 2188 proargtypes => 'time time', prosrc => 'time_gt' }, 2189{ oid => '1105', 2190 proname => 'time_ge', proleakproof => 't', prorettype => 'bool', 2191 proargtypes => 'time time', prosrc => 'time_ge' }, 2192{ oid => '1106', 2193 proname => 'time_ne', proleakproof => 't', prorettype => 'bool', 2194 proargtypes => 'time time', prosrc => 'time_ne' }, 2195{ oid => '1107', descr => 'less-equal-greater', 2196 proname => 'time_cmp', proleakproof => 't', prorettype => 'int4', 2197 proargtypes => 'time time', prosrc => 'time_cmp' }, 2198{ oid => '1138', descr => 'larger of two', 2199 proname => 'date_larger', prorettype => 'date', proargtypes => 'date date', 2200 prosrc => 'date_larger' }, 2201{ oid => '1139', descr => 'smaller of two', 2202 proname => 'date_smaller', prorettype => 'date', proargtypes => 'date date', 2203 prosrc => 'date_smaller' }, 2204{ oid => '1140', 2205 proname => 'date_mi', prorettype => 'int4', proargtypes => 'date date', 2206 prosrc => 'date_mi' }, 2207{ oid => '1141', 2208 proname => 'date_pli', prorettype => 'date', proargtypes => 'date int4', 2209 prosrc => 'date_pli' }, 2210{ oid => '1142', 2211 proname => 'date_mii', prorettype => 'date', proargtypes => 'date int4', 2212 prosrc => 'date_mii' }, 2213{ oid => '1143', descr => 'I/O', 2214 proname => 'time_in', provolatile => 's', prorettype => 'time', 2215 proargtypes => 'cstring oid int4', prosrc => 'time_in' }, 2216{ oid => '1144', descr => 'I/O', 2217 proname => 'time_out', prorettype => 'cstring', proargtypes => 'time', 2218 prosrc => 'time_out' }, 2219{ oid => '2909', descr => 'I/O typmod', 2220 proname => 'timetypmodin', prorettype => 'int4', proargtypes => '_cstring', 2221 prosrc => 'timetypmodin' }, 2222{ oid => '2910', descr => 'I/O typmod', 2223 proname => 'timetypmodout', prorettype => 'cstring', proargtypes => 'int4', 2224 prosrc => 'timetypmodout' }, 2225{ oid => '1145', 2226 proname => 'time_eq', proleakproof => 't', prorettype => 'bool', 2227 proargtypes => 'time time', prosrc => 'time_eq' }, 2228 2229{ oid => '1146', 2230 proname => 'circle_add_pt', prorettype => 'circle', 2231 proargtypes => 'circle point', prosrc => 'circle_add_pt' }, 2232{ oid => '1147', 2233 proname => 'circle_sub_pt', prorettype => 'circle', 2234 proargtypes => 'circle point', prosrc => 'circle_sub_pt' }, 2235{ oid => '1148', 2236 proname => 'circle_mul_pt', prorettype => 'circle', 2237 proargtypes => 'circle point', prosrc => 'circle_mul_pt' }, 2238{ oid => '1149', 2239 proname => 'circle_div_pt', prorettype => 'circle', 2240 proargtypes => 'circle point', prosrc => 'circle_div_pt' }, 2241 2242{ oid => '1150', descr => 'I/O', 2243 proname => 'timestamptz_in', provolatile => 's', prorettype => 'timestamptz', 2244 proargtypes => 'cstring oid int4', prosrc => 'timestamptz_in' }, 2245{ oid => '1151', descr => 'I/O', 2246 proname => 'timestamptz_out', provolatile => 's', prorettype => 'cstring', 2247 proargtypes => 'timestamptz', prosrc => 'timestamptz_out' }, 2248{ oid => '2907', descr => 'I/O typmod', 2249 proname => 'timestamptztypmodin', prorettype => 'int4', 2250 proargtypes => '_cstring', prosrc => 'timestamptztypmodin' }, 2251{ oid => '2908', descr => 'I/O typmod', 2252 proname => 'timestamptztypmodout', prorettype => 'cstring', 2253 proargtypes => 'int4', prosrc => 'timestamptztypmodout' }, 2254{ oid => '1152', 2255 proname => 'timestamptz_eq', proleakproof => 't', prorettype => 'bool', 2256 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_eq' }, 2257{ oid => '1153', 2258 proname => 'timestamptz_ne', proleakproof => 't', prorettype => 'bool', 2259 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_ne' }, 2260{ oid => '1154', 2261 proname => 'timestamptz_lt', proleakproof => 't', prorettype => 'bool', 2262 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_lt' }, 2263{ oid => '1155', 2264 proname => 'timestamptz_le', proleakproof => 't', prorettype => 'bool', 2265 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_le' }, 2266{ oid => '1156', 2267 proname => 'timestamptz_ge', proleakproof => 't', prorettype => 'bool', 2268 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_ge' }, 2269{ oid => '1157', 2270 proname => 'timestamptz_gt', proleakproof => 't', prorettype => 'bool', 2271 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_gt' }, 2272{ oid => '1158', descr => 'convert UNIX epoch to timestamptz', 2273 proname => 'to_timestamp', prorettype => 'timestamptz', 2274 proargtypes => 'float8', prosrc => 'float8_timestamptz' }, 2275{ oid => '1159', descr => 'adjust timestamp to new time zone', 2276 proname => 'timezone', prorettype => 'timestamp', 2277 proargtypes => 'text timestamptz', prosrc => 'timestamptz_zone' }, 2278 2279{ oid => '1160', descr => 'I/O', 2280 proname => 'interval_in', provolatile => 's', prorettype => 'interval', 2281 proargtypes => 'cstring oid int4', prosrc => 'interval_in' }, 2282{ oid => '1161', descr => 'I/O', 2283 proname => 'interval_out', prorettype => 'cstring', proargtypes => 'interval', 2284 prosrc => 'interval_out' }, 2285{ oid => '2903', descr => 'I/O typmod', 2286 proname => 'intervaltypmodin', prorettype => 'int4', 2287 proargtypes => '_cstring', prosrc => 'intervaltypmodin' }, 2288{ oid => '2904', descr => 'I/O typmod', 2289 proname => 'intervaltypmodout', prorettype => 'cstring', 2290 proargtypes => 'int4', prosrc => 'intervaltypmodout' }, 2291{ oid => '1162', 2292 proname => 'interval_eq', proleakproof => 't', prorettype => 'bool', 2293 proargtypes => 'interval interval', prosrc => 'interval_eq' }, 2294{ oid => '1163', 2295 proname => 'interval_ne', proleakproof => 't', prorettype => 'bool', 2296 proargtypes => 'interval interval', prosrc => 'interval_ne' }, 2297{ oid => '1164', 2298 proname => 'interval_lt', proleakproof => 't', prorettype => 'bool', 2299 proargtypes => 'interval interval', prosrc => 'interval_lt' }, 2300{ oid => '1165', 2301 proname => 'interval_le', proleakproof => 't', prorettype => 'bool', 2302 proargtypes => 'interval interval', prosrc => 'interval_le' }, 2303{ oid => '1166', 2304 proname => 'interval_ge', proleakproof => 't', prorettype => 'bool', 2305 proargtypes => 'interval interval', prosrc => 'interval_ge' }, 2306{ oid => '1167', 2307 proname => 'interval_gt', proleakproof => 't', prorettype => 'bool', 2308 proargtypes => 'interval interval', prosrc => 'interval_gt' }, 2309{ oid => '1168', 2310 proname => 'interval_um', prorettype => 'interval', proargtypes => 'interval', 2311 prosrc => 'interval_um' }, 2312{ oid => '1169', 2313 proname => 'interval_pl', prorettype => 'interval', 2314 proargtypes => 'interval interval', prosrc => 'interval_pl' }, 2315{ oid => '1170', 2316 proname => 'interval_mi', prorettype => 'interval', 2317 proargtypes => 'interval interval', prosrc => 'interval_mi' }, 2318{ oid => '1171', descr => 'extract field from timestamp with time zone', 2319 proname => 'date_part', provolatile => 's', prorettype => 'float8', 2320 proargtypes => 'text timestamptz', prosrc => 'timestamptz_part' }, 2321{ oid => '1172', descr => 'extract field from interval', 2322 proname => 'date_part', prorettype => 'float8', 2323 proargtypes => 'text interval', prosrc => 'interval_part' }, 2324{ oid => '1174', descr => 'convert date to timestamp with time zone', 2325 proname => 'timestamptz', provolatile => 's', prorettype => 'timestamptz', 2326 proargtypes => 'date', prosrc => 'date_timestamptz' }, 2327{ oid => '2711', 2328 descr => 'promote groups of 24 hours to numbers of days and promote groups of 30 days to numbers of months', 2329 proname => 'justify_interval', prorettype => 'interval', 2330 proargtypes => 'interval', prosrc => 'interval_justify_interval' }, 2331{ oid => '1175', descr => 'promote groups of 24 hours to numbers of days', 2332 proname => 'justify_hours', prorettype => 'interval', 2333 proargtypes => 'interval', prosrc => 'interval_justify_hours' }, 2334{ oid => '1295', descr => 'promote groups of 30 days to numbers of months', 2335 proname => 'justify_days', prorettype => 'interval', 2336 proargtypes => 'interval', prosrc => 'interval_justify_days' }, 2337{ oid => '1176', descr => 'convert date and time to timestamp with time zone', 2338 proname => 'timestamptz', prolang => 'sql', provolatile => 's', 2339 prorettype => 'timestamptz', proargtypes => 'date time', 2340 prosrc => 'select cast(($1 + $2) as timestamp with time zone)' }, 2341{ oid => '1178', descr => 'convert timestamp with time zone to date', 2342 proname => 'date', provolatile => 's', prorettype => 'date', 2343 proargtypes => 'timestamptz', prosrc => 'timestamptz_date' }, 2344{ oid => '1181', 2345 descr => 'age of a transaction ID, in transactions before current transaction', 2346 proname => 'age', provolatile => 's', proparallel => 'r', 2347 prorettype => 'int4', proargtypes => 'xid', prosrc => 'xid_age' }, 2348{ oid => '3939', 2349 descr => 'age of a multi-transaction ID, in multi-transactions before current multi-transaction', 2350 proname => 'mxid_age', provolatile => 's', prorettype => 'int4', 2351 proargtypes => 'xid', prosrc => 'mxid_age' }, 2352 2353{ oid => '1188', 2354 proname => 'timestamptz_mi', prorettype => 'interval', 2355 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_mi' }, 2356{ oid => '1189', 2357 proname => 'timestamptz_pl_interval', provolatile => 's', 2358 prorettype => 'timestamptz', proargtypes => 'timestamptz interval', 2359 prosrc => 'timestamptz_pl_interval' }, 2360{ oid => '1190', 2361 proname => 'timestamptz_mi_interval', provolatile => 's', 2362 prorettype => 'timestamptz', proargtypes => 'timestamptz interval', 2363 prosrc => 'timestamptz_mi_interval' }, 2364{ oid => '1195', descr => 'smaller of two', 2365 proname => 'timestamptz_smaller', prorettype => 'timestamptz', 2366 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_smaller' }, 2367{ oid => '1196', descr => 'larger of two', 2368 proname => 'timestamptz_larger', prorettype => 'timestamptz', 2369 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_larger' }, 2370{ oid => '1197', descr => 'smaller of two', 2371 proname => 'interval_smaller', prorettype => 'interval', 2372 proargtypes => 'interval interval', prosrc => 'interval_smaller' }, 2373{ oid => '1198', descr => 'larger of two', 2374 proname => 'interval_larger', prorettype => 'interval', 2375 proargtypes => 'interval interval', prosrc => 'interval_larger' }, 2376{ oid => '1199', descr => 'date difference preserving months and years', 2377 proname => 'age', prorettype => 'interval', 2378 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamptz_age' }, 2379 2380# OIDS 1200 - 1299 2381 2382{ oid => '3918', descr => 'planner support for interval length coercion', 2383 proname => 'interval_support', prorettype => 'internal', 2384 proargtypes => 'internal', prosrc => 'interval_support' }, 2385{ oid => '1200', descr => 'adjust interval precision', 2386 proname => 'interval', prosupport => 'interval_support', 2387 prorettype => 'interval', proargtypes => 'interval int4', 2388 prosrc => 'interval_scale' }, 2389 2390{ oid => '1215', descr => 'get description for object id and catalog name', 2391 proname => 'obj_description', prolang => 'sql', procost => '100', 2392 provolatile => 's', prorettype => 'text', proargtypes => 'oid name', 2393 prosrc => 'select description from pg_catalog.pg_description where objoid = $1 and classoid = (select oid from pg_catalog.pg_class where relname = $2 and relnamespace = PGNSP) and objsubid = 0' }, 2394{ oid => '1216', descr => 'get description for table column', 2395 proname => 'col_description', prolang => 'sql', procost => '100', 2396 provolatile => 's', prorettype => 'text', proargtypes => 'oid int4', 2397 prosrc => 'select description from pg_catalog.pg_description where objoid = $1 and classoid = \'pg_catalog.pg_class\'::pg_catalog.regclass and objsubid = $2' }, 2398{ oid => '1993', 2399 descr => 'get description for object id and shared catalog name', 2400 proname => 'shobj_description', prolang => 'sql', procost => '100', 2401 provolatile => 's', prorettype => 'text', proargtypes => 'oid name', 2402 prosrc => 'select description from pg_catalog.pg_shdescription where objoid = $1 and classoid = (select oid from pg_catalog.pg_class where relname = $2 and relnamespace = PGNSP)' }, 2403 2404{ oid => '1217', 2405 descr => 'truncate timestamp with time zone to specified units', 2406 proname => 'date_trunc', provolatile => 's', prorettype => 'timestamptz', 2407 proargtypes => 'text timestamptz', prosrc => 'timestamptz_trunc' }, 2408{ oid => '1284', 2409 descr => 'truncate timestamp with time zone to specified units in specified time zone', 2410 proname => 'date_trunc', provolatile => 's', prorettype => 'timestamptz', 2411 proargtypes => 'text timestamptz text', prosrc => 'timestamptz_trunc_zone' }, 2412{ oid => '1218', descr => 'truncate interval to specified units', 2413 proname => 'date_trunc', prorettype => 'interval', 2414 proargtypes => 'text interval', prosrc => 'interval_trunc' }, 2415 2416{ oid => '1219', descr => 'increment', 2417 proname => 'int8inc', prorettype => 'int8', proargtypes => 'int8', 2418 prosrc => 'int8inc' }, 2419{ oid => '3546', descr => 'decrement', 2420 proname => 'int8dec', prorettype => 'int8', proargtypes => 'int8', 2421 prosrc => 'int8dec' }, 2422{ oid => '2804', descr => 'increment, ignores second argument', 2423 proname => 'int8inc_any', prorettype => 'int8', proargtypes => 'int8 any', 2424 prosrc => 'int8inc_any' }, 2425{ oid => '3547', descr => 'decrement, ignores second argument', 2426 proname => 'int8dec_any', prorettype => 'int8', proargtypes => 'int8 any', 2427 prosrc => 'int8dec_any' }, 2428{ oid => '1230', 2429 proname => 'int8abs', prorettype => 'int8', proargtypes => 'int8', 2430 prosrc => 'int8abs' }, 2431 2432{ oid => '1236', descr => 'larger of two', 2433 proname => 'int8larger', prorettype => 'int8', proargtypes => 'int8 int8', 2434 prosrc => 'int8larger' }, 2435{ oid => '1237', descr => 'smaller of two', 2436 proname => 'int8smaller', prorettype => 'int8', proargtypes => 'int8 int8', 2437 prosrc => 'int8smaller' }, 2438 2439{ oid => '1238', 2440 proname => 'texticregexeq', prosupport => 'texticregexeq_support', 2441 prorettype => 'bool', proargtypes => 'text text', prosrc => 'texticregexeq' }, 2442{ oid => '1024', descr => 'planner support for texticregexeq', 2443 proname => 'texticregexeq_support', prorettype => 'internal', 2444 proargtypes => 'internal', prosrc => 'texticregexeq_support' }, 2445{ oid => '1239', 2446 proname => 'texticregexne', prorettype => 'bool', proargtypes => 'text text', 2447 prosrc => 'texticregexne' }, 2448{ oid => '1240', 2449 proname => 'nameicregexeq', prosupport => 'texticregexeq_support', 2450 prorettype => 'bool', proargtypes => 'name text', prosrc => 'nameicregexeq' }, 2451{ oid => '1241', 2452 proname => 'nameicregexne', prorettype => 'bool', proargtypes => 'name text', 2453 prosrc => 'nameicregexne' }, 2454 2455{ oid => '1251', 2456 proname => 'int4abs', prorettype => 'int4', proargtypes => 'int4', 2457 prosrc => 'int4abs' }, 2458{ oid => '1253', 2459 proname => 'int2abs', prorettype => 'int2', proargtypes => 'int2', 2460 prosrc => 'int2abs' }, 2461 2462{ oid => '1271', descr => 'intervals overlap?', 2463 proname => 'overlaps', proisstrict => 'f', prorettype => 'bool', 2464 proargtypes => 'timetz timetz timetz timetz', prosrc => 'overlaps_timetz' }, 2465{ oid => '1272', 2466 proname => 'datetime_pl', prorettype => 'timestamp', 2467 proargtypes => 'date time', prosrc => 'datetime_timestamp' }, 2468{ oid => '1273', descr => 'extract field from time with time zone', 2469 proname => 'date_part', prorettype => 'float8', proargtypes => 'text timetz', 2470 prosrc => 'timetz_part' }, 2471{ oid => '1274', 2472 proname => 'int84pl', prorettype => 'int8', proargtypes => 'int8 int4', 2473 prosrc => 'int84pl' }, 2474{ oid => '1275', 2475 proname => 'int84mi', prorettype => 'int8', proargtypes => 'int8 int4', 2476 prosrc => 'int84mi' }, 2477{ oid => '1276', 2478 proname => 'int84mul', prorettype => 'int8', proargtypes => 'int8 int4', 2479 prosrc => 'int84mul' }, 2480{ oid => '1277', 2481 proname => 'int84div', prorettype => 'int8', proargtypes => 'int8 int4', 2482 prosrc => 'int84div' }, 2483{ oid => '1278', 2484 proname => 'int48pl', prorettype => 'int8', proargtypes => 'int4 int8', 2485 prosrc => 'int48pl' }, 2486{ oid => '1279', 2487 proname => 'int48mi', prorettype => 'int8', proargtypes => 'int4 int8', 2488 prosrc => 'int48mi' }, 2489{ oid => '1280', 2490 proname => 'int48mul', prorettype => 'int8', proargtypes => 'int4 int8', 2491 prosrc => 'int48mul' }, 2492{ oid => '1281', 2493 proname => 'int48div', prorettype => 'int8', proargtypes => 'int4 int8', 2494 prosrc => 'int48div' }, 2495 2496{ oid => '837', 2497 proname => 'int82pl', prorettype => 'int8', proargtypes => 'int8 int2', 2498 prosrc => 'int82pl' }, 2499{ oid => '838', 2500 proname => 'int82mi', prorettype => 'int8', proargtypes => 'int8 int2', 2501 prosrc => 'int82mi' }, 2502{ oid => '839', 2503 proname => 'int82mul', prorettype => 'int8', proargtypes => 'int8 int2', 2504 prosrc => 'int82mul' }, 2505{ oid => '840', 2506 proname => 'int82div', prorettype => 'int8', proargtypes => 'int8 int2', 2507 prosrc => 'int82div' }, 2508{ oid => '841', 2509 proname => 'int28pl', prorettype => 'int8', proargtypes => 'int2 int8', 2510 prosrc => 'int28pl' }, 2511{ oid => '942', 2512 proname => 'int28mi', prorettype => 'int8', proargtypes => 'int2 int8', 2513 prosrc => 'int28mi' }, 2514{ oid => '943', 2515 proname => 'int28mul', prorettype => 'int8', proargtypes => 'int2 int8', 2516 prosrc => 'int28mul' }, 2517{ oid => '948', 2518 proname => 'int28div', prorettype => 'int8', proargtypes => 'int2 int8', 2519 prosrc => 'int28div' }, 2520 2521{ oid => '1287', descr => 'convert int8 to oid', 2522 proname => 'oid', prorettype => 'oid', proargtypes => 'int8', 2523 prosrc => 'i8tooid' }, 2524{ oid => '1288', descr => 'convert oid to int8', 2525 proname => 'int8', prorettype => 'int8', proargtypes => 'oid', 2526 prosrc => 'oidtoi8' }, 2527 2528{ oid => '1291', 2529 descr => 'trigger to suppress updates when new and old records match', 2530 proname => 'suppress_redundant_updates_trigger', provolatile => 'v', 2531 prorettype => 'trigger', proargtypes => '', 2532 prosrc => 'suppress_redundant_updates_trigger' }, 2533 2534{ oid => '1292', 2535 proname => 'tideq', proleakproof => 't', prorettype => 'bool', 2536 proargtypes => 'tid tid', prosrc => 'tideq' }, 2537{ oid => '1293', descr => 'latest tid of a tuple', 2538 proname => 'currtid', provolatile => 'v', proparallel => 'u', 2539 prorettype => 'tid', proargtypes => 'oid tid', prosrc => 'currtid_byreloid' }, 2540{ oid => '1294', descr => 'latest tid of a tuple', 2541 proname => 'currtid2', provolatile => 'v', proparallel => 'u', 2542 prorettype => 'tid', proargtypes => 'text tid', 2543 prosrc => 'currtid_byrelname' }, 2544{ oid => '1265', 2545 proname => 'tidne', proleakproof => 't', prorettype => 'bool', 2546 proargtypes => 'tid tid', prosrc => 'tidne' }, 2547{ oid => '2790', 2548 proname => 'tidgt', proleakproof => 't', prorettype => 'bool', 2549 proargtypes => 'tid tid', prosrc => 'tidgt' }, 2550{ oid => '2791', 2551 proname => 'tidlt', proleakproof => 't', prorettype => 'bool', 2552 proargtypes => 'tid tid', prosrc => 'tidlt' }, 2553{ oid => '2792', 2554 proname => 'tidge', proleakproof => 't', prorettype => 'bool', 2555 proargtypes => 'tid tid', prosrc => 'tidge' }, 2556{ oid => '2793', 2557 proname => 'tidle', proleakproof => 't', prorettype => 'bool', 2558 proargtypes => 'tid tid', prosrc => 'tidle' }, 2559{ oid => '2794', descr => 'less-equal-greater', 2560 proname => 'bttidcmp', proleakproof => 't', prorettype => 'int4', 2561 proargtypes => 'tid tid', prosrc => 'bttidcmp' }, 2562{ oid => '2795', descr => 'larger of two', 2563 proname => 'tidlarger', prorettype => 'tid', proargtypes => 'tid tid', 2564 prosrc => 'tidlarger' }, 2565{ oid => '2796', descr => 'smaller of two', 2566 proname => 'tidsmaller', prorettype => 'tid', proargtypes => 'tid tid', 2567 prosrc => 'tidsmaller' }, 2568{ oid => '2233', descr => 'hash', 2569 proname => 'hashtid', prorettype => 'int4', proargtypes => 'tid', 2570 prosrc => 'hashtid' }, 2571{ oid => '2234', descr => 'hash', 2572 proname => 'hashtidextended', prorettype => 'int8', proargtypes => 'tid int8', 2573 prosrc => 'hashtidextended' }, 2574 2575{ oid => '1296', 2576 proname => 'timedate_pl', prolang => 'sql', prorettype => 'timestamp', 2577 proargtypes => 'time date', prosrc => 'select ($2 + $1)' }, 2578{ oid => '1297', 2579 proname => 'datetimetz_pl', prorettype => 'timestamptz', 2580 proargtypes => 'date timetz', prosrc => 'datetimetz_timestamptz' }, 2581{ oid => '1298', 2582 proname => 'timetzdate_pl', prolang => 'sql', prorettype => 'timestamptz', 2583 proargtypes => 'timetz date', prosrc => 'select ($2 + $1)' }, 2584{ oid => '1299', descr => 'current transaction time', 2585 proname => 'now', provolatile => 's', prorettype => 'timestamptz', 2586 proargtypes => '', prosrc => 'now' }, 2587{ oid => '2647', descr => 'current transaction time', 2588 proname => 'transaction_timestamp', provolatile => 's', 2589 prorettype => 'timestamptz', proargtypes => '', prosrc => 'now' }, 2590{ oid => '2648', descr => 'current statement time', 2591 proname => 'statement_timestamp', provolatile => 's', 2592 prorettype => 'timestamptz', proargtypes => '', 2593 prosrc => 'statement_timestamp' }, 2594{ oid => '2649', descr => 'current clock time', 2595 proname => 'clock_timestamp', provolatile => 'v', prorettype => 'timestamptz', 2596 proargtypes => '', prosrc => 'clock_timestamp' }, 2597 2598# OIDS 1300 - 1399 2599 2600{ oid => '1300', 2601 descr => 'restriction selectivity for position-comparison operators', 2602 proname => 'positionsel', provolatile => 's', prorettype => 'float8', 2603 proargtypes => 'internal oid internal int4', prosrc => 'positionsel' }, 2604{ oid => '1301', 2605 descr => 'join selectivity for position-comparison operators', 2606 proname => 'positionjoinsel', provolatile => 's', prorettype => 'float8', 2607 proargtypes => 'internal oid internal int2 internal', 2608 prosrc => 'positionjoinsel' }, 2609{ oid => '1302', 2610 descr => 'restriction selectivity for containment comparison operators', 2611 proname => 'contsel', provolatile => 's', prorettype => 'float8', 2612 proargtypes => 'internal oid internal int4', prosrc => 'contsel' }, 2613{ oid => '1303', 2614 descr => 'join selectivity for containment comparison operators', 2615 proname => 'contjoinsel', provolatile => 's', prorettype => 'float8', 2616 proargtypes => 'internal oid internal int2 internal', 2617 prosrc => 'contjoinsel' }, 2618 2619{ oid => '1304', descr => 'intervals overlap?', 2620 proname => 'overlaps', proisstrict => 'f', prorettype => 'bool', 2621 proargtypes => 'timestamptz timestamptz timestamptz timestamptz', 2622 prosrc => 'overlaps_timestamp' }, 2623{ oid => '1305', descr => 'intervals overlap?', 2624 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 2625 provolatile => 's', prorettype => 'bool', 2626 proargtypes => 'timestamptz interval timestamptz interval', 2627 prosrc => 'select ($1, ($1 + $2)) overlaps ($3, ($3 + $4))' }, 2628{ oid => '1306', descr => 'intervals overlap?', 2629 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 2630 provolatile => 's', prorettype => 'bool', 2631 proargtypes => 'timestamptz timestamptz timestamptz interval', 2632 prosrc => 'select ($1, $2) overlaps ($3, ($3 + $4))' }, 2633{ oid => '1307', descr => 'intervals overlap?', 2634 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 2635 provolatile => 's', prorettype => 'bool', 2636 proargtypes => 'timestamptz interval timestamptz timestamptz', 2637 prosrc => 'select ($1, ($1 + $2)) overlaps ($3, $4)' }, 2638 2639{ oid => '1308', descr => 'intervals overlap?', 2640 proname => 'overlaps', proisstrict => 'f', prorettype => 'bool', 2641 proargtypes => 'time time time time', prosrc => 'overlaps_time' }, 2642{ oid => '1309', descr => 'intervals overlap?', 2643 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 2644 prorettype => 'bool', proargtypes => 'time interval time interval', 2645 prosrc => 'select ($1, ($1 + $2)) overlaps ($3, ($3 + $4))' }, 2646{ oid => '1310', descr => 'intervals overlap?', 2647 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 2648 prorettype => 'bool', proargtypes => 'time time time interval', 2649 prosrc => 'select ($1, $2) overlaps ($3, ($3 + $4))' }, 2650{ oid => '1311', descr => 'intervals overlap?', 2651 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 2652 prorettype => 'bool', proargtypes => 'time interval time time', 2653 prosrc => 'select ($1, ($1 + $2)) overlaps ($3, $4)' }, 2654 2655{ oid => '1312', descr => 'I/O', 2656 proname => 'timestamp_in', provolatile => 's', prorettype => 'timestamp', 2657 proargtypes => 'cstring oid int4', prosrc => 'timestamp_in' }, 2658{ oid => '1313', descr => 'I/O', 2659 proname => 'timestamp_out', provolatile => 's', prorettype => 'cstring', 2660 proargtypes => 'timestamp', prosrc => 'timestamp_out' }, 2661{ oid => '2905', descr => 'I/O typmod', 2662 proname => 'timestamptypmodin', prorettype => 'int4', 2663 proargtypes => '_cstring', prosrc => 'timestamptypmodin' }, 2664{ oid => '2906', descr => 'I/O typmod', 2665 proname => 'timestamptypmodout', prorettype => 'cstring', 2666 proargtypes => 'int4', prosrc => 'timestamptypmodout' }, 2667{ oid => '1314', descr => 'less-equal-greater', 2668 proname => 'timestamptz_cmp', proleakproof => 't', prorettype => 'int4', 2669 proargtypes => 'timestamptz timestamptz', prosrc => 'timestamp_cmp' }, 2670{ oid => '1315', descr => 'less-equal-greater', 2671 proname => 'interval_cmp', proleakproof => 't', prorettype => 'int4', 2672 proargtypes => 'interval interval', prosrc => 'interval_cmp' }, 2673{ oid => '1316', descr => 'convert timestamp to time', 2674 proname => 'time', prorettype => 'time', proargtypes => 'timestamp', 2675 prosrc => 'timestamp_time' }, 2676 2677{ oid => '1317', descr => 'length', 2678 proname => 'length', prorettype => 'int4', proargtypes => 'text', 2679 prosrc => 'textlen' }, 2680{ oid => '1318', descr => 'character length', 2681 proname => 'length', prorettype => 'int4', proargtypes => 'bpchar', 2682 prosrc => 'bpcharlen' }, 2683 2684{ oid => '1319', 2685 proname => 'xideqint4', proleakproof => 't', prorettype => 'bool', 2686 proargtypes => 'xid int4', prosrc => 'xideq' }, 2687{ oid => '3309', 2688 proname => 'xidneqint4', proleakproof => 't', prorettype => 'bool', 2689 proargtypes => 'xid int4', prosrc => 'xidneq' }, 2690 2691{ oid => '1326', 2692 proname => 'interval_div', prorettype => 'interval', 2693 proargtypes => 'interval float8', prosrc => 'interval_div' }, 2694 2695{ oid => '1339', descr => 'base 10 logarithm', 2696 proname => 'dlog10', prorettype => 'float8', proargtypes => 'float8', 2697 prosrc => 'dlog10' }, 2698{ oid => '1340', descr => 'base 10 logarithm', 2699 proname => 'log', prorettype => 'float8', proargtypes => 'float8', 2700 prosrc => 'dlog10' }, 2701{ oid => '1194', descr => 'base 10 logarithm', 2702 proname => 'log10', prorettype => 'float8', proargtypes => 'float8', 2703 prosrc => 'dlog10' }, 2704{ oid => '1341', descr => 'natural logarithm', 2705 proname => 'ln', prorettype => 'float8', proargtypes => 'float8', 2706 prosrc => 'dlog1' }, 2707{ oid => '1342', descr => 'round to nearest integer', 2708 proname => 'round', prorettype => 'float8', proargtypes => 'float8', 2709 prosrc => 'dround' }, 2710{ oid => '1343', descr => 'truncate to integer', 2711 proname => 'trunc', prorettype => 'float8', proargtypes => 'float8', 2712 prosrc => 'dtrunc' }, 2713{ oid => '1344', descr => 'square root', 2714 proname => 'sqrt', prorettype => 'float8', proargtypes => 'float8', 2715 prosrc => 'dsqrt' }, 2716{ oid => '1345', descr => 'cube root', 2717 proname => 'cbrt', prorettype => 'float8', proargtypes => 'float8', 2718 prosrc => 'dcbrt' }, 2719{ oid => '1346', descr => 'exponentiation', 2720 proname => 'pow', prorettype => 'float8', proargtypes => 'float8 float8', 2721 prosrc => 'dpow' }, 2722{ oid => '1368', descr => 'exponentiation', 2723 proname => 'power', prorettype => 'float8', proargtypes => 'float8 float8', 2724 prosrc => 'dpow' }, 2725{ oid => '1347', descr => 'natural exponential (e^x)', 2726 proname => 'exp', prorettype => 'float8', proargtypes => 'float8', 2727 prosrc => 'dexp' }, 2728 2729# This form of obj_description is now deprecated, since it will fail if 2730# OIDs are not unique across system catalogs. Use the other form instead. 2731{ oid => '1348', descr => 'deprecated, use two-argument form instead', 2732 proname => 'obj_description', prolang => 'sql', procost => '100', 2733 provolatile => 's', prorettype => 'text', proargtypes => 'oid', 2734 prosrc => 'select description from pg_catalog.pg_description where objoid = $1 and objsubid = 0' }, 2735 2736{ oid => '1349', descr => 'print type names of oidvector field', 2737 proname => 'oidvectortypes', provolatile => 's', prorettype => 'text', 2738 proargtypes => 'oidvector', prosrc => 'oidvectortypes' }, 2739 2740{ oid => '1350', descr => 'I/O', 2741 proname => 'timetz_in', provolatile => 's', prorettype => 'timetz', 2742 proargtypes => 'cstring oid int4', prosrc => 'timetz_in' }, 2743{ oid => '1351', descr => 'I/O', 2744 proname => 'timetz_out', prorettype => 'cstring', proargtypes => 'timetz', 2745 prosrc => 'timetz_out' }, 2746{ oid => '2911', descr => 'I/O typmod', 2747 proname => 'timetztypmodin', prorettype => 'int4', proargtypes => '_cstring', 2748 prosrc => 'timetztypmodin' }, 2749{ oid => '2912', descr => 'I/O typmod', 2750 proname => 'timetztypmodout', prorettype => 'cstring', proargtypes => 'int4', 2751 prosrc => 'timetztypmodout' }, 2752{ oid => '1352', 2753 proname => 'timetz_eq', proleakproof => 't', prorettype => 'bool', 2754 proargtypes => 'timetz timetz', prosrc => 'timetz_eq' }, 2755{ oid => '1353', 2756 proname => 'timetz_ne', proleakproof => 't', prorettype => 'bool', 2757 proargtypes => 'timetz timetz', prosrc => 'timetz_ne' }, 2758{ oid => '1354', 2759 proname => 'timetz_lt', proleakproof => 't', prorettype => 'bool', 2760 proargtypes => 'timetz timetz', prosrc => 'timetz_lt' }, 2761{ oid => '1355', 2762 proname => 'timetz_le', proleakproof => 't', prorettype => 'bool', 2763 proargtypes => 'timetz timetz', prosrc => 'timetz_le' }, 2764{ oid => '1356', 2765 proname => 'timetz_ge', proleakproof => 't', prorettype => 'bool', 2766 proargtypes => 'timetz timetz', prosrc => 'timetz_ge' }, 2767{ oid => '1357', 2768 proname => 'timetz_gt', proleakproof => 't', prorettype => 'bool', 2769 proargtypes => 'timetz timetz', prosrc => 'timetz_gt' }, 2770{ oid => '1358', descr => 'less-equal-greater', 2771 proname => 'timetz_cmp', proleakproof => 't', prorettype => 'int4', 2772 proargtypes => 'timetz timetz', prosrc => 'timetz_cmp' }, 2773{ oid => '1359', 2774 descr => 'convert date and time with time zone to timestamp with time zone', 2775 proname => 'timestamptz', prorettype => 'timestamptz', 2776 proargtypes => 'date timetz', prosrc => 'datetimetz_timestamptz' }, 2777 2778{ oid => '1367', descr => 'character length', 2779 proname => 'character_length', prorettype => 'int4', proargtypes => 'bpchar', 2780 prosrc => 'bpcharlen' }, 2781{ oid => '1369', descr => 'character length', 2782 proname => 'character_length', prorettype => 'int4', proargtypes => 'text', 2783 prosrc => 'textlen' }, 2784 2785{ oid => '1370', descr => 'convert time to interval', 2786 proname => 'interval', prorettype => 'interval', proargtypes => 'time', 2787 prosrc => 'time_interval' }, 2788{ oid => '1372', descr => 'character length', 2789 proname => 'char_length', prorettype => 'int4', proargtypes => 'bpchar', 2790 prosrc => 'bpcharlen' }, 2791{ oid => '1374', descr => 'octet length', 2792 proname => 'octet_length', prorettype => 'int4', proargtypes => 'text', 2793 prosrc => 'textoctetlen' }, 2794{ oid => '1375', descr => 'octet length', 2795 proname => 'octet_length', prorettype => 'int4', proargtypes => 'bpchar', 2796 prosrc => 'bpcharoctetlen' }, 2797 2798{ oid => '1377', descr => 'larger of two', 2799 proname => 'time_larger', prorettype => 'time', proargtypes => 'time time', 2800 prosrc => 'time_larger' }, 2801{ oid => '1378', descr => 'smaller of two', 2802 proname => 'time_smaller', prorettype => 'time', proargtypes => 'time time', 2803 prosrc => 'time_smaller' }, 2804{ oid => '1379', descr => 'larger of two', 2805 proname => 'timetz_larger', prorettype => 'timetz', 2806 proargtypes => 'timetz timetz', prosrc => 'timetz_larger' }, 2807{ oid => '1380', descr => 'smaller of two', 2808 proname => 'timetz_smaller', prorettype => 'timetz', 2809 proargtypes => 'timetz timetz', prosrc => 'timetz_smaller' }, 2810 2811{ oid => '1381', descr => 'character length', 2812 proname => 'char_length', prorettype => 'int4', proargtypes => 'text', 2813 prosrc => 'textlen' }, 2814 2815{ oid => '1384', descr => 'extract field from date', 2816 proname => 'date_part', prolang => 'sql', prorettype => 'float8', 2817 proargtypes => 'text date', 2818 prosrc => 'select pg_catalog.date_part($1, cast($2 as timestamp without time zone))' }, 2819{ oid => '1385', descr => 'extract field from time', 2820 proname => 'date_part', prorettype => 'float8', proargtypes => 'text time', 2821 prosrc => 'time_part' }, 2822{ oid => '1386', 2823 descr => 'date difference from today preserving months and years', 2824 proname => 'age', prolang => 'sql', provolatile => 's', 2825 prorettype => 'interval', proargtypes => 'timestamptz', 2826 prosrc => 'select pg_catalog.age(cast(current_date as timestamp with time zone), $1)' }, 2827 2828{ oid => '1388', 2829 descr => 'convert timestamp with time zone to time with time zone', 2830 proname => 'timetz', provolatile => 's', prorettype => 'timetz', 2831 proargtypes => 'timestamptz', prosrc => 'timestamptz_timetz' }, 2832 2833{ oid => '1373', descr => 'finite date?', 2834 proname => 'isfinite', prorettype => 'bool', proargtypes => 'date', 2835 prosrc => 'date_finite' }, 2836{ oid => '1389', descr => 'finite timestamp?', 2837 proname => 'isfinite', prorettype => 'bool', proargtypes => 'timestamptz', 2838 prosrc => 'timestamp_finite' }, 2839{ oid => '1390', descr => 'finite interval?', 2840 proname => 'isfinite', prorettype => 'bool', proargtypes => 'interval', 2841 prosrc => 'interval_finite' }, 2842 2843{ oid => '1376', descr => 'factorial', 2844 proname => 'factorial', prorettype => 'numeric', proargtypes => 'int8', 2845 prosrc => 'numeric_fac' }, 2846{ oid => '1394', descr => 'absolute value', 2847 proname => 'abs', prorettype => 'float4', proargtypes => 'float4', 2848 prosrc => 'float4abs' }, 2849{ oid => '1395', descr => 'absolute value', 2850 proname => 'abs', prorettype => 'float8', proargtypes => 'float8', 2851 prosrc => 'float8abs' }, 2852{ oid => '1396', descr => 'absolute value', 2853 proname => 'abs', prorettype => 'int8', proargtypes => 'int8', 2854 prosrc => 'int8abs' }, 2855{ oid => '1397', descr => 'absolute value', 2856 proname => 'abs', prorettype => 'int4', proargtypes => 'int4', 2857 prosrc => 'int4abs' }, 2858{ oid => '1398', descr => 'absolute value', 2859 proname => 'abs', prorettype => 'int2', proargtypes => 'int2', 2860 prosrc => 'int2abs' }, 2861 2862# OIDS 1400 - 1499 2863 2864{ oid => '1400', descr => 'convert varchar to name', 2865 proname => 'name', prorettype => 'name', proargtypes => 'varchar', 2866 prosrc => 'text_name' }, 2867{ oid => '1401', descr => 'convert name to varchar', 2868 proname => 'varchar', prorettype => 'varchar', proargtypes => 'name', 2869 prosrc => 'name_text' }, 2870 2871{ oid => '1402', descr => 'current schema name', 2872 proname => 'current_schema', provolatile => 's', proparallel => 'u', 2873 prorettype => 'name', proargtypes => '', prosrc => 'current_schema' }, 2874{ oid => '1403', descr => 'current schema search list', 2875 proname => 'current_schemas', provolatile => 's', proparallel => 'u', 2876 prorettype => '_name', proargtypes => 'bool', prosrc => 'current_schemas' }, 2877 2878{ oid => '1404', descr => 'substitute portion of string', 2879 proname => 'overlay', prorettype => 'text', 2880 proargtypes => 'text text int4 int4', prosrc => 'textoverlay' }, 2881{ oid => '1405', descr => 'substitute portion of string', 2882 proname => 'overlay', prorettype => 'text', proargtypes => 'text text int4', 2883 prosrc => 'textoverlay_no_len' }, 2884 2885{ oid => '1406', descr => 'vertically aligned', 2886 proname => 'isvertical', prorettype => 'bool', proargtypes => 'point point', 2887 prosrc => 'point_vert' }, 2888{ oid => '1407', descr => 'horizontally aligned', 2889 proname => 'ishorizontal', prorettype => 'bool', proargtypes => 'point point', 2890 prosrc => 'point_horiz' }, 2891{ oid => '1408', descr => 'parallel', 2892 proname => 'isparallel', prorettype => 'bool', proargtypes => 'lseg lseg', 2893 prosrc => 'lseg_parallel' }, 2894{ oid => '1409', descr => 'perpendicular', 2895 proname => 'isperp', prorettype => 'bool', proargtypes => 'lseg lseg', 2896 prosrc => 'lseg_perp' }, 2897{ oid => '1410', descr => 'vertical', 2898 proname => 'isvertical', prorettype => 'bool', proargtypes => 'lseg', 2899 prosrc => 'lseg_vertical' }, 2900{ oid => '1411', descr => 'horizontal', 2901 proname => 'ishorizontal', prorettype => 'bool', proargtypes => 'lseg', 2902 prosrc => 'lseg_horizontal' }, 2903{ oid => '1412', descr => 'parallel', 2904 proname => 'isparallel', prorettype => 'bool', proargtypes => 'line line', 2905 prosrc => 'line_parallel' }, 2906{ oid => '1413', descr => 'perpendicular', 2907 proname => 'isperp', prorettype => 'bool', proargtypes => 'line line', 2908 prosrc => 'line_perp' }, 2909{ oid => '1414', descr => 'vertical', 2910 proname => 'isvertical', prorettype => 'bool', proargtypes => 'line', 2911 prosrc => 'line_vertical' }, 2912{ oid => '1415', descr => 'horizontal', 2913 proname => 'ishorizontal', prorettype => 'bool', proargtypes => 'line', 2914 prosrc => 'line_horizontal' }, 2915{ oid => '1416', descr => 'center of', 2916 proname => 'point', prorettype => 'point', proargtypes => 'circle', 2917 prosrc => 'circle_center' }, 2918 2919{ oid => '1419', descr => 'convert interval to time', 2920 proname => 'time', prorettype => 'time', proargtypes => 'interval', 2921 prosrc => 'interval_time' }, 2922 2923{ oid => '1421', descr => 'convert points to box', 2924 proname => 'box', prorettype => 'box', proargtypes => 'point point', 2925 prosrc => 'points_box' }, 2926{ oid => '1422', 2927 proname => 'box_add', prorettype => 'box', proargtypes => 'box point', 2928 prosrc => 'box_add' }, 2929{ oid => '1423', 2930 proname => 'box_sub', prorettype => 'box', proargtypes => 'box point', 2931 prosrc => 'box_sub' }, 2932{ oid => '1424', 2933 proname => 'box_mul', prorettype => 'box', proargtypes => 'box point', 2934 prosrc => 'box_mul' }, 2935{ oid => '1425', 2936 proname => 'box_div', prorettype => 'box', proargtypes => 'box point', 2937 prosrc => 'box_div' }, 2938{ oid => '1426', 2939 proname => 'path_contain_pt', prolang => 'sql', prorettype => 'bool', 2940 proargtypes => 'path point', prosrc => 'select pg_catalog.on_ppath($2, $1)' }, 2941{ oid => '1428', 2942 proname => 'poly_contain_pt', prorettype => 'bool', 2943 proargtypes => 'polygon point', prosrc => 'poly_contain_pt' }, 2944{ oid => '1429', 2945 proname => 'pt_contained_poly', prorettype => 'bool', 2946 proargtypes => 'point polygon', prosrc => 'pt_contained_poly' }, 2947 2948{ oid => '1430', descr => 'path closed?', 2949 proname => 'isclosed', prorettype => 'bool', proargtypes => 'path', 2950 prosrc => 'path_isclosed' }, 2951{ oid => '1431', descr => 'path open?', 2952 proname => 'isopen', prorettype => 'bool', proargtypes => 'path', 2953 prosrc => 'path_isopen' }, 2954{ oid => '1432', 2955 proname => 'path_npoints', prorettype => 'int4', proargtypes => 'path', 2956 prosrc => 'path_npoints' }, 2957 2958# pclose and popen might better be named close and open, but that crashes initdb. 2959# - thomas 97/04/20 2960{ oid => '1433', descr => 'close path', 2961 proname => 'pclose', prorettype => 'path', proargtypes => 'path', 2962 prosrc => 'path_close' }, 2963{ oid => '1434', descr => 'open path', 2964 proname => 'popen', prorettype => 'path', proargtypes => 'path', 2965 prosrc => 'path_open' }, 2966 2967{ oid => '1435', 2968 proname => 'path_add', prorettype => 'path', proargtypes => 'path path', 2969 prosrc => 'path_add' }, 2970{ oid => '1436', 2971 proname => 'path_add_pt', prorettype => 'path', proargtypes => 'path point', 2972 prosrc => 'path_add_pt' }, 2973{ oid => '1437', 2974 proname => 'path_sub_pt', prorettype => 'path', proargtypes => 'path point', 2975 prosrc => 'path_sub_pt' }, 2976{ oid => '1438', 2977 proname => 'path_mul_pt', prorettype => 'path', proargtypes => 'path point', 2978 prosrc => 'path_mul_pt' }, 2979{ oid => '1439', 2980 proname => 'path_div_pt', prorettype => 'path', proargtypes => 'path point', 2981 prosrc => 'path_div_pt' }, 2982 2983{ oid => '1440', descr => 'convert x, y to point', 2984 proname => 'point', prorettype => 'point', proargtypes => 'float8 float8', 2985 prosrc => 'construct_point' }, 2986{ oid => '1441', 2987 proname => 'point_add', prorettype => 'point', proargtypes => 'point point', 2988 prosrc => 'point_add' }, 2989{ oid => '1442', 2990 proname => 'point_sub', prorettype => 'point', proargtypes => 'point point', 2991 prosrc => 'point_sub' }, 2992{ oid => '1443', 2993 proname => 'point_mul', prorettype => 'point', proargtypes => 'point point', 2994 prosrc => 'point_mul' }, 2995{ oid => '1444', 2996 proname => 'point_div', prorettype => 'point', proargtypes => 'point point', 2997 prosrc => 'point_div' }, 2998 2999{ oid => '1445', 3000 proname => 'poly_npoints', prorettype => 'int4', proargtypes => 'polygon', 3001 prosrc => 'poly_npoints' }, 3002{ oid => '1446', descr => 'convert polygon to bounding box', 3003 proname => 'box', prorettype => 'box', proargtypes => 'polygon', 3004 prosrc => 'poly_box' }, 3005{ oid => '1447', descr => 'convert polygon to path', 3006 proname => 'path', prorettype => 'path', proargtypes => 'polygon', 3007 prosrc => 'poly_path' }, 3008{ oid => '1448', descr => 'convert box to polygon', 3009 proname => 'polygon', prorettype => 'polygon', proargtypes => 'box', 3010 prosrc => 'box_poly' }, 3011{ oid => '1449', descr => 'convert path to polygon', 3012 proname => 'polygon', prorettype => 'polygon', proargtypes => 'path', 3013 prosrc => 'path_poly' }, 3014 3015{ oid => '1450', descr => 'I/O', 3016 proname => 'circle_in', prorettype => 'circle', proargtypes => 'cstring', 3017 prosrc => 'circle_in' }, 3018{ oid => '1451', descr => 'I/O', 3019 proname => 'circle_out', prorettype => 'cstring', proargtypes => 'circle', 3020 prosrc => 'circle_out' }, 3021{ oid => '1452', 3022 proname => 'circle_same', prorettype => 'bool', 3023 proargtypes => 'circle circle', prosrc => 'circle_same' }, 3024{ oid => '1453', 3025 proname => 'circle_contain', prorettype => 'bool', 3026 proargtypes => 'circle circle', prosrc => 'circle_contain' }, 3027{ oid => '1454', 3028 proname => 'circle_left', prorettype => 'bool', 3029 proargtypes => 'circle circle', prosrc => 'circle_left' }, 3030{ oid => '1455', 3031 proname => 'circle_overleft', prorettype => 'bool', 3032 proargtypes => 'circle circle', prosrc => 'circle_overleft' }, 3033{ oid => '1456', 3034 proname => 'circle_overright', prorettype => 'bool', 3035 proargtypes => 'circle circle', prosrc => 'circle_overright' }, 3036{ oid => '1457', 3037 proname => 'circle_right', prorettype => 'bool', 3038 proargtypes => 'circle circle', prosrc => 'circle_right' }, 3039{ oid => '1458', 3040 proname => 'circle_contained', prorettype => 'bool', 3041 proargtypes => 'circle circle', prosrc => 'circle_contained' }, 3042{ oid => '1459', 3043 proname => 'circle_overlap', prorettype => 'bool', 3044 proargtypes => 'circle circle', prosrc => 'circle_overlap' }, 3045{ oid => '1460', 3046 proname => 'circle_below', prorettype => 'bool', 3047 proargtypes => 'circle circle', prosrc => 'circle_below' }, 3048{ oid => '1461', 3049 proname => 'circle_above', prorettype => 'bool', 3050 proargtypes => 'circle circle', prosrc => 'circle_above' }, 3051{ oid => '1462', 3052 proname => 'circle_eq', proleakproof => 't', prorettype => 'bool', 3053 proargtypes => 'circle circle', prosrc => 'circle_eq' }, 3054{ oid => '1463', 3055 proname => 'circle_ne', proleakproof => 't', prorettype => 'bool', 3056 proargtypes => 'circle circle', prosrc => 'circle_ne' }, 3057{ oid => '1464', 3058 proname => 'circle_lt', proleakproof => 't', prorettype => 'bool', 3059 proargtypes => 'circle circle', prosrc => 'circle_lt' }, 3060{ oid => '1465', 3061 proname => 'circle_gt', proleakproof => 't', prorettype => 'bool', 3062 proargtypes => 'circle circle', prosrc => 'circle_gt' }, 3063{ oid => '1466', 3064 proname => 'circle_le', proleakproof => 't', prorettype => 'bool', 3065 proargtypes => 'circle circle', prosrc => 'circle_le' }, 3066{ oid => '1467', 3067 proname => 'circle_ge', proleakproof => 't', prorettype => 'bool', 3068 proargtypes => 'circle circle', prosrc => 'circle_ge' }, 3069{ oid => '1468', descr => 'area of circle', 3070 proname => 'area', prorettype => 'float8', proargtypes => 'circle', 3071 prosrc => 'circle_area' }, 3072{ oid => '1469', descr => 'diameter of circle', 3073 proname => 'diameter', prorettype => 'float8', proargtypes => 'circle', 3074 prosrc => 'circle_diameter' }, 3075{ oid => '1470', descr => 'radius of circle', 3076 proname => 'radius', prorettype => 'float8', proargtypes => 'circle', 3077 prosrc => 'circle_radius' }, 3078{ oid => '1471', 3079 proname => 'circle_distance', prorettype => 'float8', 3080 proargtypes => 'circle circle', prosrc => 'circle_distance' }, 3081{ oid => '1472', 3082 proname => 'circle_center', prorettype => 'point', proargtypes => 'circle', 3083 prosrc => 'circle_center' }, 3084{ oid => '1473', descr => 'convert point and radius to circle', 3085 proname => 'circle', prorettype => 'circle', proargtypes => 'point float8', 3086 prosrc => 'cr_circle' }, 3087{ oid => '1474', descr => 'convert polygon to circle', 3088 proname => 'circle', prorettype => 'circle', proargtypes => 'polygon', 3089 prosrc => 'poly_circle' }, 3090{ oid => '1475', descr => 'convert vertex count and circle to polygon', 3091 proname => 'polygon', prorettype => 'polygon', proargtypes => 'int4 circle', 3092 prosrc => 'circle_poly' }, 3093{ oid => '1476', 3094 proname => 'dist_pc', prorettype => 'float8', proargtypes => 'point circle', 3095 prosrc => 'dist_pc' }, 3096{ oid => '1477', 3097 proname => 'circle_contain_pt', prorettype => 'bool', 3098 proargtypes => 'circle point', prosrc => 'circle_contain_pt' }, 3099{ oid => '1478', 3100 proname => 'pt_contained_circle', prorettype => 'bool', 3101 proargtypes => 'point circle', prosrc => 'pt_contained_circle' }, 3102{ oid => '4091', descr => 'convert point to empty box', 3103 proname => 'box', prorettype => 'box', proargtypes => 'point', 3104 prosrc => 'point_box' }, 3105{ oid => '1479', descr => 'convert box to circle', 3106 proname => 'circle', prorettype => 'circle', proargtypes => 'box', 3107 prosrc => 'box_circle' }, 3108{ oid => '1480', descr => 'convert circle to box', 3109 proname => 'box', prorettype => 'box', proargtypes => 'circle', 3110 prosrc => 'circle_box' }, 3111 3112{ oid => '1482', 3113 proname => 'lseg_ne', proleakproof => 't', prorettype => 'bool', 3114 proargtypes => 'lseg lseg', prosrc => 'lseg_ne' }, 3115{ oid => '1483', 3116 proname => 'lseg_lt', proleakproof => 't', prorettype => 'bool', 3117 proargtypes => 'lseg lseg', prosrc => 'lseg_lt' }, 3118{ oid => '1484', 3119 proname => 'lseg_le', proleakproof => 't', prorettype => 'bool', 3120 proargtypes => 'lseg lseg', prosrc => 'lseg_le' }, 3121{ oid => '1485', 3122 proname => 'lseg_gt', proleakproof => 't', prorettype => 'bool', 3123 proargtypes => 'lseg lseg', prosrc => 'lseg_gt' }, 3124{ oid => '1486', 3125 proname => 'lseg_ge', proleakproof => 't', prorettype => 'bool', 3126 proargtypes => 'lseg lseg', prosrc => 'lseg_ge' }, 3127{ oid => '1487', 3128 proname => 'lseg_length', prorettype => 'float8', proargtypes => 'lseg', 3129 prosrc => 'lseg_length' }, 3130{ oid => '1488', 3131 proname => 'close_ls', prorettype => 'point', proargtypes => 'line lseg', 3132 prosrc => 'close_ls' }, 3133{ oid => '1489', 3134 proname => 'close_lseg', prorettype => 'point', proargtypes => 'lseg lseg', 3135 prosrc => 'close_lseg' }, 3136 3137{ oid => '1490', descr => 'I/O', 3138 proname => 'line_in', prorettype => 'line', proargtypes => 'cstring', 3139 prosrc => 'line_in' }, 3140{ oid => '1491', descr => 'I/O', 3141 proname => 'line_out', prorettype => 'cstring', proargtypes => 'line', 3142 prosrc => 'line_out' }, 3143{ oid => '1492', 3144 proname => 'line_eq', prorettype => 'bool', proargtypes => 'line line', 3145 prosrc => 'line_eq' }, 3146{ oid => '1493', descr => 'construct line from points', 3147 proname => 'line', prorettype => 'line', proargtypes => 'point point', 3148 prosrc => 'line_construct_pp' }, 3149{ oid => '1494', 3150 proname => 'line_interpt', prorettype => 'point', proargtypes => 'line line', 3151 prosrc => 'line_interpt' }, 3152{ oid => '1495', 3153 proname => 'line_intersect', prorettype => 'bool', proargtypes => 'line line', 3154 prosrc => 'line_intersect' }, 3155{ oid => '1496', 3156 proname => 'line_parallel', prorettype => 'bool', proargtypes => 'line line', 3157 prosrc => 'line_parallel' }, 3158{ oid => '1497', 3159 proname => 'line_perp', prorettype => 'bool', proargtypes => 'line line', 3160 prosrc => 'line_perp' }, 3161{ oid => '1498', 3162 proname => 'line_vertical', prorettype => 'bool', proargtypes => 'line', 3163 prosrc => 'line_vertical' }, 3164{ oid => '1499', 3165 proname => 'line_horizontal', prorettype => 'bool', proargtypes => 'line', 3166 prosrc => 'line_horizontal' }, 3167 3168# OIDS 1500 - 1599 3169 3170{ oid => '1530', descr => 'distance between endpoints', 3171 proname => 'length', prorettype => 'float8', proargtypes => 'lseg', 3172 prosrc => 'lseg_length' }, 3173{ oid => '1531', descr => 'sum of path segments', 3174 proname => 'length', prorettype => 'float8', proargtypes => 'path', 3175 prosrc => 'path_length' }, 3176 3177{ oid => '1532', descr => 'center of', 3178 proname => 'point', prorettype => 'point', proargtypes => 'lseg', 3179 prosrc => 'lseg_center' }, 3180{ oid => '1533', descr => 'center of', 3181 proname => 'point', prorettype => 'point', proargtypes => 'path', 3182 prosrc => 'path_center' }, 3183{ oid => '1534', descr => 'center of', 3184 proname => 'point', prorettype => 'point', proargtypes => 'box', 3185 prosrc => 'box_center' }, 3186{ oid => '1540', descr => 'center of', 3187 proname => 'point', prorettype => 'point', proargtypes => 'polygon', 3188 prosrc => 'poly_center' }, 3189{ oid => '1541', descr => 'diagonal of', 3190 proname => 'lseg', prorettype => 'lseg', proargtypes => 'box', 3191 prosrc => 'box_diagonal' }, 3192{ oid => '1542', descr => 'center of', 3193 proname => 'center', prorettype => 'point', proargtypes => 'box', 3194 prosrc => 'box_center' }, 3195{ oid => '1543', descr => 'center of', 3196 proname => 'center', prorettype => 'point', proargtypes => 'circle', 3197 prosrc => 'circle_center' }, 3198{ oid => '1544', descr => 'convert circle to 12-vertex polygon', 3199 proname => 'polygon', prolang => 'sql', prorettype => 'polygon', 3200 proargtypes => 'circle', prosrc => 'select pg_catalog.polygon(12, $1)' }, 3201{ oid => '1545', descr => 'number of points', 3202 proname => 'npoints', prorettype => 'int4', proargtypes => 'path', 3203 prosrc => 'path_npoints' }, 3204{ oid => '1556', descr => 'number of points', 3205 proname => 'npoints', prorettype => 'int4', proargtypes => 'polygon', 3206 prosrc => 'poly_npoints' }, 3207 3208{ oid => '1564', descr => 'I/O', 3209 proname => 'bit_in', prorettype => 'bit', proargtypes => 'cstring oid int4', 3210 prosrc => 'bit_in' }, 3211{ oid => '1565', descr => 'I/O', 3212 proname => 'bit_out', prorettype => 'cstring', proargtypes => 'bit', 3213 prosrc => 'bit_out' }, 3214{ oid => '2919', descr => 'I/O typmod', 3215 proname => 'bittypmodin', prorettype => 'int4', proargtypes => '_cstring', 3216 prosrc => 'bittypmodin' }, 3217{ oid => '2920', descr => 'I/O typmod', 3218 proname => 'bittypmodout', prorettype => 'cstring', proargtypes => 'int4', 3219 prosrc => 'bittypmodout' }, 3220 3221{ oid => '1569', descr => 'matches LIKE expression', 3222 proname => 'like', prosupport => 'textlike_support', prorettype => 'bool', 3223 proargtypes => 'text text', prosrc => 'textlike' }, 3224{ oid => '1570', descr => 'does not match LIKE expression', 3225 proname => 'notlike', prorettype => 'bool', proargtypes => 'text text', 3226 prosrc => 'textnlike' }, 3227{ oid => '1571', descr => 'matches LIKE expression', 3228 proname => 'like', prosupport => 'textlike_support', prorettype => 'bool', 3229 proargtypes => 'name text', prosrc => 'namelike' }, 3230{ oid => '1572', descr => 'does not match LIKE expression', 3231 proname => 'notlike', prorettype => 'bool', proargtypes => 'name text', 3232 prosrc => 'namenlike' }, 3233 3234# SEQUENCE functions 3235{ oid => '1574', descr => 'sequence next value', 3236 proname => 'nextval', provolatile => 'v', proparallel => 'u', 3237 prorettype => 'int8', proargtypes => 'regclass', prosrc => 'nextval_oid' }, 3238{ oid => '1575', descr => 'sequence current value', 3239 proname => 'currval', provolatile => 'v', proparallel => 'u', 3240 prorettype => 'int8', proargtypes => 'regclass', prosrc => 'currval_oid' }, 3241{ oid => '1576', descr => 'set sequence value', 3242 proname => 'setval', provolatile => 'v', proparallel => 'u', 3243 prorettype => 'int8', proargtypes => 'regclass int8', 3244 prosrc => 'setval_oid' }, 3245{ oid => '1765', descr => 'set sequence value and is_called status', 3246 proname => 'setval', provolatile => 'v', proparallel => 'u', 3247 prorettype => 'int8', proargtypes => 'regclass int8 bool', 3248 prosrc => 'setval3_oid' }, 3249{ oid => '3078', 3250 descr => 'sequence parameters, for use by information schema', 3251 proname => 'pg_sequence_parameters', provolatile => 's', 3252 prorettype => 'record', proargtypes => 'oid', 3253 proallargtypes => '{oid,int8,int8,int8,int8,bool,int8,oid}', 3254 proargmodes => '{i,o,o,o,o,o,o,o}', 3255 proargnames => '{sequence_oid,start_value,minimum_value,maximum_value,increment,cycle_option,cache_size,data_type}', 3256 prosrc => 'pg_sequence_parameters' }, 3257{ oid => '4032', descr => 'sequence last value', 3258 proname => 'pg_sequence_last_value', provolatile => 'v', proparallel => 'u', 3259 prorettype => 'int8', proargtypes => 'regclass', 3260 prosrc => 'pg_sequence_last_value' }, 3261 3262{ oid => '275', descr => 'return the next oid for a system table', 3263 proname => 'pg_nextoid', provolatile => 'v', proparallel => 'u', 3264 prorettype => 'oid', proargtypes => 'regclass name regclass', 3265 prosrc => 'pg_nextoid' }, 3266 3267{ oid => '1579', descr => 'I/O', 3268 proname => 'varbit_in', prorettype => 'varbit', 3269 proargtypes => 'cstring oid int4', prosrc => 'varbit_in' }, 3270{ oid => '1580', descr => 'I/O', 3271 proname => 'varbit_out', prorettype => 'cstring', proargtypes => 'varbit', 3272 prosrc => 'varbit_out' }, 3273{ oid => '2902', descr => 'I/O typmod', 3274 proname => 'varbittypmodin', prorettype => 'int4', proargtypes => '_cstring', 3275 prosrc => 'varbittypmodin' }, 3276{ oid => '2921', descr => 'I/O typmod', 3277 proname => 'varbittypmodout', prorettype => 'cstring', proargtypes => 'int4', 3278 prosrc => 'varbittypmodout' }, 3279 3280{ oid => '1581', 3281 proname => 'biteq', proleakproof => 't', prorettype => 'bool', 3282 proargtypes => 'bit bit', prosrc => 'biteq' }, 3283{ oid => '1582', 3284 proname => 'bitne', proleakproof => 't', prorettype => 'bool', 3285 proargtypes => 'bit bit', prosrc => 'bitne' }, 3286{ oid => '1592', 3287 proname => 'bitge', proleakproof => 't', prorettype => 'bool', 3288 proargtypes => 'bit bit', prosrc => 'bitge' }, 3289{ oid => '1593', 3290 proname => 'bitgt', proleakproof => 't', prorettype => 'bool', 3291 proargtypes => 'bit bit', prosrc => 'bitgt' }, 3292{ oid => '1594', 3293 proname => 'bitle', proleakproof => 't', prorettype => 'bool', 3294 proargtypes => 'bit bit', prosrc => 'bitle' }, 3295{ oid => '1595', 3296 proname => 'bitlt', proleakproof => 't', prorettype => 'bool', 3297 proargtypes => 'bit bit', prosrc => 'bitlt' }, 3298{ oid => '1596', descr => 'less-equal-greater', 3299 proname => 'bitcmp', proleakproof => 't', prorettype => 'int4', 3300 proargtypes => 'bit bit', prosrc => 'bitcmp' }, 3301 3302{ oid => '1598', descr => 'random value', 3303 proname => 'random', provolatile => 'v', proparallel => 'r', 3304 prorettype => 'float8', proargtypes => '', prosrc => 'drandom' }, 3305{ oid => '1599', descr => 'set random seed', 3306 proname => 'setseed', provolatile => 'v', proparallel => 'r', 3307 prorettype => 'void', proargtypes => 'float8', prosrc => 'setseed' }, 3308 3309# OIDS 1600 - 1699 3310 3311{ oid => '1600', descr => 'arcsine', 3312 proname => 'asin', prorettype => 'float8', proargtypes => 'float8', 3313 prosrc => 'dasin' }, 3314{ oid => '1601', descr => 'arccosine', 3315 proname => 'acos', prorettype => 'float8', proargtypes => 'float8', 3316 prosrc => 'dacos' }, 3317{ oid => '1602', descr => 'arctangent', 3318 proname => 'atan', prorettype => 'float8', proargtypes => 'float8', 3319 prosrc => 'datan' }, 3320{ oid => '1603', descr => 'arctangent, two arguments', 3321 proname => 'atan2', prorettype => 'float8', proargtypes => 'float8 float8', 3322 prosrc => 'datan2' }, 3323{ oid => '1604', descr => 'sine', 3324 proname => 'sin', prorettype => 'float8', proargtypes => 'float8', 3325 prosrc => 'dsin' }, 3326{ oid => '1605', descr => 'cosine', 3327 proname => 'cos', prorettype => 'float8', proargtypes => 'float8', 3328 prosrc => 'dcos' }, 3329{ oid => '1606', descr => 'tangent', 3330 proname => 'tan', prorettype => 'float8', proargtypes => 'float8', 3331 prosrc => 'dtan' }, 3332{ oid => '1607', descr => 'cotangent', 3333 proname => 'cot', prorettype => 'float8', proargtypes => 'float8', 3334 prosrc => 'dcot' }, 3335 3336{ oid => '2731', descr => 'arcsine, degrees', 3337 proname => 'asind', prorettype => 'float8', proargtypes => 'float8', 3338 prosrc => 'dasind' }, 3339{ oid => '2732', descr => 'arccosine, degrees', 3340 proname => 'acosd', prorettype => 'float8', proargtypes => 'float8', 3341 prosrc => 'dacosd' }, 3342{ oid => '2733', descr => 'arctangent, degrees', 3343 proname => 'atand', prorettype => 'float8', proargtypes => 'float8', 3344 prosrc => 'datand' }, 3345{ oid => '2734', descr => 'arctangent, two arguments, degrees', 3346 proname => 'atan2d', prorettype => 'float8', proargtypes => 'float8 float8', 3347 prosrc => 'datan2d' }, 3348{ oid => '2735', descr => 'sine, degrees', 3349 proname => 'sind', prorettype => 'float8', proargtypes => 'float8', 3350 prosrc => 'dsind' }, 3351{ oid => '2736', descr => 'cosine, degrees', 3352 proname => 'cosd', prorettype => 'float8', proargtypes => 'float8', 3353 prosrc => 'dcosd' }, 3354{ oid => '2737', descr => 'tangent, degrees', 3355 proname => 'tand', prorettype => 'float8', proargtypes => 'float8', 3356 prosrc => 'dtand' }, 3357{ oid => '2738', descr => 'cotangent, degrees', 3358 proname => 'cotd', prorettype => 'float8', proargtypes => 'float8', 3359 prosrc => 'dcotd' }, 3360 3361{ oid => '1608', descr => 'radians to degrees', 3362 proname => 'degrees', prorettype => 'float8', proargtypes => 'float8', 3363 prosrc => 'degrees' }, 3364{ oid => '1609', descr => 'degrees to radians', 3365 proname => 'radians', prorettype => 'float8', proargtypes => 'float8', 3366 prosrc => 'radians' }, 3367{ oid => '1610', descr => 'PI', 3368 proname => 'pi', prorettype => 'float8', proargtypes => '', prosrc => 'dpi' }, 3369 3370{ oid => '2462', descr => 'hyperbolic sine', 3371 proname => 'sinh', prorettype => 'float8', proargtypes => 'float8', 3372 prosrc => 'dsinh' }, 3373{ oid => '2463', descr => 'hyperbolic cosine', 3374 proname => 'cosh', prorettype => 'float8', proargtypes => 'float8', 3375 prosrc => 'dcosh' }, 3376{ oid => '2464', descr => 'hyperbolic tangent', 3377 proname => 'tanh', prorettype => 'float8', proargtypes => 'float8', 3378 prosrc => 'dtanh' }, 3379{ oid => '2465', descr => 'inverse hyperbolic sine', 3380 proname => 'asinh', prorettype => 'float8', proargtypes => 'float8', 3381 prosrc => 'dasinh' }, 3382{ oid => '2466', descr => 'inverse hyperbolic cosine', 3383 proname => 'acosh', prorettype => 'float8', proargtypes => 'float8', 3384 prosrc => 'dacosh' }, 3385{ oid => '2467', descr => 'inverse hyperbolic tangent', 3386 proname => 'atanh', prorettype => 'float8', proargtypes => 'float8', 3387 prosrc => 'datanh' }, 3388 3389{ oid => '1618', 3390 proname => 'interval_mul', prorettype => 'interval', 3391 proargtypes => 'interval float8', prosrc => 'interval_mul' }, 3392 3393{ oid => '1620', descr => 'convert first char to int4', 3394 proname => 'ascii', prorettype => 'int4', proargtypes => 'text', 3395 prosrc => 'ascii' }, 3396{ oid => '1621', descr => 'convert int4 to char', 3397 proname => 'chr', prorettype => 'text', proargtypes => 'int4', 3398 prosrc => 'chr' }, 3399{ oid => '1622', descr => 'replicate string n times', 3400 proname => 'repeat', prorettype => 'text', proargtypes => 'text int4', 3401 prosrc => 'repeat' }, 3402 3403{ oid => '1623', descr => 'convert SQL regexp pattern to POSIX style', 3404 proname => 'similar_escape', proisstrict => 'f', prorettype => 'text', 3405 proargtypes => 'text text', prosrc => 'similar_escape' }, 3406{ oid => '1986', descr => 'convert SQL regexp pattern to POSIX style', 3407 proname => 'similar_to_escape', prorettype => 'text', 3408 proargtypes => 'text text', prosrc => 'similar_to_escape_2' }, 3409{ oid => '1987', descr => 'convert SQL regexp pattern to POSIX style', 3410 proname => 'similar_to_escape', prorettype => 'text', proargtypes => 'text', 3411 prosrc => 'similar_to_escape_1' }, 3412 3413{ oid => '1624', 3414 proname => 'mul_d_interval', prorettype => 'interval', 3415 proargtypes => 'float8 interval', prosrc => 'mul_d_interval' }, 3416 3417{ oid => '1631', 3418 proname => 'bpcharlike', prosupport => 'textlike_support', 3419 prorettype => 'bool', proargtypes => 'bpchar text', prosrc => 'textlike' }, 3420{ oid => '1632', 3421 proname => 'bpcharnlike', prorettype => 'bool', proargtypes => 'bpchar text', 3422 prosrc => 'textnlike' }, 3423 3424{ oid => '1633', 3425 proname => 'texticlike', prosupport => 'texticlike_support', 3426 prorettype => 'bool', proargtypes => 'text text', prosrc => 'texticlike' }, 3427{ oid => '1025', descr => 'planner support for texticlike', 3428 proname => 'texticlike_support', prorettype => 'internal', 3429 proargtypes => 'internal', prosrc => 'texticlike_support' }, 3430{ oid => '1634', 3431 proname => 'texticnlike', prorettype => 'bool', proargtypes => 'text text', 3432 prosrc => 'texticnlike' }, 3433{ oid => '1635', 3434 proname => 'nameiclike', prosupport => 'texticlike_support', 3435 prorettype => 'bool', proargtypes => 'name text', prosrc => 'nameiclike' }, 3436{ oid => '1636', 3437 proname => 'nameicnlike', prorettype => 'bool', proargtypes => 'name text', 3438 prosrc => 'nameicnlike' }, 3439{ oid => '1637', descr => 'convert LIKE pattern to use backslash escapes', 3440 proname => 'like_escape', prorettype => 'text', proargtypes => 'text text', 3441 prosrc => 'like_escape' }, 3442 3443{ oid => '1656', 3444 proname => 'bpcharicregexeq', prosupport => 'texticregexeq_support', 3445 prorettype => 'bool', proargtypes => 'bpchar text', 3446 prosrc => 'texticregexeq' }, 3447{ oid => '1657', 3448 proname => 'bpcharicregexne', prorettype => 'bool', 3449 proargtypes => 'bpchar text', prosrc => 'texticregexne' }, 3450{ oid => '1658', 3451 proname => 'bpcharregexeq', prosupport => 'textregexeq_support', 3452 prorettype => 'bool', proargtypes => 'bpchar text', prosrc => 'textregexeq' }, 3453{ oid => '1659', 3454 proname => 'bpcharregexne', prorettype => 'bool', 3455 proargtypes => 'bpchar text', prosrc => 'textregexne' }, 3456{ oid => '1660', 3457 proname => 'bpchariclike', prosupport => 'texticlike_support', 3458 prorettype => 'bool', proargtypes => 'bpchar text', prosrc => 'texticlike' }, 3459{ oid => '1661', 3460 proname => 'bpcharicnlike', prorettype => 'bool', 3461 proargtypes => 'bpchar text', prosrc => 'texticnlike' }, 3462 3463# Oracle Compatibility Related Functions - By Edmund Mergl <E.Mergl@bawue.de> 3464{ oid => '868', descr => 'position of substring', 3465 proname => 'strpos', prorettype => 'int4', proargtypes => 'text text', 3466 prosrc => 'textpos' }, 3467{ oid => '870', descr => 'lowercase', 3468 proname => 'lower', prorettype => 'text', proargtypes => 'text', 3469 prosrc => 'lower' }, 3470{ oid => '871', descr => 'uppercase', 3471 proname => 'upper', prorettype => 'text', proargtypes => 'text', 3472 prosrc => 'upper' }, 3473{ oid => '872', descr => 'capitalize each word', 3474 proname => 'initcap', prorettype => 'text', proargtypes => 'text', 3475 prosrc => 'initcap' }, 3476{ oid => '873', descr => 'left-pad string to length', 3477 proname => 'lpad', prorettype => 'text', proargtypes => 'text int4 text', 3478 prosrc => 'lpad' }, 3479{ oid => '874', descr => 'right-pad string to length', 3480 proname => 'rpad', prorettype => 'text', proargtypes => 'text int4 text', 3481 prosrc => 'rpad' }, 3482{ oid => '875', descr => 'trim selected characters from left end of string', 3483 proname => 'ltrim', prorettype => 'text', proargtypes => 'text text', 3484 prosrc => 'ltrim' }, 3485{ oid => '876', descr => 'trim selected characters from right end of string', 3486 proname => 'rtrim', prorettype => 'text', proargtypes => 'text text', 3487 prosrc => 'rtrim' }, 3488{ oid => '877', descr => 'extract portion of string', 3489 proname => 'substr', prorettype => 'text', proargtypes => 'text int4 int4', 3490 prosrc => 'text_substr' }, 3491{ oid => '878', descr => 'map a set of characters appearing in string', 3492 proname => 'translate', prorettype => 'text', proargtypes => 'text text text', 3493 prosrc => 'translate' }, 3494{ oid => '879', descr => 'left-pad string to length', 3495 proname => 'lpad', prolang => 'sql', prorettype => 'text', 3496 proargtypes => 'text int4', 3497 prosrc => 'select pg_catalog.lpad($1, $2, \' \')' }, 3498{ oid => '880', descr => 'right-pad string to length', 3499 proname => 'rpad', prolang => 'sql', prorettype => 'text', 3500 proargtypes => 'text int4', 3501 prosrc => 'select pg_catalog.rpad($1, $2, \' \')' }, 3502{ oid => '881', descr => 'trim spaces from left end of string', 3503 proname => 'ltrim', prorettype => 'text', proargtypes => 'text', 3504 prosrc => 'ltrim1' }, 3505{ oid => '882', descr => 'trim spaces from right end of string', 3506 proname => 'rtrim', prorettype => 'text', proargtypes => 'text', 3507 prosrc => 'rtrim1' }, 3508{ oid => '883', descr => 'extract portion of string', 3509 proname => 'substr', prorettype => 'text', proargtypes => 'text int4', 3510 prosrc => 'text_substr_no_len' }, 3511{ oid => '884', descr => 'trim selected characters from both ends of string', 3512 proname => 'btrim', prorettype => 'text', proargtypes => 'text text', 3513 prosrc => 'btrim' }, 3514{ oid => '885', descr => 'trim spaces from both ends of string', 3515 proname => 'btrim', prorettype => 'text', proargtypes => 'text', 3516 prosrc => 'btrim1' }, 3517 3518{ oid => '936', descr => 'extract portion of string', 3519 proname => 'substring', prorettype => 'text', proargtypes => 'text int4 int4', 3520 prosrc => 'text_substr' }, 3521{ oid => '937', descr => 'extract portion of string', 3522 proname => 'substring', prorettype => 'text', proargtypes => 'text int4', 3523 prosrc => 'text_substr_no_len' }, 3524{ oid => '2087', 3525 descr => 'replace all occurrences in string of old_substr with new_substr', 3526 proname => 'replace', prorettype => 'text', proargtypes => 'text text text', 3527 prosrc => 'replace_text' }, 3528{ oid => '2284', descr => 'replace text using regexp', 3529 proname => 'regexp_replace', prorettype => 'text', 3530 proargtypes => 'text text text', prosrc => 'textregexreplace_noopt' }, 3531{ oid => '2285', descr => 'replace text using regexp', 3532 proname => 'regexp_replace', prorettype => 'text', 3533 proargtypes => 'text text text text', prosrc => 'textregexreplace' }, 3534{ oid => '3396', descr => 'find first match for regexp', 3535 proname => 'regexp_match', prorettype => '_text', proargtypes => 'text text', 3536 prosrc => 'regexp_match_no_flags' }, 3537{ oid => '3397', descr => 'find first match for regexp', 3538 proname => 'regexp_match', prorettype => '_text', 3539 proargtypes => 'text text text', prosrc => 'regexp_match' }, 3540{ oid => '2763', descr => 'find match(es) for regexp', 3541 proname => 'regexp_matches', prorows => '1', proretset => 't', 3542 prorettype => '_text', proargtypes => 'text text', 3543 prosrc => 'regexp_matches_no_flags' }, 3544{ oid => '2764', descr => 'find match(es) for regexp', 3545 proname => 'regexp_matches', prorows => '10', proretset => 't', 3546 prorettype => '_text', proargtypes => 'text text text', 3547 prosrc => 'regexp_matches' }, 3548{ oid => '2088', descr => 'split string by field_sep and return field_num', 3549 proname => 'split_part', prorettype => 'text', 3550 proargtypes => 'text text int4', prosrc => 'split_text' }, 3551{ oid => '2765', descr => 'split string by pattern', 3552 proname => 'regexp_split_to_table', prorows => '1000', proretset => 't', 3553 prorettype => 'text', proargtypes => 'text text', 3554 prosrc => 'regexp_split_to_table_no_flags' }, 3555{ oid => '2766', descr => 'split string by pattern', 3556 proname => 'regexp_split_to_table', prorows => '1000', proretset => 't', 3557 prorettype => 'text', proargtypes => 'text text text', 3558 prosrc => 'regexp_split_to_table' }, 3559{ oid => '2767', descr => 'split string by pattern', 3560 proname => 'regexp_split_to_array', prorettype => '_text', 3561 proargtypes => 'text text', prosrc => 'regexp_split_to_array_no_flags' }, 3562{ oid => '2768', descr => 'split string by pattern', 3563 proname => 'regexp_split_to_array', prorettype => '_text', 3564 proargtypes => 'text text text', prosrc => 'regexp_split_to_array' }, 3565{ oid => '2089', descr => 'convert int4 number to hex', 3566 proname => 'to_hex', prorettype => 'text', proargtypes => 'int4', 3567 prosrc => 'to_hex32' }, 3568{ oid => '2090', descr => 'convert int8 number to hex', 3569 proname => 'to_hex', prorettype => 'text', proargtypes => 'int8', 3570 prosrc => 'to_hex64' }, 3571 3572# for character set encoding support 3573 3574# return database encoding name 3575{ oid => '1039', descr => 'encoding name of current database', 3576 proname => 'getdatabaseencoding', provolatile => 's', prorettype => 'name', 3577 proargtypes => '', prosrc => 'getdatabaseencoding' }, 3578 3579# return client encoding name i.e. session encoding 3580{ oid => '810', descr => 'encoding name of current database', 3581 proname => 'pg_client_encoding', provolatile => 's', prorettype => 'name', 3582 proargtypes => '', prosrc => 'pg_client_encoding' }, 3583 3584{ oid => '1713', descr => 'length of string in specified encoding', 3585 proname => 'length', provolatile => 's', prorettype => 'int4', 3586 proargtypes => 'bytea name', prosrc => 'length_in_encoding' }, 3587 3588{ oid => '1714', 3589 descr => 'convert string with specified source encoding name', 3590 proname => 'convert_from', provolatile => 's', prorettype => 'text', 3591 proargtypes => 'bytea name', prosrc => 'pg_convert_from' }, 3592 3593{ oid => '1717', 3594 descr => 'convert string with specified destination encoding name', 3595 proname => 'convert_to', provolatile => 's', prorettype => 'bytea', 3596 proargtypes => 'text name', prosrc => 'pg_convert_to' }, 3597 3598{ oid => '1813', descr => 'convert string with specified encoding names', 3599 proname => 'convert', provolatile => 's', prorettype => 'bytea', 3600 proargtypes => 'bytea name name', prosrc => 'pg_convert' }, 3601 3602{ oid => '1264', descr => 'convert encoding name to encoding id', 3603 proname => 'pg_char_to_encoding', provolatile => 's', prorettype => 'int4', 3604 proargtypes => 'name', prosrc => 'PG_char_to_encoding' }, 3605 3606{ oid => '1597', descr => 'convert encoding id to encoding name', 3607 proname => 'pg_encoding_to_char', provolatile => 's', prorettype => 'name', 3608 proargtypes => 'int4', prosrc => 'PG_encoding_to_char' }, 3609 3610{ oid => '2319', 3611 descr => 'maximum octet length of a character in given encoding', 3612 proname => 'pg_encoding_max_length', prorettype => 'int4', 3613 proargtypes => 'int4', prosrc => 'pg_encoding_max_length_sql' }, 3614 3615{ oid => '1638', 3616 proname => 'oidgt', proleakproof => 't', prorettype => 'bool', 3617 proargtypes => 'oid oid', prosrc => 'oidgt' }, 3618{ oid => '1639', 3619 proname => 'oidge', proleakproof => 't', prorettype => 'bool', 3620 proargtypes => 'oid oid', prosrc => 'oidge' }, 3621 3622# System-view support functions 3623{ oid => '1573', descr => 'source text of a rule', 3624 proname => 'pg_get_ruledef', provolatile => 's', prorettype => 'text', 3625 proargtypes => 'oid', prosrc => 'pg_get_ruledef' }, 3626{ oid => '1640', descr => 'select statement of a view', 3627 proname => 'pg_get_viewdef', provolatile => 's', proparallel => 'r', 3628 prorettype => 'text', proargtypes => 'text', 3629 prosrc => 'pg_get_viewdef_name' }, 3630{ oid => '1641', descr => 'select statement of a view', 3631 proname => 'pg_get_viewdef', provolatile => 's', proparallel => 'r', 3632 prorettype => 'text', proargtypes => 'oid', prosrc => 'pg_get_viewdef' }, 3633{ oid => '1642', descr => 'role name by OID (with fallback)', 3634 proname => 'pg_get_userbyid', provolatile => 's', prorettype => 'name', 3635 proargtypes => 'oid', prosrc => 'pg_get_userbyid' }, 3636{ oid => '1643', descr => 'index description', 3637 proname => 'pg_get_indexdef', provolatile => 's', prorettype => 'text', 3638 proargtypes => 'oid', prosrc => 'pg_get_indexdef' }, 3639{ oid => '3415', descr => 'extended statistics object description', 3640 proname => 'pg_get_statisticsobjdef', provolatile => 's', 3641 prorettype => 'text', proargtypes => 'oid', 3642 prosrc => 'pg_get_statisticsobjdef' }, 3643{ oid => '3352', descr => 'partition key description', 3644 proname => 'pg_get_partkeydef', provolatile => 's', prorettype => 'text', 3645 proargtypes => 'oid', prosrc => 'pg_get_partkeydef' }, 3646{ oid => '3408', descr => 'partition constraint description', 3647 proname => 'pg_get_partition_constraintdef', provolatile => 's', 3648 prorettype => 'text', proargtypes => 'oid', 3649 prosrc => 'pg_get_partition_constraintdef' }, 3650{ oid => '1662', descr => 'trigger description', 3651 proname => 'pg_get_triggerdef', provolatile => 's', prorettype => 'text', 3652 proargtypes => 'oid', prosrc => 'pg_get_triggerdef' }, 3653{ oid => '1387', descr => 'constraint description', 3654 proname => 'pg_get_constraintdef', provolatile => 's', prorettype => 'text', 3655 proargtypes => 'oid', prosrc => 'pg_get_constraintdef' }, 3656{ oid => '1716', descr => 'deparse an encoded expression', 3657 proname => 'pg_get_expr', provolatile => 's', prorettype => 'text', 3658 proargtypes => 'pg_node_tree oid', prosrc => 'pg_get_expr' }, 3659{ oid => '1665', descr => 'name of sequence for a serial column', 3660 proname => 'pg_get_serial_sequence', provolatile => 's', prorettype => 'text', 3661 proargtypes => 'text text', prosrc => 'pg_get_serial_sequence' }, 3662{ oid => '2098', descr => 'definition of a function', 3663 proname => 'pg_get_functiondef', provolatile => 's', prorettype => 'text', 3664 proargtypes => 'oid', prosrc => 'pg_get_functiondef' }, 3665{ oid => '2162', descr => 'argument list of a function', 3666 proname => 'pg_get_function_arguments', provolatile => 's', 3667 prorettype => 'text', proargtypes => 'oid', 3668 prosrc => 'pg_get_function_arguments' }, 3669{ oid => '2232', descr => 'identity argument list of a function', 3670 proname => 'pg_get_function_identity_arguments', provolatile => 's', 3671 prorettype => 'text', proargtypes => 'oid', 3672 prosrc => 'pg_get_function_identity_arguments' }, 3673{ oid => '2165', descr => 'result type of a function', 3674 proname => 'pg_get_function_result', provolatile => 's', prorettype => 'text', 3675 proargtypes => 'oid', prosrc => 'pg_get_function_result' }, 3676{ oid => '3808', descr => 'function argument default', 3677 proname => 'pg_get_function_arg_default', provolatile => 's', 3678 prorettype => 'text', proargtypes => 'oid int4', 3679 prosrc => 'pg_get_function_arg_default' }, 3680 3681{ oid => '1686', descr => 'list of SQL keywords', 3682 proname => 'pg_get_keywords', procost => '10', prorows => '400', 3683 proretset => 't', provolatile => 's', prorettype => 'record', 3684 proargtypes => '', proallargtypes => '{text,char,text}', 3685 proargmodes => '{o,o,o}', proargnames => '{word,catcode,catdesc}', 3686 prosrc => 'pg_get_keywords' }, 3687 3688{ oid => '2289', descr => 'convert generic options array to name/value table', 3689 proname => 'pg_options_to_table', prorows => '3', proretset => 't', 3690 provolatile => 's', prorettype => 'record', proargtypes => '_text', 3691 proallargtypes => '{_text,text,text}', proargmodes => '{i,o,o}', 3692 proargnames => '{options_array,option_name,option_value}', 3693 prosrc => 'pg_options_to_table' }, 3694 3695{ oid => '1619', descr => 'type of the argument', 3696 proname => 'pg_typeof', proisstrict => 'f', provolatile => 's', 3697 prorettype => 'regtype', proargtypes => 'any', prosrc => 'pg_typeof' }, 3698{ oid => '3162', 3699 descr => 'collation of the argument; implementation of the COLLATION FOR expression', 3700 proname => 'pg_collation_for', proisstrict => 'f', provolatile => 's', 3701 prorettype => 'text', proargtypes => 'any', prosrc => 'pg_collation_for' }, 3702 3703{ oid => '3842', descr => 'is a relation insertable/updatable/deletable', 3704 proname => 'pg_relation_is_updatable', procost => '10', provolatile => 's', 3705 prorettype => 'int4', proargtypes => 'regclass bool', 3706 prosrc => 'pg_relation_is_updatable' }, 3707{ oid => '3843', descr => 'is a column updatable', 3708 proname => 'pg_column_is_updatable', procost => '10', provolatile => 's', 3709 prorettype => 'bool', proargtypes => 'regclass int2 bool', 3710 prosrc => 'pg_column_is_updatable' }, 3711 3712{ oid => '6120', descr => 'oid of replica identity index if any', 3713 proname => 'pg_get_replica_identity_index', procost => '10', 3714 provolatile => 's', prorettype => 'regclass', proargtypes => 'regclass', 3715 prosrc => 'pg_get_replica_identity_index' }, 3716 3717# Deferrable unique constraint trigger 3718{ oid => '1250', descr => 'deferred UNIQUE constraint check', 3719 proname => 'unique_key_recheck', provolatile => 'v', prorettype => 'trigger', 3720 proargtypes => '', prosrc => 'unique_key_recheck' }, 3721 3722# Generic referential integrity constraint triggers 3723{ oid => '1644', descr => 'referential integrity FOREIGN KEY ... REFERENCES', 3724 proname => 'RI_FKey_check_ins', provolatile => 'v', prorettype => 'trigger', 3725 proargtypes => '', prosrc => 'RI_FKey_check_ins' }, 3726{ oid => '1645', descr => 'referential integrity FOREIGN KEY ... REFERENCES', 3727 proname => 'RI_FKey_check_upd', provolatile => 'v', prorettype => 'trigger', 3728 proargtypes => '', prosrc => 'RI_FKey_check_upd' }, 3729{ oid => '1646', descr => 'referential integrity ON DELETE CASCADE', 3730 proname => 'RI_FKey_cascade_del', provolatile => 'v', prorettype => 'trigger', 3731 proargtypes => '', prosrc => 'RI_FKey_cascade_del' }, 3732{ oid => '1647', descr => 'referential integrity ON UPDATE CASCADE', 3733 proname => 'RI_FKey_cascade_upd', provolatile => 'v', prorettype => 'trigger', 3734 proargtypes => '', prosrc => 'RI_FKey_cascade_upd' }, 3735{ oid => '1648', descr => 'referential integrity ON DELETE RESTRICT', 3736 proname => 'RI_FKey_restrict_del', provolatile => 'v', 3737 prorettype => 'trigger', proargtypes => '', 3738 prosrc => 'RI_FKey_restrict_del' }, 3739{ oid => '1649', descr => 'referential integrity ON UPDATE RESTRICT', 3740 proname => 'RI_FKey_restrict_upd', provolatile => 'v', 3741 prorettype => 'trigger', proargtypes => '', 3742 prosrc => 'RI_FKey_restrict_upd' }, 3743{ oid => '1650', descr => 'referential integrity ON DELETE SET NULL', 3744 proname => 'RI_FKey_setnull_del', provolatile => 'v', prorettype => 'trigger', 3745 proargtypes => '', prosrc => 'RI_FKey_setnull_del' }, 3746{ oid => '1651', descr => 'referential integrity ON UPDATE SET NULL', 3747 proname => 'RI_FKey_setnull_upd', provolatile => 'v', prorettype => 'trigger', 3748 proargtypes => '', prosrc => 'RI_FKey_setnull_upd' }, 3749{ oid => '1652', descr => 'referential integrity ON DELETE SET DEFAULT', 3750 proname => 'RI_FKey_setdefault_del', provolatile => 'v', 3751 prorettype => 'trigger', proargtypes => '', 3752 prosrc => 'RI_FKey_setdefault_del' }, 3753{ oid => '1653', descr => 'referential integrity ON UPDATE SET DEFAULT', 3754 proname => 'RI_FKey_setdefault_upd', provolatile => 'v', 3755 prorettype => 'trigger', proargtypes => '', 3756 prosrc => 'RI_FKey_setdefault_upd' }, 3757{ oid => '1654', descr => 'referential integrity ON DELETE NO ACTION', 3758 proname => 'RI_FKey_noaction_del', provolatile => 'v', 3759 prorettype => 'trigger', proargtypes => '', 3760 prosrc => 'RI_FKey_noaction_del' }, 3761{ oid => '1655', descr => 'referential integrity ON UPDATE NO ACTION', 3762 proname => 'RI_FKey_noaction_upd', provolatile => 'v', 3763 prorettype => 'trigger', proargtypes => '', 3764 prosrc => 'RI_FKey_noaction_upd' }, 3765 3766{ oid => '1666', 3767 proname => 'varbiteq', proleakproof => 't', prorettype => 'bool', 3768 proargtypes => 'varbit varbit', prosrc => 'biteq' }, 3769{ oid => '1667', 3770 proname => 'varbitne', proleakproof => 't', prorettype => 'bool', 3771 proargtypes => 'varbit varbit', prosrc => 'bitne' }, 3772{ oid => '1668', 3773 proname => 'varbitge', proleakproof => 't', prorettype => 'bool', 3774 proargtypes => 'varbit varbit', prosrc => 'bitge' }, 3775{ oid => '1669', 3776 proname => 'varbitgt', proleakproof => 't', prorettype => 'bool', 3777 proargtypes => 'varbit varbit', prosrc => 'bitgt' }, 3778{ oid => '1670', 3779 proname => 'varbitle', proleakproof => 't', prorettype => 'bool', 3780 proargtypes => 'varbit varbit', prosrc => 'bitle' }, 3781{ oid => '1671', 3782 proname => 'varbitlt', proleakproof => 't', prorettype => 'bool', 3783 proargtypes => 'varbit varbit', prosrc => 'bitlt' }, 3784{ oid => '1672', descr => 'less-equal-greater', 3785 proname => 'varbitcmp', proleakproof => 't', prorettype => 'int4', 3786 proargtypes => 'varbit varbit', prosrc => 'bitcmp' }, 3787 3788# avoid the C names bitand and bitor, since they are C++ keywords 3789{ oid => '1673', 3790 proname => 'bitand', prorettype => 'bit', proargtypes => 'bit bit', 3791 prosrc => 'bit_and' }, 3792{ oid => '1674', 3793 proname => 'bitor', prorettype => 'bit', proargtypes => 'bit bit', 3794 prosrc => 'bit_or' }, 3795{ oid => '1675', 3796 proname => 'bitxor', prorettype => 'bit', proargtypes => 'bit bit', 3797 prosrc => 'bitxor' }, 3798{ oid => '1676', 3799 proname => 'bitnot', prorettype => 'bit', proargtypes => 'bit', 3800 prosrc => 'bitnot' }, 3801{ oid => '1677', 3802 proname => 'bitshiftleft', prorettype => 'bit', proargtypes => 'bit int4', 3803 prosrc => 'bitshiftleft' }, 3804{ oid => '1678', 3805 proname => 'bitshiftright', prorettype => 'bit', proargtypes => 'bit int4', 3806 prosrc => 'bitshiftright' }, 3807{ oid => '1679', 3808 proname => 'bitcat', prorettype => 'varbit', proargtypes => 'varbit varbit', 3809 prosrc => 'bitcat' }, 3810{ oid => '1680', descr => 'extract portion of bitstring', 3811 proname => 'substring', prorettype => 'bit', proargtypes => 'bit int4 int4', 3812 prosrc => 'bitsubstr' }, 3813{ oid => '1681', descr => 'bitstring length', 3814 proname => 'length', prorettype => 'int4', proargtypes => 'bit', 3815 prosrc => 'bitlength' }, 3816{ oid => '1682', descr => 'octet length', 3817 proname => 'octet_length', prorettype => 'int4', proargtypes => 'bit', 3818 prosrc => 'bitoctetlength' }, 3819{ oid => '1683', descr => 'convert int4 to bitstring', 3820 proname => 'bit', prorettype => 'bit', proargtypes => 'int4 int4', 3821 prosrc => 'bitfromint4' }, 3822{ oid => '1684', descr => 'convert bitstring to int4', 3823 proname => 'int4', prorettype => 'int4', proargtypes => 'bit', 3824 prosrc => 'bittoint4' }, 3825 3826{ oid => '1685', descr => 'adjust bit() to typmod length', 3827 proname => 'bit', prorettype => 'bit', proargtypes => 'bit int4 bool', 3828 prosrc => 'bit' }, 3829{ oid => '3158', descr => 'planner support for varbit length coercion', 3830 proname => 'varbit_support', prorettype => 'internal', 3831 proargtypes => 'internal', prosrc => 'varbit_support' }, 3832{ oid => '1687', descr => 'adjust varbit() to typmod length', 3833 proname => 'varbit', prosupport => 'varbit_support', prorettype => 'varbit', 3834 proargtypes => 'varbit int4 bool', prosrc => 'varbit' }, 3835 3836{ oid => '1698', descr => 'position of sub-bitstring', 3837 proname => 'position', prorettype => 'int4', proargtypes => 'bit bit', 3838 prosrc => 'bitposition' }, 3839{ oid => '1699', descr => 'extract portion of bitstring', 3840 proname => 'substring', prorettype => 'bit', proargtypes => 'bit int4', 3841 prosrc => 'bitsubstr_no_len' }, 3842 3843{ oid => '3030', descr => 'substitute portion of bitstring', 3844 proname => 'overlay', prorettype => 'bit', proargtypes => 'bit bit int4 int4', 3845 prosrc => 'bitoverlay' }, 3846{ oid => '3031', descr => 'substitute portion of bitstring', 3847 proname => 'overlay', prorettype => 'bit', proargtypes => 'bit bit int4', 3848 prosrc => 'bitoverlay_no_len' }, 3849{ oid => '3032', descr => 'get bit', 3850 proname => 'get_bit', prorettype => 'int4', proargtypes => 'bit int4', 3851 prosrc => 'bitgetbit' }, 3852{ oid => '3033', descr => 'set bit', 3853 proname => 'set_bit', prorettype => 'bit', proargtypes => 'bit int4 int4', 3854 prosrc => 'bitsetbit' }, 3855 3856# for macaddr type support 3857{ oid => '436', descr => 'I/O', 3858 proname => 'macaddr_in', prorettype => 'macaddr', proargtypes => 'cstring', 3859 prosrc => 'macaddr_in' }, 3860{ oid => '437', descr => 'I/O', 3861 proname => 'macaddr_out', prorettype => 'cstring', proargtypes => 'macaddr', 3862 prosrc => 'macaddr_out' }, 3863 3864{ oid => '753', descr => 'MACADDR manufacturer fields', 3865 proname => 'trunc', prorettype => 'macaddr', proargtypes => 'macaddr', 3866 prosrc => 'macaddr_trunc' }, 3867 3868{ oid => '830', 3869 proname => 'macaddr_eq', proleakproof => 't', prorettype => 'bool', 3870 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_eq' }, 3871{ oid => '831', 3872 proname => 'macaddr_lt', proleakproof => 't', prorettype => 'bool', 3873 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_lt' }, 3874{ oid => '832', 3875 proname => 'macaddr_le', proleakproof => 't', prorettype => 'bool', 3876 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_le' }, 3877{ oid => '833', 3878 proname => 'macaddr_gt', proleakproof => 't', prorettype => 'bool', 3879 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_gt' }, 3880{ oid => '834', 3881 proname => 'macaddr_ge', proleakproof => 't', prorettype => 'bool', 3882 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_ge' }, 3883{ oid => '835', 3884 proname => 'macaddr_ne', proleakproof => 't', prorettype => 'bool', 3885 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_ne' }, 3886{ oid => '836', descr => 'less-equal-greater', 3887 proname => 'macaddr_cmp', proleakproof => 't', prorettype => 'int4', 3888 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_cmp' }, 3889{ oid => '3144', 3890 proname => 'macaddr_not', prorettype => 'macaddr', proargtypes => 'macaddr', 3891 prosrc => 'macaddr_not' }, 3892{ oid => '3145', 3893 proname => 'macaddr_and', prorettype => 'macaddr', 3894 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_and' }, 3895{ oid => '3146', 3896 proname => 'macaddr_or', prorettype => 'macaddr', 3897 proargtypes => 'macaddr macaddr', prosrc => 'macaddr_or' }, 3898{ oid => '3359', descr => 'sort support', 3899 proname => 'macaddr_sortsupport', prorettype => 'void', 3900 proargtypes => 'internal', prosrc => 'macaddr_sortsupport' }, 3901 3902# for macaddr8 type support 3903{ oid => '4110', descr => 'I/O', 3904 proname => 'macaddr8_in', prorettype => 'macaddr8', proargtypes => 'cstring', 3905 prosrc => 'macaddr8_in' }, 3906{ oid => '4111', descr => 'I/O', 3907 proname => 'macaddr8_out', prorettype => 'cstring', proargtypes => 'macaddr8', 3908 prosrc => 'macaddr8_out' }, 3909 3910{ oid => '4112', descr => 'MACADDR8 manufacturer fields', 3911 proname => 'trunc', prorettype => 'macaddr8', proargtypes => 'macaddr8', 3912 prosrc => 'macaddr8_trunc' }, 3913 3914{ oid => '4113', 3915 proname => 'macaddr8_eq', proleakproof => 't', prorettype => 'bool', 3916 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_eq' }, 3917{ oid => '4114', 3918 proname => 'macaddr8_lt', proleakproof => 't', prorettype => 'bool', 3919 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_lt' }, 3920{ oid => '4115', 3921 proname => 'macaddr8_le', proleakproof => 't', prorettype => 'bool', 3922 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_le' }, 3923{ oid => '4116', 3924 proname => 'macaddr8_gt', proleakproof => 't', prorettype => 'bool', 3925 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_gt' }, 3926{ oid => '4117', 3927 proname => 'macaddr8_ge', proleakproof => 't', prorettype => 'bool', 3928 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_ge' }, 3929{ oid => '4118', 3930 proname => 'macaddr8_ne', proleakproof => 't', prorettype => 'bool', 3931 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_ne' }, 3932{ oid => '4119', descr => 'less-equal-greater', 3933 proname => 'macaddr8_cmp', proleakproof => 't', prorettype => 'int4', 3934 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_cmp' }, 3935{ oid => '4120', 3936 proname => 'macaddr8_not', prorettype => 'macaddr8', 3937 proargtypes => 'macaddr8', prosrc => 'macaddr8_not' }, 3938{ oid => '4121', 3939 proname => 'macaddr8_and', prorettype => 'macaddr8', 3940 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_and' }, 3941{ oid => '4122', 3942 proname => 'macaddr8_or', prorettype => 'macaddr8', 3943 proargtypes => 'macaddr8 macaddr8', prosrc => 'macaddr8_or' }, 3944{ oid => '4123', descr => 'convert macaddr to macaddr8', 3945 proname => 'macaddr8', prorettype => 'macaddr8', proargtypes => 'macaddr', 3946 prosrc => 'macaddrtomacaddr8' }, 3947{ oid => '4124', descr => 'convert macaddr8 to macaddr', 3948 proname => 'macaddr', prorettype => 'macaddr', proargtypes => 'macaddr8', 3949 prosrc => 'macaddr8tomacaddr' }, 3950{ oid => '4125', descr => 'set 7th bit in macaddr8', 3951 proname => 'macaddr8_set7bit', prorettype => 'macaddr8', 3952 proargtypes => 'macaddr8', prosrc => 'macaddr8_set7bit' }, 3953 3954# for inet type support 3955{ oid => '910', descr => 'I/O', 3956 proname => 'inet_in', prorettype => 'inet', proargtypes => 'cstring', 3957 prosrc => 'inet_in' }, 3958{ oid => '911', descr => 'I/O', 3959 proname => 'inet_out', prorettype => 'cstring', proargtypes => 'inet', 3960 prosrc => 'inet_out' }, 3961 3962# for cidr type support 3963{ oid => '1267', descr => 'I/O', 3964 proname => 'cidr_in', prorettype => 'cidr', proargtypes => 'cstring', 3965 prosrc => 'cidr_in' }, 3966{ oid => '1427', descr => 'I/O', 3967 proname => 'cidr_out', prorettype => 'cstring', proargtypes => 'cidr', 3968 prosrc => 'cidr_out' }, 3969 3970# these are used for both inet and cidr 3971{ oid => '920', 3972 proname => 'network_eq', proleakproof => 't', prorettype => 'bool', 3973 proargtypes => 'inet inet', prosrc => 'network_eq' }, 3974{ oid => '921', 3975 proname => 'network_lt', proleakproof => 't', prorettype => 'bool', 3976 proargtypes => 'inet inet', prosrc => 'network_lt' }, 3977{ oid => '922', 3978 proname => 'network_le', proleakproof => 't', prorettype => 'bool', 3979 proargtypes => 'inet inet', prosrc => 'network_le' }, 3980{ oid => '923', 3981 proname => 'network_gt', proleakproof => 't', prorettype => 'bool', 3982 proargtypes => 'inet inet', prosrc => 'network_gt' }, 3983{ oid => '924', 3984 proname => 'network_ge', proleakproof => 't', prorettype => 'bool', 3985 proargtypes => 'inet inet', prosrc => 'network_ge' }, 3986{ oid => '925', 3987 proname => 'network_ne', proleakproof => 't', prorettype => 'bool', 3988 proargtypes => 'inet inet', prosrc => 'network_ne' }, 3989{ oid => '3562', descr => 'larger of two', 3990 proname => 'network_larger', prorettype => 'inet', proargtypes => 'inet inet', 3991 prosrc => 'network_larger' }, 3992{ oid => '3563', descr => 'smaller of two', 3993 proname => 'network_smaller', prorettype => 'inet', 3994 proargtypes => 'inet inet', prosrc => 'network_smaller' }, 3995{ oid => '926', descr => 'less-equal-greater', 3996 proname => 'network_cmp', proleakproof => 't', prorettype => 'int4', 3997 proargtypes => 'inet inet', prosrc => 'network_cmp' }, 3998{ oid => '927', 3999 proname => 'network_sub', prosupport => 'network_subset_support', 4000 prorettype => 'bool', proargtypes => 'inet inet', prosrc => 'network_sub' }, 4001{ oid => '928', 4002 proname => 'network_subeq', prosupport => 'network_subset_support', 4003 prorettype => 'bool', proargtypes => 'inet inet', prosrc => 'network_subeq' }, 4004{ oid => '929', 4005 proname => 'network_sup', prosupport => 'network_subset_support', 4006 prorettype => 'bool', proargtypes => 'inet inet', prosrc => 'network_sup' }, 4007{ oid => '930', 4008 proname => 'network_supeq', prosupport => 'network_subset_support', 4009 prorettype => 'bool', proargtypes => 'inet inet', prosrc => 'network_supeq' }, 4010{ oid => '1173', descr => 'planner support for network_sub/superset', 4011 proname => 'network_subset_support', prorettype => 'internal', 4012 proargtypes => 'internal', prosrc => 'network_subset_support' }, 4013 4014{ oid => '3551', 4015 proname => 'network_overlap', prorettype => 'bool', 4016 proargtypes => 'inet inet', prosrc => 'network_overlap' }, 4017{ oid => '5033', descr => 'sort support', 4018 proname => 'network_sortsupport', prorettype => 'void', 4019 proargtypes => 'internal', prosrc => 'network_sortsupport' }, 4020 4021# inet/cidr functions 4022{ oid => '598', descr => 'abbreviated display of inet value', 4023 proname => 'abbrev', prorettype => 'text', proargtypes => 'inet', 4024 prosrc => 'inet_abbrev' }, 4025{ oid => '599', descr => 'abbreviated display of cidr value', 4026 proname => 'abbrev', prorettype => 'text', proargtypes => 'cidr', 4027 prosrc => 'cidr_abbrev' }, 4028{ oid => '605', descr => 'change netmask of inet', 4029 proname => 'set_masklen', prorettype => 'inet', proargtypes => 'inet int4', 4030 prosrc => 'inet_set_masklen' }, 4031{ oid => '635', descr => 'change netmask of cidr', 4032 proname => 'set_masklen', prorettype => 'cidr', proargtypes => 'cidr int4', 4033 prosrc => 'cidr_set_masklen' }, 4034{ oid => '711', descr => 'address family (4 for IPv4, 6 for IPv6)', 4035 proname => 'family', prorettype => 'int4', proargtypes => 'inet', 4036 prosrc => 'network_family' }, 4037{ oid => '683', descr => 'network part of address', 4038 proname => 'network', prorettype => 'cidr', proargtypes => 'inet', 4039 prosrc => 'network_network' }, 4040{ oid => '696', descr => 'netmask of address', 4041 proname => 'netmask', prorettype => 'inet', proargtypes => 'inet', 4042 prosrc => 'network_netmask' }, 4043{ oid => '697', descr => 'netmask length', 4044 proname => 'masklen', prorettype => 'int4', proargtypes => 'inet', 4045 prosrc => 'network_masklen' }, 4046{ oid => '698', descr => 'broadcast address of network', 4047 proname => 'broadcast', prorettype => 'inet', proargtypes => 'inet', 4048 prosrc => 'network_broadcast' }, 4049{ oid => '699', descr => 'show address octets only', 4050 proname => 'host', prorettype => 'text', proargtypes => 'inet', 4051 prosrc => 'network_host' }, 4052{ oid => '730', descr => 'show all parts of inet/cidr value', 4053 proname => 'text', prorettype => 'text', proargtypes => 'inet', 4054 prosrc => 'network_show' }, 4055{ oid => '1362', descr => 'hostmask of address', 4056 proname => 'hostmask', prorettype => 'inet', proargtypes => 'inet', 4057 prosrc => 'network_hostmask' }, 4058{ oid => '1715', descr => 'convert inet to cidr', 4059 proname => 'cidr', prorettype => 'cidr', proargtypes => 'inet', 4060 prosrc => 'inet_to_cidr' }, 4061 4062{ oid => '2196', descr => 'inet address of the client', 4063 proname => 'inet_client_addr', proisstrict => 'f', provolatile => 's', 4064 proparallel => 'r', prorettype => 'inet', proargtypes => '', 4065 prosrc => 'inet_client_addr' }, 4066{ oid => '2197', descr => 'client\'s port number for this connection', 4067 proname => 'inet_client_port', proisstrict => 'f', provolatile => 's', 4068 proparallel => 'r', prorettype => 'int4', proargtypes => '', 4069 prosrc => 'inet_client_port' }, 4070{ oid => '2198', descr => 'inet address of the server', 4071 proname => 'inet_server_addr', proisstrict => 'f', provolatile => 's', 4072 prorettype => 'inet', proargtypes => '', prosrc => 'inet_server_addr' }, 4073{ oid => '2199', descr => 'server\'s port number for this connection', 4074 proname => 'inet_server_port', proisstrict => 'f', provolatile => 's', 4075 prorettype => 'int4', proargtypes => '', prosrc => 'inet_server_port' }, 4076 4077{ oid => '2627', 4078 proname => 'inetnot', prorettype => 'inet', proargtypes => 'inet', 4079 prosrc => 'inetnot' }, 4080{ oid => '2628', 4081 proname => 'inetand', prorettype => 'inet', proargtypes => 'inet inet', 4082 prosrc => 'inetand' }, 4083{ oid => '2629', 4084 proname => 'inetor', prorettype => 'inet', proargtypes => 'inet inet', 4085 prosrc => 'inetor' }, 4086{ oid => '2630', 4087 proname => 'inetpl', prorettype => 'inet', proargtypes => 'inet int8', 4088 prosrc => 'inetpl' }, 4089{ oid => '2631', 4090 proname => 'int8pl_inet', prolang => 'sql', prorettype => 'inet', 4091 proargtypes => 'int8 inet', prosrc => 'select $2 + $1' }, 4092{ oid => '2632', 4093 proname => 'inetmi_int8', prorettype => 'inet', proargtypes => 'inet int8', 4094 prosrc => 'inetmi_int8' }, 4095{ oid => '2633', 4096 proname => 'inetmi', prorettype => 'int8', proargtypes => 'inet inet', 4097 prosrc => 'inetmi' }, 4098{ oid => '4071', descr => 'are the addresses from the same family?', 4099 proname => 'inet_same_family', prorettype => 'bool', 4100 proargtypes => 'inet inet', prosrc => 'inet_same_family' }, 4101{ oid => '4063', 4102 descr => 'the smallest network which includes both of the given networks', 4103 proname => 'inet_merge', prorettype => 'cidr', proargtypes => 'inet inet', 4104 prosrc => 'inet_merge' }, 4105 4106# GiST support for inet and cidr 4107{ oid => '3553', descr => 'GiST support', 4108 proname => 'inet_gist_consistent', prorettype => 'bool', 4109 proargtypes => 'internal inet int2 oid internal', 4110 prosrc => 'inet_gist_consistent' }, 4111{ oid => '3554', descr => 'GiST support', 4112 proname => 'inet_gist_union', prorettype => 'inet', 4113 proargtypes => 'internal internal', prosrc => 'inet_gist_union' }, 4114{ oid => '3555', descr => 'GiST support', 4115 proname => 'inet_gist_compress', prorettype => 'internal', 4116 proargtypes => 'internal', prosrc => 'inet_gist_compress' }, 4117{ oid => '3573', descr => 'GiST support', 4118 proname => 'inet_gist_fetch', prorettype => 'internal', 4119 proargtypes => 'internal', prosrc => 'inet_gist_fetch' }, 4120{ oid => '3557', descr => 'GiST support', 4121 proname => 'inet_gist_penalty', prorettype => 'internal', 4122 proargtypes => 'internal internal internal', prosrc => 'inet_gist_penalty' }, 4123{ oid => '3558', descr => 'GiST support', 4124 proname => 'inet_gist_picksplit', prorettype => 'internal', 4125 proargtypes => 'internal internal', prosrc => 'inet_gist_picksplit' }, 4126{ oid => '3559', descr => 'GiST support', 4127 proname => 'inet_gist_same', prorettype => 'internal', 4128 proargtypes => 'inet inet internal', prosrc => 'inet_gist_same' }, 4129 4130# SP-GiST support for inet and cidr 4131{ oid => '3795', descr => 'SP-GiST support', 4132 proname => 'inet_spg_config', prorettype => 'void', 4133 proargtypes => 'internal internal', prosrc => 'inet_spg_config' }, 4134{ oid => '3796', descr => 'SP-GiST support', 4135 proname => 'inet_spg_choose', prorettype => 'void', 4136 proargtypes => 'internal internal', prosrc => 'inet_spg_choose' }, 4137{ oid => '3797', descr => 'SP-GiST support', 4138 proname => 'inet_spg_picksplit', prorettype => 'void', 4139 proargtypes => 'internal internal', prosrc => 'inet_spg_picksplit' }, 4140{ oid => '3798', descr => 'SP-GiST support', 4141 proname => 'inet_spg_inner_consistent', prorettype => 'void', 4142 proargtypes => 'internal internal', prosrc => 'inet_spg_inner_consistent' }, 4143{ oid => '3799', descr => 'SP-GiST support', 4144 proname => 'inet_spg_leaf_consistent', prorettype => 'bool', 4145 proargtypes => 'internal internal', prosrc => 'inet_spg_leaf_consistent' }, 4146 4147# Selectivity estimation for inet and cidr 4148{ oid => '3560', descr => 'restriction selectivity for network operators', 4149 proname => 'networksel', provolatile => 's', prorettype => 'float8', 4150 proargtypes => 'internal oid internal int4', prosrc => 'networksel' }, 4151{ oid => '3561', descr => 'join selectivity for network operators', 4152 proname => 'networkjoinsel', provolatile => 's', prorettype => 'float8', 4153 proargtypes => 'internal oid internal int2 internal', 4154 prosrc => 'networkjoinsel' }, 4155 4156{ oid => '1690', 4157 proname => 'time_mi_time', prorettype => 'interval', 4158 proargtypes => 'time time', prosrc => 'time_mi_time' }, 4159 4160{ oid => '1691', 4161 proname => 'boolle', proleakproof => 't', prorettype => 'bool', 4162 proargtypes => 'bool bool', prosrc => 'boolle' }, 4163{ oid => '1692', 4164 proname => 'boolge', proleakproof => 't', prorettype => 'bool', 4165 proargtypes => 'bool bool', prosrc => 'boolge' }, 4166{ oid => '1693', descr => 'less-equal-greater', 4167 proname => 'btboolcmp', proleakproof => 't', prorettype => 'int4', 4168 proargtypes => 'bool bool', prosrc => 'btboolcmp' }, 4169 4170{ oid => '1688', descr => 'hash', 4171 proname => 'time_hash', prorettype => 'int4', proargtypes => 'time', 4172 prosrc => 'time_hash' }, 4173{ oid => '3409', descr => 'hash', 4174 proname => 'time_hash_extended', prorettype => 'int8', 4175 proargtypes => 'time int8', prosrc => 'time_hash_extended' }, 4176{ oid => '1696', descr => 'hash', 4177 proname => 'timetz_hash', prorettype => 'int4', proargtypes => 'timetz', 4178 prosrc => 'timetz_hash' }, 4179{ oid => '3410', descr => 'hash', 4180 proname => 'timetz_hash_extended', prorettype => 'int8', 4181 proargtypes => 'timetz int8', prosrc => 'timetz_hash_extended' }, 4182{ oid => '1697', descr => 'hash', 4183 proname => 'interval_hash', prorettype => 'int4', proargtypes => 'interval', 4184 prosrc => 'interval_hash' }, 4185{ oid => '3418', descr => 'hash', 4186 proname => 'interval_hash_extended', prorettype => 'int8', 4187 proargtypes => 'interval int8', prosrc => 'interval_hash_extended' }, 4188 4189# OID's 1700 - 1799 NUMERIC data type 4190 4191{ oid => '1701', descr => 'I/O', 4192 proname => 'numeric_in', prorettype => 'numeric', 4193 proargtypes => 'cstring oid int4', prosrc => 'numeric_in' }, 4194{ oid => '1702', descr => 'I/O', 4195 proname => 'numeric_out', prorettype => 'cstring', proargtypes => 'numeric', 4196 prosrc => 'numeric_out' }, 4197{ oid => '2917', descr => 'I/O typmod', 4198 proname => 'numerictypmodin', prorettype => 'int4', proargtypes => '_cstring', 4199 prosrc => 'numerictypmodin' }, 4200{ oid => '2918', descr => 'I/O typmod', 4201 proname => 'numerictypmodout', prorettype => 'cstring', proargtypes => 'int4', 4202 prosrc => 'numerictypmodout' }, 4203{ oid => '3157', descr => 'planner support for numeric length coercion', 4204 proname => 'numeric_support', prorettype => 'internal', 4205 proargtypes => 'internal', prosrc => 'numeric_support' }, 4206{ oid => '1703', descr => 'adjust numeric to typmod precision/scale', 4207 proname => 'numeric', prosupport => 'numeric_support', 4208 prorettype => 'numeric', proargtypes => 'numeric int4', prosrc => 'numeric' }, 4209{ oid => '1704', 4210 proname => 'numeric_abs', prorettype => 'numeric', proargtypes => 'numeric', 4211 prosrc => 'numeric_abs' }, 4212{ oid => '1705', descr => 'absolute value', 4213 proname => 'abs', prorettype => 'numeric', proargtypes => 'numeric', 4214 prosrc => 'numeric_abs' }, 4215{ oid => '1706', descr => 'sign of value', 4216 proname => 'sign', prorettype => 'numeric', proargtypes => 'numeric', 4217 prosrc => 'numeric_sign' }, 4218{ oid => '1707', descr => 'value rounded to \'scale\'', 4219 proname => 'round', prorettype => 'numeric', proargtypes => 'numeric int4', 4220 prosrc => 'numeric_round' }, 4221{ oid => '1708', descr => 'value rounded to \'scale\' of zero', 4222 proname => 'round', prolang => 'sql', prorettype => 'numeric', 4223 proargtypes => 'numeric', prosrc => 'select pg_catalog.round($1,0)' }, 4224{ oid => '1709', descr => 'value truncated to \'scale\'', 4225 proname => 'trunc', prorettype => 'numeric', proargtypes => 'numeric int4', 4226 prosrc => 'numeric_trunc' }, 4227{ oid => '1710', descr => 'value truncated to \'scale\' of zero', 4228 proname => 'trunc', prolang => 'sql', prorettype => 'numeric', 4229 proargtypes => 'numeric', prosrc => 'select pg_catalog.trunc($1,0)' }, 4230{ oid => '1711', descr => 'nearest integer >= value', 4231 proname => 'ceil', prorettype => 'numeric', proargtypes => 'numeric', 4232 prosrc => 'numeric_ceil' }, 4233{ oid => '2167', descr => 'nearest integer >= value', 4234 proname => 'ceiling', prorettype => 'numeric', proargtypes => 'numeric', 4235 prosrc => 'numeric_ceil' }, 4236{ oid => '1712', descr => 'nearest integer <= value', 4237 proname => 'floor', prorettype => 'numeric', proargtypes => 'numeric', 4238 prosrc => 'numeric_floor' }, 4239{ oid => '1718', 4240 proname => 'numeric_eq', prorettype => 'bool', 4241 proargtypes => 'numeric numeric', prosrc => 'numeric_eq' }, 4242{ oid => '1719', 4243 proname => 'numeric_ne', prorettype => 'bool', 4244 proargtypes => 'numeric numeric', prosrc => 'numeric_ne' }, 4245{ oid => '1720', 4246 proname => 'numeric_gt', prorettype => 'bool', 4247 proargtypes => 'numeric numeric', prosrc => 'numeric_gt' }, 4248{ oid => '1721', 4249 proname => 'numeric_ge', prorettype => 'bool', 4250 proargtypes => 'numeric numeric', prosrc => 'numeric_ge' }, 4251{ oid => '1722', 4252 proname => 'numeric_lt', prorettype => 'bool', 4253 proargtypes => 'numeric numeric', prosrc => 'numeric_lt' }, 4254{ oid => '1723', 4255 proname => 'numeric_le', prorettype => 'bool', 4256 proargtypes => 'numeric numeric', prosrc => 'numeric_le' }, 4257{ oid => '1724', 4258 proname => 'numeric_add', prorettype => 'numeric', 4259 proargtypes => 'numeric numeric', prosrc => 'numeric_add' }, 4260{ oid => '1725', 4261 proname => 'numeric_sub', prorettype => 'numeric', 4262 proargtypes => 'numeric numeric', prosrc => 'numeric_sub' }, 4263{ oid => '1726', 4264 proname => 'numeric_mul', prorettype => 'numeric', 4265 proargtypes => 'numeric numeric', prosrc => 'numeric_mul' }, 4266{ oid => '1727', 4267 proname => 'numeric_div', prorettype => 'numeric', 4268 proargtypes => 'numeric numeric', prosrc => 'numeric_div' }, 4269{ oid => '1728', descr => 'modulus', 4270 proname => 'mod', prorettype => 'numeric', proargtypes => 'numeric numeric', 4271 prosrc => 'numeric_mod' }, 4272{ oid => '1729', 4273 proname => 'numeric_mod', prorettype => 'numeric', 4274 proargtypes => 'numeric numeric', prosrc => 'numeric_mod' }, 4275{ oid => '5048', descr => 'greatest common divisor', 4276 proname => 'gcd', prorettype => 'numeric', proargtypes => 'numeric numeric', 4277 prosrc => 'numeric_gcd' }, 4278{ oid => '5049', descr => 'least common multiple', 4279 proname => 'lcm', prorettype => 'numeric', proargtypes => 'numeric numeric', 4280 prosrc => 'numeric_lcm' }, 4281{ oid => '1730', descr => 'square root', 4282 proname => 'sqrt', prorettype => 'numeric', proargtypes => 'numeric', 4283 prosrc => 'numeric_sqrt' }, 4284{ oid => '1731', descr => 'square root', 4285 proname => 'numeric_sqrt', prorettype => 'numeric', proargtypes => 'numeric', 4286 prosrc => 'numeric_sqrt' }, 4287{ oid => '1732', descr => 'natural exponential (e^x)', 4288 proname => 'exp', prorettype => 'numeric', proargtypes => 'numeric', 4289 prosrc => 'numeric_exp' }, 4290{ oid => '1733', descr => 'natural exponential (e^x)', 4291 proname => 'numeric_exp', prorettype => 'numeric', proargtypes => 'numeric', 4292 prosrc => 'numeric_exp' }, 4293{ oid => '1734', descr => 'natural logarithm', 4294 proname => 'ln', prorettype => 'numeric', proargtypes => 'numeric', 4295 prosrc => 'numeric_ln' }, 4296{ oid => '1735', descr => 'natural logarithm', 4297 proname => 'numeric_ln', prorettype => 'numeric', proargtypes => 'numeric', 4298 prosrc => 'numeric_ln' }, 4299{ oid => '1736', descr => 'logarithm base m of n', 4300 proname => 'log', prorettype => 'numeric', proargtypes => 'numeric numeric', 4301 prosrc => 'numeric_log' }, 4302{ oid => '1737', descr => 'logarithm base m of n', 4303 proname => 'numeric_log', prorettype => 'numeric', 4304 proargtypes => 'numeric numeric', prosrc => 'numeric_log' }, 4305{ oid => '1738', descr => 'exponentiation', 4306 proname => 'pow', prorettype => 'numeric', proargtypes => 'numeric numeric', 4307 prosrc => 'numeric_power' }, 4308{ oid => '2169', descr => 'exponentiation', 4309 proname => 'power', prorettype => 'numeric', proargtypes => 'numeric numeric', 4310 prosrc => 'numeric_power' }, 4311{ oid => '1739', 4312 proname => 'numeric_power', prorettype => 'numeric', 4313 proargtypes => 'numeric numeric', prosrc => 'numeric_power' }, 4314{ oid => '3281', descr => 'number of decimal digits in the fractional part', 4315 proname => 'scale', prorettype => 'int4', proargtypes => 'numeric', 4316 prosrc => 'numeric_scale' }, 4317{ oid => '5042', descr => 'minimum scale needed to represent the value', 4318 proname => 'min_scale', prorettype => 'int4', proargtypes => 'numeric', 4319 prosrc => 'numeric_min_scale' }, 4320{ oid => '5043', 4321 descr => 'numeric with minimum scale needed to represent the value', 4322 proname => 'trim_scale', prorettype => 'numeric', proargtypes => 'numeric', 4323 prosrc => 'numeric_trim_scale' }, 4324{ oid => '1740', descr => 'convert int4 to numeric', 4325 proname => 'numeric', prorettype => 'numeric', proargtypes => 'int4', 4326 prosrc => 'int4_numeric' }, 4327{ oid => '1741', descr => 'base 10 logarithm', 4328 proname => 'log', prolang => 'sql', prorettype => 'numeric', 4329 proargtypes => 'numeric', prosrc => 'select pg_catalog.log(10, $1)' }, 4330{ oid => '1481', descr => 'base 10 logarithm', 4331 proname => 'log10', prolang => 'sql', prorettype => 'numeric', 4332 proargtypes => 'numeric', prosrc => 'select pg_catalog.log(10, $1)' }, 4333{ oid => '1742', descr => 'convert float4 to numeric', 4334 proname => 'numeric', prorettype => 'numeric', proargtypes => 'float4', 4335 prosrc => 'float4_numeric' }, 4336{ oid => '1743', descr => 'convert float8 to numeric', 4337 proname => 'numeric', prorettype => 'numeric', proargtypes => 'float8', 4338 prosrc => 'float8_numeric' }, 4339{ oid => '1744', descr => 'convert numeric to int4', 4340 proname => 'int4', prorettype => 'int4', proargtypes => 'numeric', 4341 prosrc => 'numeric_int4' }, 4342{ oid => '1745', descr => 'convert numeric to float4', 4343 proname => 'float4', prorettype => 'float4', proargtypes => 'numeric', 4344 prosrc => 'numeric_float4' }, 4345{ oid => '1746', descr => 'convert numeric to float8', 4346 proname => 'float8', prorettype => 'float8', proargtypes => 'numeric', 4347 prosrc => 'numeric_float8' }, 4348{ oid => '1973', descr => 'trunc(x/y)', 4349 proname => 'div', prorettype => 'numeric', proargtypes => 'numeric numeric', 4350 prosrc => 'numeric_div_trunc' }, 4351{ oid => '1980', descr => 'trunc(x/y)', 4352 proname => 'numeric_div_trunc', prorettype => 'numeric', 4353 proargtypes => 'numeric numeric', prosrc => 'numeric_div_trunc' }, 4354{ oid => '2170', descr => 'bucket number of operand in equal-width histogram', 4355 proname => 'width_bucket', prorettype => 'int4', 4356 proargtypes => 'numeric numeric numeric int4', 4357 prosrc => 'width_bucket_numeric' }, 4358 4359{ oid => '1747', 4360 proname => 'time_pl_interval', prorettype => 'time', 4361 proargtypes => 'time interval', prosrc => 'time_pl_interval' }, 4362{ oid => '1748', 4363 proname => 'time_mi_interval', prorettype => 'time', 4364 proargtypes => 'time interval', prosrc => 'time_mi_interval' }, 4365{ oid => '1749', 4366 proname => 'timetz_pl_interval', prorettype => 'timetz', 4367 proargtypes => 'timetz interval', prosrc => 'timetz_pl_interval' }, 4368{ oid => '1750', 4369 proname => 'timetz_mi_interval', prorettype => 'timetz', 4370 proargtypes => 'timetz interval', prosrc => 'timetz_mi_interval' }, 4371 4372{ oid => '1764', descr => 'increment by one', 4373 proname => 'numeric_inc', prorettype => 'numeric', proargtypes => 'numeric', 4374 prosrc => 'numeric_inc' }, 4375{ oid => '1766', descr => 'smaller of two', 4376 proname => 'numeric_smaller', prorettype => 'numeric', 4377 proargtypes => 'numeric numeric', prosrc => 'numeric_smaller' }, 4378{ oid => '1767', descr => 'larger of two', 4379 proname => 'numeric_larger', prorettype => 'numeric', 4380 proargtypes => 'numeric numeric', prosrc => 'numeric_larger' }, 4381{ oid => '1769', descr => 'less-equal-greater', 4382 proname => 'numeric_cmp', prorettype => 'int4', 4383 proargtypes => 'numeric numeric', prosrc => 'numeric_cmp' }, 4384{ oid => '3283', descr => 'sort support', 4385 proname => 'numeric_sortsupport', prorettype => 'void', 4386 proargtypes => 'internal', prosrc => 'numeric_sortsupport' }, 4387{ oid => '1771', 4388 proname => 'numeric_uminus', prorettype => 'numeric', 4389 proargtypes => 'numeric', prosrc => 'numeric_uminus' }, 4390{ oid => '1779', descr => 'convert numeric to int8', 4391 proname => 'int8', prorettype => 'int8', proargtypes => 'numeric', 4392 prosrc => 'numeric_int8' }, 4393{ oid => '1781', descr => 'convert int8 to numeric', 4394 proname => 'numeric', prorettype => 'numeric', proargtypes => 'int8', 4395 prosrc => 'int8_numeric' }, 4396{ oid => '1782', descr => 'convert int2 to numeric', 4397 proname => 'numeric', prorettype => 'numeric', proargtypes => 'int2', 4398 prosrc => 'int2_numeric' }, 4399{ oid => '1783', descr => 'convert numeric to int2', 4400 proname => 'int2', prorettype => 'int2', proargtypes => 'numeric', 4401 prosrc => 'numeric_int2' }, 4402 4403{ oid => '3556', descr => 'convert jsonb to boolean', 4404 proname => 'bool', prorettype => 'bool', proargtypes => 'jsonb', 4405 prosrc => 'jsonb_bool' }, 4406{ oid => '3449', descr => 'convert jsonb to numeric', 4407 proname => 'numeric', prorettype => 'numeric', proargtypes => 'jsonb', 4408 prosrc => 'jsonb_numeric' }, 4409{ oid => '3450', descr => 'convert jsonb to int2', 4410 proname => 'int2', prorettype => 'int2', proargtypes => 'jsonb', 4411 prosrc => 'jsonb_int2' }, 4412{ oid => '3451', descr => 'convert jsonb to int4', 4413 proname => 'int4', prorettype => 'int4', proargtypes => 'jsonb', 4414 prosrc => 'jsonb_int4' }, 4415{ oid => '3452', descr => 'convert jsonb to int8', 4416 proname => 'int8', prorettype => 'int8', proargtypes => 'jsonb', 4417 prosrc => 'jsonb_int8' }, 4418{ oid => '3453', descr => 'convert jsonb to float4', 4419 proname => 'float4', prorettype => 'float4', proargtypes => 'jsonb', 4420 prosrc => 'jsonb_float4' }, 4421{ oid => '2580', descr => 'convert jsonb to float8', 4422 proname => 'float8', prorettype => 'float8', proargtypes => 'jsonb', 4423 prosrc => 'jsonb_float8' }, 4424 4425# formatting 4426{ oid => '1770', descr => 'format timestamp with time zone to text', 4427 proname => 'to_char', provolatile => 's', prorettype => 'text', 4428 proargtypes => 'timestamptz text', prosrc => 'timestamptz_to_char' }, 4429{ oid => '1772', descr => 'format numeric to text', 4430 proname => 'to_char', provolatile => 's', prorettype => 'text', 4431 proargtypes => 'numeric text', prosrc => 'numeric_to_char' }, 4432{ oid => '1773', descr => 'format int4 to text', 4433 proname => 'to_char', provolatile => 's', prorettype => 'text', 4434 proargtypes => 'int4 text', prosrc => 'int4_to_char' }, 4435{ oid => '1774', descr => 'format int8 to text', 4436 proname => 'to_char', provolatile => 's', prorettype => 'text', 4437 proargtypes => 'int8 text', prosrc => 'int8_to_char' }, 4438{ oid => '1775', descr => 'format float4 to text', 4439 proname => 'to_char', provolatile => 's', prorettype => 'text', 4440 proargtypes => 'float4 text', prosrc => 'float4_to_char' }, 4441{ oid => '1776', descr => 'format float8 to text', 4442 proname => 'to_char', provolatile => 's', prorettype => 'text', 4443 proargtypes => 'float8 text', prosrc => 'float8_to_char' }, 4444{ oid => '1777', descr => 'convert text to numeric', 4445 proname => 'to_number', provolatile => 's', prorettype => 'numeric', 4446 proargtypes => 'text text', prosrc => 'numeric_to_number' }, 4447{ oid => '1778', descr => 'convert text to timestamp with time zone', 4448 proname => 'to_timestamp', provolatile => 's', prorettype => 'timestamptz', 4449 proargtypes => 'text text', prosrc => 'to_timestamp' }, 4450{ oid => '1780', descr => 'convert text to date', 4451 proname => 'to_date', provolatile => 's', prorettype => 'date', 4452 proargtypes => 'text text', prosrc => 'to_date' }, 4453{ oid => '1768', descr => 'format interval to text', 4454 proname => 'to_char', provolatile => 's', prorettype => 'text', 4455 proargtypes => 'interval text', prosrc => 'interval_to_char' }, 4456 4457{ oid => '1282', descr => 'quote an identifier for usage in a querystring', 4458 proname => 'quote_ident', prorettype => 'text', proargtypes => 'text', 4459 prosrc => 'quote_ident' }, 4460{ oid => '1283', descr => 'quote a literal for usage in a querystring', 4461 proname => 'quote_literal', prorettype => 'text', proargtypes => 'text', 4462 prosrc => 'quote_literal' }, 4463{ oid => '1285', descr => 'quote a data value for usage in a querystring', 4464 proname => 'quote_literal', prolang => 'sql', provolatile => 's', 4465 prorettype => 'text', proargtypes => 'anyelement', 4466 prosrc => 'select pg_catalog.quote_literal($1::pg_catalog.text)' }, 4467{ oid => '1289', 4468 descr => 'quote a possibly-null literal for usage in a querystring', 4469 proname => 'quote_nullable', proisstrict => 'f', prorettype => 'text', 4470 proargtypes => 'text', prosrc => 'quote_nullable' }, 4471{ oid => '1290', 4472 descr => 'quote a possibly-null data value for usage in a querystring', 4473 proname => 'quote_nullable', prolang => 'sql', proisstrict => 'f', 4474 provolatile => 's', prorettype => 'text', proargtypes => 'anyelement', 4475 prosrc => 'select pg_catalog.quote_nullable($1::pg_catalog.text)' }, 4476 4477{ oid => '1798', descr => 'I/O', 4478 proname => 'oidin', prorettype => 'oid', proargtypes => 'cstring', 4479 prosrc => 'oidin' }, 4480{ oid => '1799', descr => 'I/O', 4481 proname => 'oidout', prorettype => 'cstring', proargtypes => 'oid', 4482 prosrc => 'oidout' }, 4483 4484{ oid => '3058', descr => 'concatenate values', 4485 proname => 'concat', provariadic => 'any', proisstrict => 'f', 4486 provolatile => 's', prorettype => 'text', proargtypes => 'any', 4487 proallargtypes => '{any}', proargmodes => '{v}', prosrc => 'text_concat' }, 4488{ oid => '3059', descr => 'concatenate values with separators', 4489 proname => 'concat_ws', provariadic => 'any', proisstrict => 'f', 4490 provolatile => 's', prorettype => 'text', proargtypes => 'text any', 4491 proallargtypes => '{text,any}', proargmodes => '{i,v}', 4492 prosrc => 'text_concat_ws' }, 4493{ oid => '3060', descr => 'extract the first n characters', 4494 proname => 'left', prorettype => 'text', proargtypes => 'text int4', 4495 prosrc => 'text_left' }, 4496{ oid => '3061', descr => 'extract the last n characters', 4497 proname => 'right', prorettype => 'text', proargtypes => 'text int4', 4498 prosrc => 'text_right' }, 4499{ oid => '3062', descr => 'reverse text', 4500 proname => 'reverse', prorettype => 'text', proargtypes => 'text', 4501 prosrc => 'text_reverse' }, 4502{ oid => '3539', descr => 'format text message', 4503 proname => 'format', provariadic => 'any', proisstrict => 'f', 4504 provolatile => 's', prorettype => 'text', proargtypes => 'text any', 4505 proallargtypes => '{text,any}', proargmodes => '{i,v}', 4506 prosrc => 'text_format' }, 4507{ oid => '3540', descr => 'format text message', 4508 proname => 'format', proisstrict => 'f', provolatile => 's', 4509 prorettype => 'text', proargtypes => 'text', prosrc => 'text_format_nv' }, 4510 4511{ oid => '1810', descr => 'length in bits', 4512 proname => 'bit_length', prolang => 'sql', prorettype => 'int4', 4513 proargtypes => 'bytea', prosrc => 'select pg_catalog.octet_length($1) * 8' }, 4514{ oid => '1811', descr => 'length in bits', 4515 proname => 'bit_length', prolang => 'sql', prorettype => 'int4', 4516 proargtypes => 'text', prosrc => 'select pg_catalog.octet_length($1) * 8' }, 4517{ oid => '1812', descr => 'length in bits', 4518 proname => 'bit_length', prolang => 'sql', prorettype => 'int4', 4519 proargtypes => 'bit', prosrc => 'select pg_catalog.length($1)' }, 4520 4521# Selectivity estimators for LIKE and related operators 4522{ oid => '1814', descr => 'restriction selectivity of ILIKE', 4523 proname => 'iclikesel', provolatile => 's', prorettype => 'float8', 4524 proargtypes => 'internal oid internal int4', prosrc => 'iclikesel' }, 4525{ oid => '1815', descr => 'restriction selectivity of NOT ILIKE', 4526 proname => 'icnlikesel', provolatile => 's', prorettype => 'float8', 4527 proargtypes => 'internal oid internal int4', prosrc => 'icnlikesel' }, 4528{ oid => '1816', descr => 'join selectivity of ILIKE', 4529 proname => 'iclikejoinsel', provolatile => 's', prorettype => 'float8', 4530 proargtypes => 'internal oid internal int2 internal', 4531 prosrc => 'iclikejoinsel' }, 4532{ oid => '1817', descr => 'join selectivity of NOT ILIKE', 4533 proname => 'icnlikejoinsel', provolatile => 's', prorettype => 'float8', 4534 proargtypes => 'internal oid internal int2 internal', 4535 prosrc => 'icnlikejoinsel' }, 4536{ oid => '1818', descr => 'restriction selectivity of regex match', 4537 proname => 'regexeqsel', provolatile => 's', prorettype => 'float8', 4538 proargtypes => 'internal oid internal int4', prosrc => 'regexeqsel' }, 4539{ oid => '1819', descr => 'restriction selectivity of LIKE', 4540 proname => 'likesel', provolatile => 's', prorettype => 'float8', 4541 proargtypes => 'internal oid internal int4', prosrc => 'likesel' }, 4542{ oid => '1820', 4543 descr => 'restriction selectivity of case-insensitive regex match', 4544 proname => 'icregexeqsel', provolatile => 's', prorettype => 'float8', 4545 proargtypes => 'internal oid internal int4', prosrc => 'icregexeqsel' }, 4546{ oid => '1821', descr => 'restriction selectivity of regex non-match', 4547 proname => 'regexnesel', provolatile => 's', prorettype => 'float8', 4548 proargtypes => 'internal oid internal int4', prosrc => 'regexnesel' }, 4549{ oid => '1822', descr => 'restriction selectivity of NOT LIKE', 4550 proname => 'nlikesel', provolatile => 's', prorettype => 'float8', 4551 proargtypes => 'internal oid internal int4', prosrc => 'nlikesel' }, 4552{ oid => '1823', 4553 descr => 'restriction selectivity of case-insensitive regex non-match', 4554 proname => 'icregexnesel', provolatile => 's', prorettype => 'float8', 4555 proargtypes => 'internal oid internal int4', prosrc => 'icregexnesel' }, 4556{ oid => '1824', descr => 'join selectivity of regex match', 4557 proname => 'regexeqjoinsel', provolatile => 's', prorettype => 'float8', 4558 proargtypes => 'internal oid internal int2 internal', 4559 prosrc => 'regexeqjoinsel' }, 4560{ oid => '1825', descr => 'join selectivity of LIKE', 4561 proname => 'likejoinsel', provolatile => 's', prorettype => 'float8', 4562 proargtypes => 'internal oid internal int2 internal', 4563 prosrc => 'likejoinsel' }, 4564{ oid => '1826', descr => 'join selectivity of case-insensitive regex match', 4565 proname => 'icregexeqjoinsel', provolatile => 's', prorettype => 'float8', 4566 proargtypes => 'internal oid internal int2 internal', 4567 prosrc => 'icregexeqjoinsel' }, 4568{ oid => '1827', descr => 'join selectivity of regex non-match', 4569 proname => 'regexnejoinsel', provolatile => 's', prorettype => 'float8', 4570 proargtypes => 'internal oid internal int2 internal', 4571 prosrc => 'regexnejoinsel' }, 4572{ oid => '1828', descr => 'join selectivity of NOT LIKE', 4573 proname => 'nlikejoinsel', provolatile => 's', prorettype => 'float8', 4574 proargtypes => 'internal oid internal int2 internal', 4575 prosrc => 'nlikejoinsel' }, 4576{ oid => '1829', 4577 descr => 'join selectivity of case-insensitive regex non-match', 4578 proname => 'icregexnejoinsel', provolatile => 's', prorettype => 'float8', 4579 proargtypes => 'internal oid internal int2 internal', 4580 prosrc => 'icregexnejoinsel' }, 4581{ oid => '3437', descr => 'restriction selectivity of exact prefix', 4582 proname => 'prefixsel', provolatile => 's', prorettype => 'float8', 4583 proargtypes => 'internal oid internal int4', prosrc => 'prefixsel' }, 4584{ oid => '3438', descr => 'join selectivity of exact prefix', 4585 proname => 'prefixjoinsel', provolatile => 's', prorettype => 'float8', 4586 proargtypes => 'internal oid internal int2 internal', 4587 prosrc => 'prefixjoinsel' }, 4588 4589# Aggregate-related functions 4590{ oid => '1830', descr => 'aggregate final function', 4591 proname => 'float8_avg', prorettype => 'float8', proargtypes => '_float8', 4592 prosrc => 'float8_avg' }, 4593{ oid => '2512', descr => 'aggregate final function', 4594 proname => 'float8_var_pop', prorettype => 'float8', proargtypes => '_float8', 4595 prosrc => 'float8_var_pop' }, 4596{ oid => '1831', descr => 'aggregate final function', 4597 proname => 'float8_var_samp', prorettype => 'float8', 4598 proargtypes => '_float8', prosrc => 'float8_var_samp' }, 4599{ oid => '2513', descr => 'aggregate final function', 4600 proname => 'float8_stddev_pop', prorettype => 'float8', 4601 proargtypes => '_float8', prosrc => 'float8_stddev_pop' }, 4602{ oid => '1832', descr => 'aggregate final function', 4603 proname => 'float8_stddev_samp', prorettype => 'float8', 4604 proargtypes => '_float8', prosrc => 'float8_stddev_samp' }, 4605{ oid => '1833', descr => 'aggregate transition function', 4606 proname => 'numeric_accum', proisstrict => 'f', prorettype => 'internal', 4607 proargtypes => 'internal numeric', prosrc => 'numeric_accum' }, 4608{ oid => '3341', descr => 'aggregate combine function', 4609 proname => 'numeric_combine', proisstrict => 'f', prorettype => 'internal', 4610 proargtypes => 'internal internal', prosrc => 'numeric_combine' }, 4611{ oid => '2858', descr => 'aggregate transition function', 4612 proname => 'numeric_avg_accum', proisstrict => 'f', prorettype => 'internal', 4613 proargtypes => 'internal numeric', prosrc => 'numeric_avg_accum' }, 4614{ oid => '3337', descr => 'aggregate combine function', 4615 proname => 'numeric_avg_combine', proisstrict => 'f', 4616 prorettype => 'internal', proargtypes => 'internal internal', 4617 prosrc => 'numeric_avg_combine' }, 4618{ oid => '2740', descr => 'aggregate serial function', 4619 proname => 'numeric_avg_serialize', prorettype => 'bytea', 4620 proargtypes => 'internal', prosrc => 'numeric_avg_serialize' }, 4621{ oid => '2741', descr => 'aggregate deserial function', 4622 proname => 'numeric_avg_deserialize', prorettype => 'internal', 4623 proargtypes => 'bytea internal', prosrc => 'numeric_avg_deserialize' }, 4624{ oid => '3335', descr => 'aggregate serial function', 4625 proname => 'numeric_serialize', prorettype => 'bytea', 4626 proargtypes => 'internal', prosrc => 'numeric_serialize' }, 4627{ oid => '3336', descr => 'aggregate deserial function', 4628 proname => 'numeric_deserialize', prorettype => 'internal', 4629 proargtypes => 'bytea internal', prosrc => 'numeric_deserialize' }, 4630{ oid => '3548', descr => 'aggregate transition function', 4631 proname => 'numeric_accum_inv', proisstrict => 'f', prorettype => 'internal', 4632 proargtypes => 'internal numeric', prosrc => 'numeric_accum_inv' }, 4633{ oid => '1834', descr => 'aggregate transition function', 4634 proname => 'int2_accum', proisstrict => 'f', prorettype => 'internal', 4635 proargtypes => 'internal int2', prosrc => 'int2_accum' }, 4636{ oid => '1835', descr => 'aggregate transition function', 4637 proname => 'int4_accum', proisstrict => 'f', prorettype => 'internal', 4638 proargtypes => 'internal int4', prosrc => 'int4_accum' }, 4639{ oid => '1836', descr => 'aggregate transition function', 4640 proname => 'int8_accum', proisstrict => 'f', prorettype => 'internal', 4641 proargtypes => 'internal int8', prosrc => 'int8_accum' }, 4642{ oid => '3338', descr => 'aggregate combine function', 4643 proname => 'numeric_poly_combine', proisstrict => 'f', 4644 prorettype => 'internal', proargtypes => 'internal internal', 4645 prosrc => 'numeric_poly_combine' }, 4646{ oid => '3339', descr => 'aggregate serial function', 4647 proname => 'numeric_poly_serialize', prorettype => 'bytea', 4648 proargtypes => 'internal', prosrc => 'numeric_poly_serialize' }, 4649{ oid => '3340', descr => 'aggregate deserial function', 4650 proname => 'numeric_poly_deserialize', prorettype => 'internal', 4651 proargtypes => 'bytea internal', prosrc => 'numeric_poly_deserialize' }, 4652{ oid => '2746', descr => 'aggregate transition function', 4653 proname => 'int8_avg_accum', proisstrict => 'f', prorettype => 'internal', 4654 proargtypes => 'internal int8', prosrc => 'int8_avg_accum' }, 4655{ oid => '3567', descr => 'aggregate transition function', 4656 proname => 'int2_accum_inv', proisstrict => 'f', prorettype => 'internal', 4657 proargtypes => 'internal int2', prosrc => 'int2_accum_inv' }, 4658{ oid => '3568', descr => 'aggregate transition function', 4659 proname => 'int4_accum_inv', proisstrict => 'f', prorettype => 'internal', 4660 proargtypes => 'internal int4', prosrc => 'int4_accum_inv' }, 4661{ oid => '3569', descr => 'aggregate transition function', 4662 proname => 'int8_accum_inv', proisstrict => 'f', prorettype => 'internal', 4663 proargtypes => 'internal int8', prosrc => 'int8_accum_inv' }, 4664{ oid => '3387', descr => 'aggregate transition function', 4665 proname => 'int8_avg_accum_inv', proisstrict => 'f', prorettype => 'internal', 4666 proargtypes => 'internal int8', prosrc => 'int8_avg_accum_inv' }, 4667{ oid => '2785', descr => 'aggregate combine function', 4668 proname => 'int8_avg_combine', proisstrict => 'f', prorettype => 'internal', 4669 proargtypes => 'internal internal', prosrc => 'int8_avg_combine' }, 4670{ oid => '2786', descr => 'aggregate serial function', 4671 proname => 'int8_avg_serialize', prorettype => 'bytea', 4672 proargtypes => 'internal', prosrc => 'int8_avg_serialize' }, 4673{ oid => '2787', descr => 'aggregate deserial function', 4674 proname => 'int8_avg_deserialize', prorettype => 'internal', 4675 proargtypes => 'bytea internal', prosrc => 'int8_avg_deserialize' }, 4676{ oid => '3324', descr => 'aggregate combine function', 4677 proname => 'int4_avg_combine', prorettype => '_int8', 4678 proargtypes => '_int8 _int8', prosrc => 'int4_avg_combine' }, 4679{ oid => '3178', descr => 'aggregate final function', 4680 proname => 'numeric_sum', proisstrict => 'f', prorettype => 'numeric', 4681 proargtypes => 'internal', prosrc => 'numeric_sum' }, 4682{ oid => '1837', descr => 'aggregate final function', 4683 proname => 'numeric_avg', proisstrict => 'f', prorettype => 'numeric', 4684 proargtypes => 'internal', prosrc => 'numeric_avg' }, 4685{ oid => '2514', descr => 'aggregate final function', 4686 proname => 'numeric_var_pop', proisstrict => 'f', prorettype => 'numeric', 4687 proargtypes => 'internal', prosrc => 'numeric_var_pop' }, 4688{ oid => '1838', descr => 'aggregate final function', 4689 proname => 'numeric_var_samp', proisstrict => 'f', prorettype => 'numeric', 4690 proargtypes => 'internal', prosrc => 'numeric_var_samp' }, 4691{ oid => '2596', descr => 'aggregate final function', 4692 proname => 'numeric_stddev_pop', proisstrict => 'f', prorettype => 'numeric', 4693 proargtypes => 'internal', prosrc => 'numeric_stddev_pop' }, 4694{ oid => '1839', descr => 'aggregate final function', 4695 proname => 'numeric_stddev_samp', proisstrict => 'f', prorettype => 'numeric', 4696 proargtypes => 'internal', prosrc => 'numeric_stddev_samp' }, 4697{ oid => '1840', descr => 'aggregate transition function', 4698 proname => 'int2_sum', proisstrict => 'f', prorettype => 'int8', 4699 proargtypes => 'int8 int2', prosrc => 'int2_sum' }, 4700{ oid => '1841', descr => 'aggregate transition function', 4701 proname => 'int4_sum', proisstrict => 'f', prorettype => 'int8', 4702 proargtypes => 'int8 int4', prosrc => 'int4_sum' }, 4703{ oid => '1842', descr => 'aggregate transition function', 4704 proname => 'int8_sum', proisstrict => 'f', prorettype => 'numeric', 4705 proargtypes => 'numeric int8', prosrc => 'int8_sum' }, 4706{ oid => '3388', descr => 'aggregate final function', 4707 proname => 'numeric_poly_sum', proisstrict => 'f', prorettype => 'numeric', 4708 proargtypes => 'internal', prosrc => 'numeric_poly_sum' }, 4709{ oid => '3389', descr => 'aggregate final function', 4710 proname => 'numeric_poly_avg', proisstrict => 'f', prorettype => 'numeric', 4711 proargtypes => 'internal', prosrc => 'numeric_poly_avg' }, 4712{ oid => '3390', descr => 'aggregate final function', 4713 proname => 'numeric_poly_var_pop', proisstrict => 'f', 4714 prorettype => 'numeric', proargtypes => 'internal', 4715 prosrc => 'numeric_poly_var_pop' }, 4716{ oid => '3391', descr => 'aggregate final function', 4717 proname => 'numeric_poly_var_samp', proisstrict => 'f', 4718 prorettype => 'numeric', proargtypes => 'internal', 4719 prosrc => 'numeric_poly_var_samp' }, 4720{ oid => '3392', descr => 'aggregate final function', 4721 proname => 'numeric_poly_stddev_pop', proisstrict => 'f', 4722 prorettype => 'numeric', proargtypes => 'internal', 4723 prosrc => 'numeric_poly_stddev_pop' }, 4724{ oid => '3393', descr => 'aggregate final function', 4725 proname => 'numeric_poly_stddev_samp', proisstrict => 'f', 4726 prorettype => 'numeric', proargtypes => 'internal', 4727 prosrc => 'numeric_poly_stddev_samp' }, 4728 4729{ oid => '1843', descr => 'aggregate transition function', 4730 proname => 'interval_accum', prorettype => '_interval', 4731 proargtypes => '_interval interval', prosrc => 'interval_accum' }, 4732{ oid => '3325', descr => 'aggregate combine function', 4733 proname => 'interval_combine', prorettype => '_interval', 4734 proargtypes => '_interval _interval', prosrc => 'interval_combine' }, 4735{ oid => '3549', descr => 'aggregate transition function', 4736 proname => 'interval_accum_inv', prorettype => '_interval', 4737 proargtypes => '_interval interval', prosrc => 'interval_accum_inv' }, 4738{ oid => '1844', descr => 'aggregate final function', 4739 proname => 'interval_avg', prorettype => 'interval', 4740 proargtypes => '_interval', prosrc => 'interval_avg' }, 4741{ oid => '1962', descr => 'aggregate transition function', 4742 proname => 'int2_avg_accum', prorettype => '_int8', 4743 proargtypes => '_int8 int2', prosrc => 'int2_avg_accum' }, 4744{ oid => '1963', descr => 'aggregate transition function', 4745 proname => 'int4_avg_accum', prorettype => '_int8', 4746 proargtypes => '_int8 int4', prosrc => 'int4_avg_accum' }, 4747{ oid => '3570', descr => 'aggregate transition function', 4748 proname => 'int2_avg_accum_inv', prorettype => '_int8', 4749 proargtypes => '_int8 int2', prosrc => 'int2_avg_accum_inv' }, 4750{ oid => '3571', descr => 'aggregate transition function', 4751 proname => 'int4_avg_accum_inv', prorettype => '_int8', 4752 proargtypes => '_int8 int4', prosrc => 'int4_avg_accum_inv' }, 4753{ oid => '1964', descr => 'aggregate final function', 4754 proname => 'int8_avg', prorettype => 'numeric', proargtypes => '_int8', 4755 prosrc => 'int8_avg' }, 4756{ oid => '3572', descr => 'aggregate final function', 4757 proname => 'int2int4_sum', prorettype => 'int8', proargtypes => '_int8', 4758 prosrc => 'int2int4_sum' }, 4759{ oid => '2805', descr => 'aggregate transition function', 4760 proname => 'int8inc_float8_float8', prorettype => 'int8', 4761 proargtypes => 'int8 float8 float8', prosrc => 'int8inc_float8_float8' }, 4762{ oid => '2806', descr => 'aggregate transition function', 4763 proname => 'float8_regr_accum', prorettype => '_float8', 4764 proargtypes => '_float8 float8 float8', prosrc => 'float8_regr_accum' }, 4765{ oid => '3342', descr => 'aggregate combine function', 4766 proname => 'float8_regr_combine', prorettype => '_float8', 4767 proargtypes => '_float8 _float8', prosrc => 'float8_regr_combine' }, 4768{ oid => '2807', descr => 'aggregate final function', 4769 proname => 'float8_regr_sxx', prorettype => 'float8', 4770 proargtypes => '_float8', prosrc => 'float8_regr_sxx' }, 4771{ oid => '2808', descr => 'aggregate final function', 4772 proname => 'float8_regr_syy', prorettype => 'float8', 4773 proargtypes => '_float8', prosrc => 'float8_regr_syy' }, 4774{ oid => '2809', descr => 'aggregate final function', 4775 proname => 'float8_regr_sxy', prorettype => 'float8', 4776 proargtypes => '_float8', prosrc => 'float8_regr_sxy' }, 4777{ oid => '2810', descr => 'aggregate final function', 4778 proname => 'float8_regr_avgx', prorettype => 'float8', 4779 proargtypes => '_float8', prosrc => 'float8_regr_avgx' }, 4780{ oid => '2811', descr => 'aggregate final function', 4781 proname => 'float8_regr_avgy', prorettype => 'float8', 4782 proargtypes => '_float8', prosrc => 'float8_regr_avgy' }, 4783{ oid => '2812', descr => 'aggregate final function', 4784 proname => 'float8_regr_r2', prorettype => 'float8', proargtypes => '_float8', 4785 prosrc => 'float8_regr_r2' }, 4786{ oid => '2813', descr => 'aggregate final function', 4787 proname => 'float8_regr_slope', prorettype => 'float8', 4788 proargtypes => '_float8', prosrc => 'float8_regr_slope' }, 4789{ oid => '2814', descr => 'aggregate final function', 4790 proname => 'float8_regr_intercept', prorettype => 'float8', 4791 proargtypes => '_float8', prosrc => 'float8_regr_intercept' }, 4792{ oid => '2815', descr => 'aggregate final function', 4793 proname => 'float8_covar_pop', prorettype => 'float8', 4794 proargtypes => '_float8', prosrc => 'float8_covar_pop' }, 4795{ oid => '2816', descr => 'aggregate final function', 4796 proname => 'float8_covar_samp', prorettype => 'float8', 4797 proargtypes => '_float8', prosrc => 'float8_covar_samp' }, 4798{ oid => '2817', descr => 'aggregate final function', 4799 proname => 'float8_corr', prorettype => 'float8', proargtypes => '_float8', 4800 prosrc => 'float8_corr' }, 4801 4802{ oid => '3535', descr => 'aggregate transition function', 4803 proname => 'string_agg_transfn', proisstrict => 'f', prorettype => 'internal', 4804 proargtypes => 'internal text text', prosrc => 'string_agg_transfn' }, 4805{ oid => '3536', descr => 'aggregate final function', 4806 proname => 'string_agg_finalfn', proisstrict => 'f', prorettype => 'text', 4807 proargtypes => 'internal', prosrc => 'string_agg_finalfn' }, 4808{ oid => '3538', descr => 'concatenate aggregate input into a string', 4809 proname => 'string_agg', prokind => 'a', proisstrict => 'f', 4810 prorettype => 'text', proargtypes => 'text text', 4811 prosrc => 'aggregate_dummy' }, 4812{ oid => '3543', descr => 'aggregate transition function', 4813 proname => 'bytea_string_agg_transfn', proisstrict => 'f', 4814 prorettype => 'internal', proargtypes => 'internal bytea bytea', 4815 prosrc => 'bytea_string_agg_transfn' }, 4816{ oid => '3544', descr => 'aggregate final function', 4817 proname => 'bytea_string_agg_finalfn', proisstrict => 'f', 4818 prorettype => 'bytea', proargtypes => 'internal', 4819 prosrc => 'bytea_string_agg_finalfn' }, 4820{ oid => '3545', descr => 'concatenate aggregate input into a bytea', 4821 proname => 'string_agg', prokind => 'a', proisstrict => 'f', 4822 prorettype => 'bytea', proargtypes => 'bytea bytea', 4823 prosrc => 'aggregate_dummy' }, 4824 4825# To ASCII conversion 4826{ oid => '1845', descr => 'encode text from DB encoding to ASCII text', 4827 proname => 'to_ascii', prorettype => 'text', proargtypes => 'text', 4828 prosrc => 'to_ascii_default' }, 4829{ oid => '1846', descr => 'encode text from encoding to ASCII text', 4830 proname => 'to_ascii', prorettype => 'text', proargtypes => 'text int4', 4831 prosrc => 'to_ascii_enc' }, 4832{ oid => '1847', descr => 'encode text from encoding to ASCII text', 4833 proname => 'to_ascii', prorettype => 'text', proargtypes => 'text name', 4834 prosrc => 'to_ascii_encname' }, 4835 4836{ oid => '1848', 4837 proname => 'interval_pl_time', prolang => 'sql', prorettype => 'time', 4838 proargtypes => 'interval time', prosrc => 'select $2 + $1' }, 4839 4840{ oid => '1850', 4841 proname => 'int28eq', proleakproof => 't', prorettype => 'bool', 4842 proargtypes => 'int2 int8', prosrc => 'int28eq' }, 4843{ oid => '1851', 4844 proname => 'int28ne', proleakproof => 't', prorettype => 'bool', 4845 proargtypes => 'int2 int8', prosrc => 'int28ne' }, 4846{ oid => '1852', 4847 proname => 'int28lt', proleakproof => 't', prorettype => 'bool', 4848 proargtypes => 'int2 int8', prosrc => 'int28lt' }, 4849{ oid => '1853', 4850 proname => 'int28gt', proleakproof => 't', prorettype => 'bool', 4851 proargtypes => 'int2 int8', prosrc => 'int28gt' }, 4852{ oid => '1854', 4853 proname => 'int28le', proleakproof => 't', prorettype => 'bool', 4854 proargtypes => 'int2 int8', prosrc => 'int28le' }, 4855{ oid => '1855', 4856 proname => 'int28ge', proleakproof => 't', prorettype => 'bool', 4857 proargtypes => 'int2 int8', prosrc => 'int28ge' }, 4858 4859{ oid => '1856', 4860 proname => 'int82eq', proleakproof => 't', prorettype => 'bool', 4861 proargtypes => 'int8 int2', prosrc => 'int82eq' }, 4862{ oid => '1857', 4863 proname => 'int82ne', proleakproof => 't', prorettype => 'bool', 4864 proargtypes => 'int8 int2', prosrc => 'int82ne' }, 4865{ oid => '1858', 4866 proname => 'int82lt', proleakproof => 't', prorettype => 'bool', 4867 proargtypes => 'int8 int2', prosrc => 'int82lt' }, 4868{ oid => '1859', 4869 proname => 'int82gt', proleakproof => 't', prorettype => 'bool', 4870 proargtypes => 'int8 int2', prosrc => 'int82gt' }, 4871{ oid => '1860', 4872 proname => 'int82le', proleakproof => 't', prorettype => 'bool', 4873 proargtypes => 'int8 int2', prosrc => 'int82le' }, 4874{ oid => '1861', 4875 proname => 'int82ge', proleakproof => 't', prorettype => 'bool', 4876 proargtypes => 'int8 int2', prosrc => 'int82ge' }, 4877 4878{ oid => '1892', 4879 proname => 'int2and', prorettype => 'int2', proargtypes => 'int2 int2', 4880 prosrc => 'int2and' }, 4881{ oid => '1893', 4882 proname => 'int2or', prorettype => 'int2', proargtypes => 'int2 int2', 4883 prosrc => 'int2or' }, 4884{ oid => '1894', 4885 proname => 'int2xor', prorettype => 'int2', proargtypes => 'int2 int2', 4886 prosrc => 'int2xor' }, 4887{ oid => '1895', 4888 proname => 'int2not', prorettype => 'int2', proargtypes => 'int2', 4889 prosrc => 'int2not' }, 4890{ oid => '1896', 4891 proname => 'int2shl', prorettype => 'int2', proargtypes => 'int2 int4', 4892 prosrc => 'int2shl' }, 4893{ oid => '1897', 4894 proname => 'int2shr', prorettype => 'int2', proargtypes => 'int2 int4', 4895 prosrc => 'int2shr' }, 4896 4897{ oid => '1898', 4898 proname => 'int4and', prorettype => 'int4', proargtypes => 'int4 int4', 4899 prosrc => 'int4and' }, 4900{ oid => '1899', 4901 proname => 'int4or', prorettype => 'int4', proargtypes => 'int4 int4', 4902 prosrc => 'int4or' }, 4903{ oid => '1900', 4904 proname => 'int4xor', prorettype => 'int4', proargtypes => 'int4 int4', 4905 prosrc => 'int4xor' }, 4906{ oid => '1901', 4907 proname => 'int4not', prorettype => 'int4', proargtypes => 'int4', 4908 prosrc => 'int4not' }, 4909{ oid => '1902', 4910 proname => 'int4shl', prorettype => 'int4', proargtypes => 'int4 int4', 4911 prosrc => 'int4shl' }, 4912{ oid => '1903', 4913 proname => 'int4shr', prorettype => 'int4', proargtypes => 'int4 int4', 4914 prosrc => 'int4shr' }, 4915 4916{ oid => '1904', 4917 proname => 'int8and', prorettype => 'int8', proargtypes => 'int8 int8', 4918 prosrc => 'int8and' }, 4919{ oid => '1905', 4920 proname => 'int8or', prorettype => 'int8', proargtypes => 'int8 int8', 4921 prosrc => 'int8or' }, 4922{ oid => '1906', 4923 proname => 'int8xor', prorettype => 'int8', proargtypes => 'int8 int8', 4924 prosrc => 'int8xor' }, 4925{ oid => '1907', 4926 proname => 'int8not', prorettype => 'int8', proargtypes => 'int8', 4927 prosrc => 'int8not' }, 4928{ oid => '1908', 4929 proname => 'int8shl', prorettype => 'int8', proargtypes => 'int8 int4', 4930 prosrc => 'int8shl' }, 4931{ oid => '1909', 4932 proname => 'int8shr', prorettype => 'int8', proargtypes => 'int8 int4', 4933 prosrc => 'int8shr' }, 4934 4935{ oid => '1910', 4936 proname => 'int8up', prorettype => 'int8', proargtypes => 'int8', 4937 prosrc => 'int8up' }, 4938{ oid => '1911', 4939 proname => 'int2up', prorettype => 'int2', proargtypes => 'int2', 4940 prosrc => 'int2up' }, 4941{ oid => '1912', 4942 proname => 'int4up', prorettype => 'int4', proargtypes => 'int4', 4943 prosrc => 'int4up' }, 4944{ oid => '1913', 4945 proname => 'float4up', prorettype => 'float4', proargtypes => 'float4', 4946 prosrc => 'float4up' }, 4947{ oid => '1914', 4948 proname => 'float8up', prorettype => 'float8', proargtypes => 'float8', 4949 prosrc => 'float8up' }, 4950{ oid => '1915', 4951 proname => 'numeric_uplus', prorettype => 'numeric', proargtypes => 'numeric', 4952 prosrc => 'numeric_uplus' }, 4953 4954{ oid => '1922', descr => 'user privilege on relation by username, rel name', 4955 proname => 'has_table_privilege', provolatile => 's', prorettype => 'bool', 4956 proargtypes => 'name text text', prosrc => 'has_table_privilege_name_name' }, 4957{ oid => '1923', descr => 'user privilege on relation by username, rel oid', 4958 proname => 'has_table_privilege', provolatile => 's', prorettype => 'bool', 4959 proargtypes => 'name oid text', prosrc => 'has_table_privilege_name_id' }, 4960{ oid => '1924', descr => 'user privilege on relation by user oid, rel name', 4961 proname => 'has_table_privilege', provolatile => 's', prorettype => 'bool', 4962 proargtypes => 'oid text text', prosrc => 'has_table_privilege_id_name' }, 4963{ oid => '1925', descr => 'user privilege on relation by user oid, rel oid', 4964 proname => 'has_table_privilege', provolatile => 's', prorettype => 'bool', 4965 proargtypes => 'oid oid text', prosrc => 'has_table_privilege_id_id' }, 4966{ oid => '1926', descr => 'current user privilege on relation by rel name', 4967 proname => 'has_table_privilege', provolatile => 's', prorettype => 'bool', 4968 proargtypes => 'text text', prosrc => 'has_table_privilege_name' }, 4969{ oid => '1927', descr => 'current user privilege on relation by rel oid', 4970 proname => 'has_table_privilege', provolatile => 's', prorettype => 'bool', 4971 proargtypes => 'oid text', prosrc => 'has_table_privilege_id' }, 4972 4973{ oid => '2181', descr => 'user privilege on sequence by username, seq name', 4974 proname => 'has_sequence_privilege', provolatile => 's', prorettype => 'bool', 4975 proargtypes => 'name text text', 4976 prosrc => 'has_sequence_privilege_name_name' }, 4977{ oid => '2182', descr => 'user privilege on sequence by username, seq oid', 4978 proname => 'has_sequence_privilege', provolatile => 's', prorettype => 'bool', 4979 proargtypes => 'name oid text', prosrc => 'has_sequence_privilege_name_id' }, 4980{ oid => '2183', descr => 'user privilege on sequence by user oid, seq name', 4981 proname => 'has_sequence_privilege', provolatile => 's', prorettype => 'bool', 4982 proargtypes => 'oid text text', prosrc => 'has_sequence_privilege_id_name' }, 4983{ oid => '2184', descr => 'user privilege on sequence by user oid, seq oid', 4984 proname => 'has_sequence_privilege', provolatile => 's', prorettype => 'bool', 4985 proargtypes => 'oid oid text', prosrc => 'has_sequence_privilege_id_id' }, 4986{ oid => '2185', descr => 'current user privilege on sequence by seq name', 4987 proname => 'has_sequence_privilege', provolatile => 's', prorettype => 'bool', 4988 proargtypes => 'text text', prosrc => 'has_sequence_privilege_name' }, 4989{ oid => '2186', descr => 'current user privilege on sequence by seq oid', 4990 proname => 'has_sequence_privilege', provolatile => 's', prorettype => 'bool', 4991 proargtypes => 'oid text', prosrc => 'has_sequence_privilege_id' }, 4992 4993{ oid => '3012', 4994 descr => 'user privilege on column by username, rel name, col name', 4995 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 4996 proargtypes => 'name text text text', 4997 prosrc => 'has_column_privilege_name_name_name' }, 4998{ oid => '3013', 4999 descr => 'user privilege on column by username, rel name, col attnum', 5000 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5001 proargtypes => 'name text int2 text', 5002 prosrc => 'has_column_privilege_name_name_attnum' }, 5003{ oid => '3014', 5004 descr => 'user privilege on column by username, rel oid, col name', 5005 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5006 proargtypes => 'name oid text text', 5007 prosrc => 'has_column_privilege_name_id_name' }, 5008{ oid => '3015', 5009 descr => 'user privilege on column by username, rel oid, col attnum', 5010 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5011 proargtypes => 'name oid int2 text', 5012 prosrc => 'has_column_privilege_name_id_attnum' }, 5013{ oid => '3016', 5014 descr => 'user privilege on column by user oid, rel name, col name', 5015 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5016 proargtypes => 'oid text text text', 5017 prosrc => 'has_column_privilege_id_name_name' }, 5018{ oid => '3017', 5019 descr => 'user privilege on column by user oid, rel name, col attnum', 5020 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5021 proargtypes => 'oid text int2 text', 5022 prosrc => 'has_column_privilege_id_name_attnum' }, 5023{ oid => '3018', 5024 descr => 'user privilege on column by user oid, rel oid, col name', 5025 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5026 proargtypes => 'oid oid text text', 5027 prosrc => 'has_column_privilege_id_id_name' }, 5028{ oid => '3019', 5029 descr => 'user privilege on column by user oid, rel oid, col attnum', 5030 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5031 proargtypes => 'oid oid int2 text', 5032 prosrc => 'has_column_privilege_id_id_attnum' }, 5033{ oid => '3020', 5034 descr => 'current user privilege on column by rel name, col name', 5035 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5036 proargtypes => 'text text text', prosrc => 'has_column_privilege_name_name' }, 5037{ oid => '3021', 5038 descr => 'current user privilege on column by rel name, col attnum', 5039 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5040 proargtypes => 'text int2 text', 5041 prosrc => 'has_column_privilege_name_attnum' }, 5042{ oid => '3022', 5043 descr => 'current user privilege on column by rel oid, col name', 5044 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5045 proargtypes => 'oid text text', prosrc => 'has_column_privilege_id_name' }, 5046{ oid => '3023', 5047 descr => 'current user privilege on column by rel oid, col attnum', 5048 proname => 'has_column_privilege', provolatile => 's', prorettype => 'bool', 5049 proargtypes => 'oid int2 text', prosrc => 'has_column_privilege_id_attnum' }, 5050 5051{ oid => '3024', 5052 descr => 'user privilege on any column by username, rel name', 5053 proname => 'has_any_column_privilege', procost => '10', provolatile => 's', 5054 prorettype => 'bool', proargtypes => 'name text text', 5055 prosrc => 'has_any_column_privilege_name_name' }, 5056{ oid => '3025', descr => 'user privilege on any column by username, rel oid', 5057 proname => 'has_any_column_privilege', procost => '10', provolatile => 's', 5058 prorettype => 'bool', proargtypes => 'name oid text', 5059 prosrc => 'has_any_column_privilege_name_id' }, 5060{ oid => '3026', 5061 descr => 'user privilege on any column by user oid, rel name', 5062 proname => 'has_any_column_privilege', procost => '10', provolatile => 's', 5063 prorettype => 'bool', proargtypes => 'oid text text', 5064 prosrc => 'has_any_column_privilege_id_name' }, 5065{ oid => '3027', descr => 'user privilege on any column by user oid, rel oid', 5066 proname => 'has_any_column_privilege', procost => '10', provolatile => 's', 5067 prorettype => 'bool', proargtypes => 'oid oid text', 5068 prosrc => 'has_any_column_privilege_id_id' }, 5069{ oid => '3028', descr => 'current user privilege on any column by rel name', 5070 proname => 'has_any_column_privilege', procost => '10', provolatile => 's', 5071 prorettype => 'bool', proargtypes => 'text text', 5072 prosrc => 'has_any_column_privilege_name' }, 5073{ oid => '3029', descr => 'current user privilege on any column by rel oid', 5074 proname => 'has_any_column_privilege', procost => '10', provolatile => 's', 5075 prorettype => 'bool', proargtypes => 'oid text', 5076 prosrc => 'has_any_column_privilege_id' }, 5077 5078{ oid => '3355', descr => 'I/O', 5079 proname => 'pg_ndistinct_in', prorettype => 'pg_ndistinct', 5080 proargtypes => 'cstring', prosrc => 'pg_ndistinct_in' }, 5081{ oid => '3356', descr => 'I/O', 5082 proname => 'pg_ndistinct_out', prorettype => 'cstring', 5083 proargtypes => 'pg_ndistinct', prosrc => 'pg_ndistinct_out' }, 5084{ oid => '3357', descr => 'I/O', 5085 proname => 'pg_ndistinct_recv', provolatile => 's', 5086 prorettype => 'pg_ndistinct', proargtypes => 'internal', 5087 prosrc => 'pg_ndistinct_recv' }, 5088{ oid => '3358', descr => 'I/O', 5089 proname => 'pg_ndistinct_send', provolatile => 's', prorettype => 'bytea', 5090 proargtypes => 'pg_ndistinct', prosrc => 'pg_ndistinct_send' }, 5091 5092{ oid => '3404', descr => 'I/O', 5093 proname => 'pg_dependencies_in', prorettype => 'pg_dependencies', 5094 proargtypes => 'cstring', prosrc => 'pg_dependencies_in' }, 5095{ oid => '3405', descr => 'I/O', 5096 proname => 'pg_dependencies_out', prorettype => 'cstring', 5097 proargtypes => 'pg_dependencies', prosrc => 'pg_dependencies_out' }, 5098{ oid => '3406', descr => 'I/O', 5099 proname => 'pg_dependencies_recv', provolatile => 's', 5100 prorettype => 'pg_dependencies', proargtypes => 'internal', 5101 prosrc => 'pg_dependencies_recv' }, 5102{ oid => '3407', descr => 'I/O', 5103 proname => 'pg_dependencies_send', provolatile => 's', prorettype => 'bytea', 5104 proargtypes => 'pg_dependencies', prosrc => 'pg_dependencies_send' }, 5105 5106{ oid => '5018', descr => 'I/O', 5107 proname => 'pg_mcv_list_in', prorettype => 'pg_mcv_list', 5108 proargtypes => 'cstring', prosrc => 'pg_mcv_list_in' }, 5109{ oid => '5019', descr => 'I/O', 5110 proname => 'pg_mcv_list_out', prorettype => 'cstring', 5111 proargtypes => 'pg_mcv_list', prosrc => 'pg_mcv_list_out' }, 5112{ oid => '5020', descr => 'I/O', 5113 proname => 'pg_mcv_list_recv', provolatile => 's', 5114 prorettype => 'pg_mcv_list', proargtypes => 'internal', 5115 prosrc => 'pg_mcv_list_recv' }, 5116{ oid => '5021', descr => 'I/O', 5117 proname => 'pg_mcv_list_send', provolatile => 's', prorettype => 'bytea', 5118 proargtypes => 'pg_mcv_list', prosrc => 'pg_mcv_list_send' }, 5119 5120{ oid => '3427', descr => 'details about MCV list items', 5121 proname => 'pg_mcv_list_items', prorows => '1000', proretset => 't', 5122 provolatile => 's', prorettype => 'record', proargtypes => 'pg_mcv_list', 5123 proallargtypes => '{pg_mcv_list,int4,_text,_bool,float8,float8}', 5124 proargmodes => '{i,o,o,o,o,o}', 5125 proargnames => '{mcv_list,index,values,nulls,frequency,base_frequency}', 5126 prosrc => 'pg_stats_ext_mcvlist_items' }, 5127 5128{ oid => '1928', descr => 'statistics: number of scans done for table/index', 5129 proname => 'pg_stat_get_numscans', provolatile => 's', proparallel => 'r', 5130 prorettype => 'int8', proargtypes => 'oid', 5131 prosrc => 'pg_stat_get_numscans' }, 5132{ oid => '1929', descr => 'statistics: number of tuples read by seqscan', 5133 proname => 'pg_stat_get_tuples_returned', provolatile => 's', 5134 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5135 prosrc => 'pg_stat_get_tuples_returned' }, 5136{ oid => '1930', descr => 'statistics: number of tuples fetched by idxscan', 5137 proname => 'pg_stat_get_tuples_fetched', provolatile => 's', 5138 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5139 prosrc => 'pg_stat_get_tuples_fetched' }, 5140{ oid => '1931', descr => 'statistics: number of tuples inserted', 5141 proname => 'pg_stat_get_tuples_inserted', provolatile => 's', 5142 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5143 prosrc => 'pg_stat_get_tuples_inserted' }, 5144{ oid => '1932', descr => 'statistics: number of tuples updated', 5145 proname => 'pg_stat_get_tuples_updated', provolatile => 's', 5146 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5147 prosrc => 'pg_stat_get_tuples_updated' }, 5148{ oid => '1933', descr => 'statistics: number of tuples deleted', 5149 proname => 'pg_stat_get_tuples_deleted', provolatile => 's', 5150 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5151 prosrc => 'pg_stat_get_tuples_deleted' }, 5152{ oid => '1972', descr => 'statistics: number of tuples hot updated', 5153 proname => 'pg_stat_get_tuples_hot_updated', provolatile => 's', 5154 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5155 prosrc => 'pg_stat_get_tuples_hot_updated' }, 5156{ oid => '2878', descr => 'statistics: number of live tuples', 5157 proname => 'pg_stat_get_live_tuples', provolatile => 's', proparallel => 'r', 5158 prorettype => 'int8', proargtypes => 'oid', 5159 prosrc => 'pg_stat_get_live_tuples' }, 5160{ oid => '2879', descr => 'statistics: number of dead tuples', 5161 proname => 'pg_stat_get_dead_tuples', provolatile => 's', proparallel => 'r', 5162 prorettype => 'int8', proargtypes => 'oid', 5163 prosrc => 'pg_stat_get_dead_tuples' }, 5164{ oid => '3177', 5165 descr => 'statistics: number of tuples changed since last analyze', 5166 proname => 'pg_stat_get_mod_since_analyze', provolatile => 's', 5167 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5168 prosrc => 'pg_stat_get_mod_since_analyze' }, 5169{ oid => '5053', 5170 descr => 'statistics: number of tuples inserted since last vacuum', 5171 proname => 'pg_stat_get_ins_since_vacuum', provolatile => 's', 5172 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5173 prosrc => 'pg_stat_get_ins_since_vacuum' }, 5174{ oid => '1934', descr => 'statistics: number of blocks fetched', 5175 proname => 'pg_stat_get_blocks_fetched', provolatile => 's', 5176 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5177 prosrc => 'pg_stat_get_blocks_fetched' }, 5178{ oid => '1935', descr => 'statistics: number of blocks found in cache', 5179 proname => 'pg_stat_get_blocks_hit', provolatile => 's', proparallel => 'r', 5180 prorettype => 'int8', proargtypes => 'oid', 5181 prosrc => 'pg_stat_get_blocks_hit' }, 5182{ oid => '2781', descr => 'statistics: last manual vacuum time for a table', 5183 proname => 'pg_stat_get_last_vacuum_time', provolatile => 's', 5184 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'oid', 5185 prosrc => 'pg_stat_get_last_vacuum_time' }, 5186{ oid => '2782', descr => 'statistics: last auto vacuum time for a table', 5187 proname => 'pg_stat_get_last_autovacuum_time', provolatile => 's', 5188 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'oid', 5189 prosrc => 'pg_stat_get_last_autovacuum_time' }, 5190{ oid => '2783', descr => 'statistics: last manual analyze time for a table', 5191 proname => 'pg_stat_get_last_analyze_time', provolatile => 's', 5192 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'oid', 5193 prosrc => 'pg_stat_get_last_analyze_time' }, 5194{ oid => '2784', descr => 'statistics: last auto analyze time for a table', 5195 proname => 'pg_stat_get_last_autoanalyze_time', provolatile => 's', 5196 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'oid', 5197 prosrc => 'pg_stat_get_last_autoanalyze_time' }, 5198{ oid => '3054', descr => 'statistics: number of manual vacuums for a table', 5199 proname => 'pg_stat_get_vacuum_count', provolatile => 's', proparallel => 'r', 5200 prorettype => 'int8', proargtypes => 'oid', 5201 prosrc => 'pg_stat_get_vacuum_count' }, 5202{ oid => '3055', descr => 'statistics: number of auto vacuums for a table', 5203 proname => 'pg_stat_get_autovacuum_count', provolatile => 's', 5204 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5205 prosrc => 'pg_stat_get_autovacuum_count' }, 5206{ oid => '3056', descr => 'statistics: number of manual analyzes for a table', 5207 proname => 'pg_stat_get_analyze_count', provolatile => 's', 5208 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5209 prosrc => 'pg_stat_get_analyze_count' }, 5210{ oid => '3057', descr => 'statistics: number of auto analyzes for a table', 5211 proname => 'pg_stat_get_autoanalyze_count', provolatile => 's', 5212 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5213 prosrc => 'pg_stat_get_autoanalyze_count' }, 5214{ oid => '1936', descr => 'statistics: currently active backend IDs', 5215 proname => 'pg_stat_get_backend_idset', prorows => '100', proretset => 't', 5216 provolatile => 's', proparallel => 'r', prorettype => 'int4', 5217 proargtypes => '', prosrc => 'pg_stat_get_backend_idset' }, 5218{ oid => '2022', 5219 descr => 'statistics: information about currently active backends', 5220 proname => 'pg_stat_get_activity', prorows => '100', proisstrict => 'f', 5221 proretset => 't', provolatile => 's', proparallel => 'r', 5222 prorettype => 'record', proargtypes => 'int4', 5223 proallargtypes => '{int4,oid,int4,oid,text,text,text,text,text,timestamptz,timestamptz,timestamptz,timestamptz,inet,text,int4,xid,xid,text,bool,text,text,int4,bool,text,numeric,text,bool,text,bool,int4}', 5224 proargmodes => '{i,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}', 5225 proargnames => '{pid,datid,pid,usesysid,application_name,state,query,wait_event_type,wait_event,xact_start,query_start,backend_start,state_change,client_addr,client_hostname,client_port,backend_xid,backend_xmin,backend_type,ssl,sslversion,sslcipher,sslbits,sslcompression,ssl_client_dn,ssl_client_serial,ssl_issuer_dn,gss_auth,gss_princ,gss_enc,leader_pid}', 5226 prosrc => 'pg_stat_get_activity' }, 5227{ oid => '3318', 5228 descr => 'statistics: information about progress of backends running maintenance command', 5229 proname => 'pg_stat_get_progress_info', prorows => '100', proretset => 't', 5230 provolatile => 's', proparallel => 'r', prorettype => 'record', 5231 proargtypes => 'text', 5232 proallargtypes => '{text,int4,oid,oid,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8}', 5233 proargmodes => '{i,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}', 5234 proargnames => '{cmdtype,pid,datid,relid,param1,param2,param3,param4,param5,param6,param7,param8,param9,param10,param11,param12,param13,param14,param15,param16,param17,param18,param19,param20}', 5235 prosrc => 'pg_stat_get_progress_info' }, 5236{ oid => '3099', 5237 descr => 'statistics: information about currently active replication', 5238 proname => 'pg_stat_get_wal_senders', prorows => '10', proisstrict => 'f', 5239 proretset => 't', provolatile => 's', proparallel => 'r', 5240 prorettype => 'record', proargtypes => '', 5241 proallargtypes => '{int4,text,pg_lsn,pg_lsn,pg_lsn,pg_lsn,interval,interval,interval,int4,text,timestamptz}', 5242 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o}', 5243 proargnames => '{pid,state,sent_lsn,write_lsn,flush_lsn,replay_lsn,write_lag,flush_lag,replay_lag,sync_priority,sync_state,reply_time}', 5244 prosrc => 'pg_stat_get_wal_senders' }, 5245{ oid => '3317', descr => 'statistics: information about WAL receiver', 5246 proname => 'pg_stat_get_wal_receiver', proisstrict => 'f', provolatile => 's', 5247 proparallel => 'r', prorettype => 'record', proargtypes => '', 5248 proallargtypes => '{int4,text,pg_lsn,int4,pg_lsn,pg_lsn,int4,timestamptz,timestamptz,pg_lsn,timestamptz,text,text,int4,text}', 5249 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}', 5250 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}', 5251 prosrc => 'pg_stat_get_wal_receiver' }, 5252{ oid => '6118', descr => 'statistics: information about subscription', 5253 proname => 'pg_stat_get_subscription', proisstrict => 'f', provolatile => 's', 5254 proparallel => 'r', prorettype => 'record', proargtypes => 'oid', 5255 proallargtypes => '{oid,oid,oid,int4,pg_lsn,timestamptz,timestamptz,pg_lsn,timestamptz}', 5256 proargmodes => '{i,o,o,o,o,o,o,o,o}', 5257 proargnames => '{subid,subid,relid,pid,received_lsn,last_msg_send_time,last_msg_receipt_time,latest_end_lsn,latest_end_time}', 5258 prosrc => 'pg_stat_get_subscription' }, 5259{ oid => '2026', descr => 'statistics: current backend PID', 5260 proname => 'pg_backend_pid', provolatile => 's', proparallel => 'r', 5261 prorettype => 'int4', proargtypes => '', prosrc => 'pg_backend_pid' }, 5262{ oid => '1937', descr => 'statistics: PID of backend', 5263 proname => 'pg_stat_get_backend_pid', provolatile => 's', proparallel => 'r', 5264 prorettype => 'int4', proargtypes => 'int4', 5265 prosrc => 'pg_stat_get_backend_pid' }, 5266{ oid => '1938', descr => 'statistics: database ID of backend', 5267 proname => 'pg_stat_get_backend_dbid', provolatile => 's', proparallel => 'r', 5268 prorettype => 'oid', proargtypes => 'int4', 5269 prosrc => 'pg_stat_get_backend_dbid' }, 5270{ oid => '1939', descr => 'statistics: user ID of backend', 5271 proname => 'pg_stat_get_backend_userid', provolatile => 's', 5272 proparallel => 'r', prorettype => 'oid', proargtypes => 'int4', 5273 prosrc => 'pg_stat_get_backend_userid' }, 5274{ oid => '1940', descr => 'statistics: current query of backend', 5275 proname => 'pg_stat_get_backend_activity', provolatile => 's', 5276 proparallel => 'r', prorettype => 'text', proargtypes => 'int4', 5277 prosrc => 'pg_stat_get_backend_activity' }, 5278{ oid => '2788', 5279 descr => 'statistics: wait event type on which backend is currently waiting', 5280 proname => 'pg_stat_get_backend_wait_event_type', provolatile => 's', 5281 proparallel => 'r', prorettype => 'text', proargtypes => 'int4', 5282 prosrc => 'pg_stat_get_backend_wait_event_type' }, 5283{ oid => '2853', 5284 descr => 'statistics: wait event on which backend is currently waiting', 5285 proname => 'pg_stat_get_backend_wait_event', provolatile => 's', 5286 proparallel => 'r', prorettype => 'text', proargtypes => 'int4', 5287 prosrc => 'pg_stat_get_backend_wait_event' }, 5288{ oid => '2094', 5289 descr => 'statistics: start time for current query of backend', 5290 proname => 'pg_stat_get_backend_activity_start', provolatile => 's', 5291 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'int4', 5292 prosrc => 'pg_stat_get_backend_activity_start' }, 5293{ oid => '2857', 5294 descr => 'statistics: start time for backend\'s current transaction', 5295 proname => 'pg_stat_get_backend_xact_start', provolatile => 's', 5296 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'int4', 5297 prosrc => 'pg_stat_get_backend_xact_start' }, 5298{ oid => '1391', 5299 descr => 'statistics: start time for current backend session', 5300 proname => 'pg_stat_get_backend_start', provolatile => 's', 5301 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'int4', 5302 prosrc => 'pg_stat_get_backend_start' }, 5303{ oid => '1392', 5304 descr => 'statistics: address of client connected to backend', 5305 proname => 'pg_stat_get_backend_client_addr', provolatile => 's', 5306 proparallel => 'r', prorettype => 'inet', proargtypes => 'int4', 5307 prosrc => 'pg_stat_get_backend_client_addr' }, 5308{ oid => '1393', 5309 descr => 'statistics: port number of client connected to backend', 5310 proname => 'pg_stat_get_backend_client_port', provolatile => 's', 5311 proparallel => 'r', prorettype => 'int4', proargtypes => 'int4', 5312 prosrc => 'pg_stat_get_backend_client_port' }, 5313{ oid => '1941', descr => 'statistics: number of backends in database', 5314 proname => 'pg_stat_get_db_numbackends', provolatile => 's', 5315 proparallel => 'r', prorettype => 'int4', proargtypes => 'oid', 5316 prosrc => 'pg_stat_get_db_numbackends' }, 5317{ oid => '1942', descr => 'statistics: transactions committed', 5318 proname => 'pg_stat_get_db_xact_commit', provolatile => 's', 5319 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5320 prosrc => 'pg_stat_get_db_xact_commit' }, 5321{ oid => '1943', descr => 'statistics: transactions rolled back', 5322 proname => 'pg_stat_get_db_xact_rollback', provolatile => 's', 5323 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5324 prosrc => 'pg_stat_get_db_xact_rollback' }, 5325{ oid => '1944', descr => 'statistics: blocks fetched for database', 5326 proname => 'pg_stat_get_db_blocks_fetched', provolatile => 's', 5327 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5328 prosrc => 'pg_stat_get_db_blocks_fetched' }, 5329{ oid => '1945', descr => 'statistics: blocks found in cache for database', 5330 proname => 'pg_stat_get_db_blocks_hit', provolatile => 's', 5331 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5332 prosrc => 'pg_stat_get_db_blocks_hit' }, 5333{ oid => '2758', descr => 'statistics: tuples returned for database', 5334 proname => 'pg_stat_get_db_tuples_returned', provolatile => 's', 5335 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5336 prosrc => 'pg_stat_get_db_tuples_returned' }, 5337{ oid => '2759', descr => 'statistics: tuples fetched for database', 5338 proname => 'pg_stat_get_db_tuples_fetched', provolatile => 's', 5339 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5340 prosrc => 'pg_stat_get_db_tuples_fetched' }, 5341{ oid => '2760', descr => 'statistics: tuples inserted in database', 5342 proname => 'pg_stat_get_db_tuples_inserted', provolatile => 's', 5343 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5344 prosrc => 'pg_stat_get_db_tuples_inserted' }, 5345{ oid => '2761', descr => 'statistics: tuples updated in database', 5346 proname => 'pg_stat_get_db_tuples_updated', provolatile => 's', 5347 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5348 prosrc => 'pg_stat_get_db_tuples_updated' }, 5349{ oid => '2762', descr => 'statistics: tuples deleted in database', 5350 proname => 'pg_stat_get_db_tuples_deleted', provolatile => 's', 5351 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5352 prosrc => 'pg_stat_get_db_tuples_deleted' }, 5353{ oid => '3065', 5354 descr => 'statistics: recovery conflicts in database caused by drop tablespace', 5355 proname => 'pg_stat_get_db_conflict_tablespace', provolatile => 's', 5356 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5357 prosrc => 'pg_stat_get_db_conflict_tablespace' }, 5358{ oid => '3066', 5359 descr => 'statistics: recovery conflicts in database caused by relation lock', 5360 proname => 'pg_stat_get_db_conflict_lock', provolatile => 's', 5361 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5362 prosrc => 'pg_stat_get_db_conflict_lock' }, 5363{ oid => '3067', 5364 descr => 'statistics: recovery conflicts in database caused by snapshot expiry', 5365 proname => 'pg_stat_get_db_conflict_snapshot', provolatile => 's', 5366 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5367 prosrc => 'pg_stat_get_db_conflict_snapshot' }, 5368{ oid => '3068', 5369 descr => 'statistics: recovery conflicts in database caused by shared buffer pin', 5370 proname => 'pg_stat_get_db_conflict_bufferpin', provolatile => 's', 5371 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5372 prosrc => 'pg_stat_get_db_conflict_bufferpin' }, 5373{ oid => '3069', 5374 descr => 'statistics: recovery conflicts in database caused by buffer deadlock', 5375 proname => 'pg_stat_get_db_conflict_startup_deadlock', provolatile => 's', 5376 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5377 prosrc => 'pg_stat_get_db_conflict_startup_deadlock' }, 5378{ oid => '3070', descr => 'statistics: recovery conflicts in database', 5379 proname => 'pg_stat_get_db_conflict_all', provolatile => 's', 5380 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5381 prosrc => 'pg_stat_get_db_conflict_all' }, 5382{ oid => '3152', descr => 'statistics: deadlocks detected in database', 5383 proname => 'pg_stat_get_db_deadlocks', provolatile => 's', proparallel => 'r', 5384 prorettype => 'int8', proargtypes => 'oid', 5385 prosrc => 'pg_stat_get_db_deadlocks' }, 5386{ oid => '3426', 5387 descr => 'statistics: checksum failures detected in database', 5388 proname => 'pg_stat_get_db_checksum_failures', provolatile => 's', 5389 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5390 prosrc => 'pg_stat_get_db_checksum_failures' }, 5391{ oid => '3428', 5392 descr => 'statistics: when last checksum failure was detected in database', 5393 proname => 'pg_stat_get_db_checksum_last_failure', provolatile => 's', 5394 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'oid', 5395 prosrc => 'pg_stat_get_db_checksum_last_failure' }, 5396{ oid => '3074', descr => 'statistics: last reset for a database', 5397 proname => 'pg_stat_get_db_stat_reset_time', provolatile => 's', 5398 proparallel => 'r', prorettype => 'timestamptz', proargtypes => 'oid', 5399 prosrc => 'pg_stat_get_db_stat_reset_time' }, 5400{ oid => '3150', descr => 'statistics: number of temporary files written', 5401 proname => 'pg_stat_get_db_temp_files', provolatile => 's', 5402 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5403 prosrc => 'pg_stat_get_db_temp_files' }, 5404{ oid => '3151', 5405 descr => 'statistics: number of bytes in temporary files written', 5406 proname => 'pg_stat_get_db_temp_bytes', provolatile => 's', 5407 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5408 prosrc => 'pg_stat_get_db_temp_bytes' }, 5409{ oid => '2844', descr => 'statistics: block read time, in milliseconds', 5410 proname => 'pg_stat_get_db_blk_read_time', provolatile => 's', 5411 proparallel => 'r', prorettype => 'float8', proargtypes => 'oid', 5412 prosrc => 'pg_stat_get_db_blk_read_time' }, 5413{ oid => '2845', descr => 'statistics: block write time, in milliseconds', 5414 proname => 'pg_stat_get_db_blk_write_time', provolatile => 's', 5415 proparallel => 'r', prorettype => 'float8', proargtypes => 'oid', 5416 prosrc => 'pg_stat_get_db_blk_write_time' }, 5417{ oid => '3195', descr => 'statistics: information about WAL archiver', 5418 proname => 'pg_stat_get_archiver', proisstrict => 'f', provolatile => 's', 5419 proparallel => 'r', prorettype => 'record', proargtypes => '', 5420 proallargtypes => '{int8,text,timestamptz,int8,text,timestamptz,timestamptz}', 5421 proargmodes => '{o,o,o,o,o,o,o}', 5422 proargnames => '{archived_count,last_archived_wal,last_archived_time,failed_count,last_failed_wal,last_failed_time,stats_reset}', 5423 prosrc => 'pg_stat_get_archiver' }, 5424{ oid => '2769', 5425 descr => 'statistics: number of timed checkpoints started by the bgwriter', 5426 proname => 'pg_stat_get_bgwriter_timed_checkpoints', provolatile => 's', 5427 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5428 prosrc => 'pg_stat_get_bgwriter_timed_checkpoints' }, 5429{ oid => '2770', 5430 descr => 'statistics: number of backend requested checkpoints started by the bgwriter', 5431 proname => 'pg_stat_get_bgwriter_requested_checkpoints', provolatile => 's', 5432 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5433 prosrc => 'pg_stat_get_bgwriter_requested_checkpoints' }, 5434{ oid => '2771', 5435 descr => 'statistics: number of buffers written by the bgwriter during checkpoints', 5436 proname => 'pg_stat_get_bgwriter_buf_written_checkpoints', provolatile => 's', 5437 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5438 prosrc => 'pg_stat_get_bgwriter_buf_written_checkpoints' }, 5439{ oid => '2772', 5440 descr => 'statistics: number of buffers written by the bgwriter for cleaning dirty buffers', 5441 proname => 'pg_stat_get_bgwriter_buf_written_clean', provolatile => 's', 5442 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5443 prosrc => 'pg_stat_get_bgwriter_buf_written_clean' }, 5444{ oid => '2773', 5445 descr => 'statistics: number of times the bgwriter stopped processing when it had written too many buffers while cleaning', 5446 proname => 'pg_stat_get_bgwriter_maxwritten_clean', provolatile => 's', 5447 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5448 prosrc => 'pg_stat_get_bgwriter_maxwritten_clean' }, 5449{ oid => '3075', descr => 'statistics: last reset for the bgwriter', 5450 proname => 'pg_stat_get_bgwriter_stat_reset_time', provolatile => 's', 5451 proparallel => 'r', prorettype => 'timestamptz', proargtypes => '', 5452 prosrc => 'pg_stat_get_bgwriter_stat_reset_time' }, 5453{ oid => '3160', 5454 descr => 'statistics: checkpoint time spent writing buffers to disk, in milliseconds', 5455 proname => 'pg_stat_get_checkpoint_write_time', provolatile => 's', 5456 proparallel => 'r', prorettype => 'float8', proargtypes => '', 5457 prosrc => 'pg_stat_get_checkpoint_write_time' }, 5458{ oid => '3161', 5459 descr => 'statistics: checkpoint time spent synchronizing buffers to disk, in milliseconds', 5460 proname => 'pg_stat_get_checkpoint_sync_time', provolatile => 's', 5461 proparallel => 'r', prorettype => 'float8', proargtypes => '', 5462 prosrc => 'pg_stat_get_checkpoint_sync_time' }, 5463{ oid => '2775', descr => 'statistics: number of buffers written by backends', 5464 proname => 'pg_stat_get_buf_written_backend', provolatile => 's', 5465 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5466 prosrc => 'pg_stat_get_buf_written_backend' }, 5467{ oid => '3063', 5468 descr => 'statistics: number of backend buffer writes that did their own fsync', 5469 proname => 'pg_stat_get_buf_fsync_backend', provolatile => 's', 5470 proparallel => 'r', prorettype => 'int8', proargtypes => '', 5471 prosrc => 'pg_stat_get_buf_fsync_backend' }, 5472{ oid => '2859', descr => 'statistics: number of buffer allocations', 5473 proname => 'pg_stat_get_buf_alloc', provolatile => 's', proparallel => 'r', 5474 prorettype => 'int8', proargtypes => '', prosrc => 'pg_stat_get_buf_alloc' }, 5475 5476{ oid => '2306', descr => 'statistics: information about SLRU caches', 5477 proname => 'pg_stat_get_slru', prorows => '100', proisstrict => 'f', 5478 proretset => 't', provolatile => 's', proparallel => 'r', 5479 prorettype => 'record', proargtypes => '', 5480 proallargtypes => '{text,int8,int8,int8,int8,int8,int8,int8,timestamptz}', 5481 proargmodes => '{o,o,o,o,o,o,o,o,o}', 5482 proargnames => '{name,blks_zeroed,blks_hit,blks_read,blks_written,blks_exists,flushes,truncates,stats_reset}', 5483 prosrc => 'pg_stat_get_slru' }, 5484 5485{ oid => '2978', descr => 'statistics: number of function calls', 5486 proname => 'pg_stat_get_function_calls', provolatile => 's', 5487 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5488 prosrc => 'pg_stat_get_function_calls' }, 5489{ oid => '2979', 5490 descr => 'statistics: total execution time of function, in milliseconds', 5491 proname => 'pg_stat_get_function_total_time', provolatile => 's', 5492 proparallel => 'r', prorettype => 'float8', proargtypes => 'oid', 5493 prosrc => 'pg_stat_get_function_total_time' }, 5494{ oid => '2980', 5495 descr => 'statistics: self execution time of function, in milliseconds', 5496 proname => 'pg_stat_get_function_self_time', provolatile => 's', 5497 proparallel => 'r', prorettype => 'float8', proargtypes => 'oid', 5498 prosrc => 'pg_stat_get_function_self_time' }, 5499 5500{ oid => '3037', 5501 descr => 'statistics: number of scans done for table/index in current transaction', 5502 proname => 'pg_stat_get_xact_numscans', provolatile => 'v', 5503 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5504 prosrc => 'pg_stat_get_xact_numscans' }, 5505{ oid => '3038', 5506 descr => 'statistics: number of tuples read by seqscan in current transaction', 5507 proname => 'pg_stat_get_xact_tuples_returned', provolatile => 'v', 5508 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5509 prosrc => 'pg_stat_get_xact_tuples_returned' }, 5510{ oid => '3039', 5511 descr => 'statistics: number of tuples fetched by idxscan in current transaction', 5512 proname => 'pg_stat_get_xact_tuples_fetched', provolatile => 'v', 5513 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5514 prosrc => 'pg_stat_get_xact_tuples_fetched' }, 5515{ oid => '3040', 5516 descr => 'statistics: number of tuples inserted in current transaction', 5517 proname => 'pg_stat_get_xact_tuples_inserted', provolatile => 'v', 5518 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5519 prosrc => 'pg_stat_get_xact_tuples_inserted' }, 5520{ oid => '3041', 5521 descr => 'statistics: number of tuples updated in current transaction', 5522 proname => 'pg_stat_get_xact_tuples_updated', provolatile => 'v', 5523 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5524 prosrc => 'pg_stat_get_xact_tuples_updated' }, 5525{ oid => '3042', 5526 descr => 'statistics: number of tuples deleted in current transaction', 5527 proname => 'pg_stat_get_xact_tuples_deleted', provolatile => 'v', 5528 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5529 prosrc => 'pg_stat_get_xact_tuples_deleted' }, 5530{ oid => '3043', 5531 descr => 'statistics: number of tuples hot updated in current transaction', 5532 proname => 'pg_stat_get_xact_tuples_hot_updated', provolatile => 'v', 5533 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5534 prosrc => 'pg_stat_get_xact_tuples_hot_updated' }, 5535{ oid => '3044', 5536 descr => 'statistics: number of blocks fetched in current transaction', 5537 proname => 'pg_stat_get_xact_blocks_fetched', provolatile => 'v', 5538 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5539 prosrc => 'pg_stat_get_xact_blocks_fetched' }, 5540{ oid => '3045', 5541 descr => 'statistics: number of blocks found in cache in current transaction', 5542 proname => 'pg_stat_get_xact_blocks_hit', provolatile => 'v', 5543 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5544 prosrc => 'pg_stat_get_xact_blocks_hit' }, 5545{ oid => '3046', 5546 descr => 'statistics: number of function calls in current transaction', 5547 proname => 'pg_stat_get_xact_function_calls', provolatile => 'v', 5548 proparallel => 'r', prorettype => 'int8', proargtypes => 'oid', 5549 prosrc => 'pg_stat_get_xact_function_calls' }, 5550{ oid => '3047', 5551 descr => 'statistics: total execution time of function in current transaction, in milliseconds', 5552 proname => 'pg_stat_get_xact_function_total_time', provolatile => 'v', 5553 proparallel => 'r', prorettype => 'float8', proargtypes => 'oid', 5554 prosrc => 'pg_stat_get_xact_function_total_time' }, 5555{ oid => '3048', 5556 descr => 'statistics: self execution time of function in current transaction, in milliseconds', 5557 proname => 'pg_stat_get_xact_function_self_time', provolatile => 'v', 5558 proparallel => 'r', prorettype => 'float8', proargtypes => 'oid', 5559 prosrc => 'pg_stat_get_xact_function_self_time' }, 5560 5561{ oid => '3788', 5562 descr => 'statistics: timestamp of the current statistics snapshot', 5563 proname => 'pg_stat_get_snapshot_timestamp', provolatile => 's', 5564 proparallel => 'r', prorettype => 'timestamptz', proargtypes => '', 5565 prosrc => 'pg_stat_get_snapshot_timestamp' }, 5566{ oid => '2230', 5567 descr => 'statistics: discard current transaction\'s statistics snapshot', 5568 proname => 'pg_stat_clear_snapshot', proisstrict => 'f', provolatile => 'v', 5569 proparallel => 'r', prorettype => 'void', proargtypes => '', 5570 prosrc => 'pg_stat_clear_snapshot' }, 5571{ oid => '2274', 5572 descr => 'statistics: reset collected statistics for current database', 5573 proname => 'pg_stat_reset', proisstrict => 'f', provolatile => 'v', 5574 prorettype => 'void', proargtypes => '', prosrc => 'pg_stat_reset' }, 5575{ oid => '3775', 5576 descr => 'statistics: reset collected statistics shared across the cluster', 5577 proname => 'pg_stat_reset_shared', provolatile => 'v', prorettype => 'void', 5578 proargtypes => 'text', prosrc => 'pg_stat_reset_shared' }, 5579{ oid => '3776', 5580 descr => 'statistics: reset collected statistics for a single table or index in the current database', 5581 proname => 'pg_stat_reset_single_table_counters', provolatile => 'v', 5582 prorettype => 'void', proargtypes => 'oid', 5583 prosrc => 'pg_stat_reset_single_table_counters' }, 5584{ oid => '3777', 5585 descr => 'statistics: reset collected statistics for a single function in the current database', 5586 proname => 'pg_stat_reset_single_function_counters', provolatile => 'v', 5587 prorettype => 'void', proargtypes => 'oid', 5588 prosrc => 'pg_stat_reset_single_function_counters' }, 5589{ oid => '2307', 5590 descr => 'statistics: reset collected statistics for a single SLRU', 5591 proname => 'pg_stat_reset_slru', proisstrict => 'f', provolatile => 'v', 5592 prorettype => 'void', proargtypes => 'text', prosrc => 'pg_stat_reset_slru' }, 5593 5594{ oid => '3163', descr => 'current trigger depth', 5595 proname => 'pg_trigger_depth', provolatile => 's', proparallel => 'r', 5596 prorettype => 'int4', proargtypes => '', prosrc => 'pg_trigger_depth' }, 5597 5598{ oid => '3778', descr => 'tablespace location', 5599 proname => 'pg_tablespace_location', provolatile => 's', prorettype => 'text', 5600 proargtypes => 'oid', prosrc => 'pg_tablespace_location' }, 5601 5602{ oid => '1946', 5603 descr => 'convert bytea value into some ascii-only text string', 5604 proname => 'encode', prorettype => 'text', proargtypes => 'bytea text', 5605 prosrc => 'binary_encode' }, 5606{ oid => '1947', 5607 descr => 'convert ascii-encoded text string into bytea value', 5608 proname => 'decode', prorettype => 'bytea', proargtypes => 'text text', 5609 prosrc => 'binary_decode' }, 5610 5611{ oid => '1948', 5612 proname => 'byteaeq', proleakproof => 't', prorettype => 'bool', 5613 proargtypes => 'bytea bytea', prosrc => 'byteaeq' }, 5614{ oid => '1949', 5615 proname => 'bytealt', proleakproof => 't', prorettype => 'bool', 5616 proargtypes => 'bytea bytea', prosrc => 'bytealt' }, 5617{ oid => '1950', 5618 proname => 'byteale', proleakproof => 't', prorettype => 'bool', 5619 proargtypes => 'bytea bytea', prosrc => 'byteale' }, 5620{ oid => '1951', 5621 proname => 'byteagt', proleakproof => 't', prorettype => 'bool', 5622 proargtypes => 'bytea bytea', prosrc => 'byteagt' }, 5623{ oid => '1952', 5624 proname => 'byteage', proleakproof => 't', prorettype => 'bool', 5625 proargtypes => 'bytea bytea', prosrc => 'byteage' }, 5626{ oid => '1953', 5627 proname => 'byteane', proleakproof => 't', prorettype => 'bool', 5628 proargtypes => 'bytea bytea', prosrc => 'byteane' }, 5629{ oid => '1954', descr => 'less-equal-greater', 5630 proname => 'byteacmp', proleakproof => 't', prorettype => 'int4', 5631 proargtypes => 'bytea bytea', prosrc => 'byteacmp' }, 5632{ oid => '3331', descr => 'sort support', 5633 proname => 'bytea_sortsupport', prorettype => 'void', 5634 proargtypes => 'internal', prosrc => 'bytea_sortsupport' }, 5635 5636{ oid => '3917', descr => 'planner support for timestamp length coercion', 5637 proname => 'timestamp_support', prorettype => 'internal', 5638 proargtypes => 'internal', prosrc => 'timestamp_support' }, 5639{ oid => '3944', descr => 'planner support for time length coercion', 5640 proname => 'time_support', prorettype => 'internal', 5641 proargtypes => 'internal', prosrc => 'time_support' }, 5642 5643{ oid => '1961', descr => 'adjust timestamp precision', 5644 proname => 'timestamp', prosupport => 'timestamp_support', 5645 prorettype => 'timestamp', proargtypes => 'timestamp int4', 5646 prosrc => 'timestamp_scale' }, 5647 5648{ oid => '1965', descr => 'larger of two', 5649 proname => 'oidlarger', prorettype => 'oid', proargtypes => 'oid oid', 5650 prosrc => 'oidlarger' }, 5651{ oid => '1966', descr => 'smaller of two', 5652 proname => 'oidsmaller', prorettype => 'oid', proargtypes => 'oid oid', 5653 prosrc => 'oidsmaller' }, 5654 5655{ oid => '1967', descr => 'adjust timestamptz precision', 5656 proname => 'timestamptz', prosupport => 'timestamp_support', 5657 prorettype => 'timestamptz', proargtypes => 'timestamptz int4', 5658 prosrc => 'timestamptz_scale' }, 5659{ oid => '1968', descr => 'adjust time precision', 5660 proname => 'time', prosupport => 'time_support', prorettype => 'time', 5661 proargtypes => 'time int4', prosrc => 'time_scale' }, 5662{ oid => '1969', descr => 'adjust time with time zone precision', 5663 proname => 'timetz', prosupport => 'time_support', prorettype => 'timetz', 5664 proargtypes => 'timetz int4', prosrc => 'timetz_scale' }, 5665 5666{ oid => '2003', 5667 proname => 'textanycat', prolang => 'sql', provolatile => 's', 5668 prorettype => 'text', proargtypes => 'text anynonarray', 5669 prosrc => 'select $1 || $2::pg_catalog.text' }, 5670{ oid => '2004', 5671 proname => 'anytextcat', prolang => 'sql', provolatile => 's', 5672 prorettype => 'text', proargtypes => 'anynonarray text', 5673 prosrc => 'select $1::pg_catalog.text || $2' }, 5674 5675{ oid => '2005', 5676 proname => 'bytealike', prosupport => 'textlike_support', 5677 prorettype => 'bool', proargtypes => 'bytea bytea', prosrc => 'bytealike' }, 5678{ oid => '2006', 5679 proname => 'byteanlike', prorettype => 'bool', proargtypes => 'bytea bytea', 5680 prosrc => 'byteanlike' }, 5681{ oid => '2007', descr => 'matches LIKE expression', 5682 proname => 'like', prosupport => 'textlike_support', prorettype => 'bool', 5683 proargtypes => 'bytea bytea', prosrc => 'bytealike' }, 5684{ oid => '2008', descr => 'does not match LIKE expression', 5685 proname => 'notlike', prorettype => 'bool', proargtypes => 'bytea bytea', 5686 prosrc => 'byteanlike' }, 5687{ oid => '2009', descr => 'convert LIKE pattern to use backslash escapes', 5688 proname => 'like_escape', prorettype => 'bytea', proargtypes => 'bytea bytea', 5689 prosrc => 'like_escape_bytea' }, 5690{ oid => '2010', descr => 'octet length', 5691 proname => 'length', prorettype => 'int4', proargtypes => 'bytea', 5692 prosrc => 'byteaoctetlen' }, 5693{ oid => '2011', 5694 proname => 'byteacat', prorettype => 'bytea', proargtypes => 'bytea bytea', 5695 prosrc => 'byteacat' }, 5696{ oid => '2012', descr => 'extract portion of string', 5697 proname => 'substring', prorettype => 'bytea', 5698 proargtypes => 'bytea int4 int4', prosrc => 'bytea_substr' }, 5699{ oid => '2013', descr => 'extract portion of string', 5700 proname => 'substring', prorettype => 'bytea', proargtypes => 'bytea int4', 5701 prosrc => 'bytea_substr_no_len' }, 5702{ oid => '2085', descr => 'extract portion of string', 5703 proname => 'substr', prorettype => 'bytea', proargtypes => 'bytea int4 int4', 5704 prosrc => 'bytea_substr' }, 5705{ oid => '2086', descr => 'extract portion of string', 5706 proname => 'substr', prorettype => 'bytea', proargtypes => 'bytea int4', 5707 prosrc => 'bytea_substr_no_len' }, 5708{ oid => '2014', descr => 'position of substring', 5709 proname => 'position', prorettype => 'int4', proargtypes => 'bytea bytea', 5710 prosrc => 'byteapos' }, 5711{ oid => '2015', descr => 'trim both ends of string', 5712 proname => 'btrim', prorettype => 'bytea', proargtypes => 'bytea bytea', 5713 prosrc => 'byteatrim' }, 5714 5715{ oid => '2019', descr => 'convert timestamp with time zone to time', 5716 proname => 'time', provolatile => 's', prorettype => 'time', 5717 proargtypes => 'timestamptz', prosrc => 'timestamptz_time' }, 5718{ oid => '2020', descr => 'truncate timestamp to specified units', 5719 proname => 'date_trunc', prorettype => 'timestamp', 5720 proargtypes => 'text timestamp', prosrc => 'timestamp_trunc' }, 5721{ oid => '2021', descr => 'extract field from timestamp', 5722 proname => 'date_part', prorettype => 'float8', 5723 proargtypes => 'text timestamp', prosrc => 'timestamp_part' }, 5724{ oid => '2024', descr => 'convert date to timestamp', 5725 proname => 'timestamp', prorettype => 'timestamp', proargtypes => 'date', 5726 prosrc => 'date_timestamp' }, 5727{ oid => '2025', descr => 'convert date and time to timestamp', 5728 proname => 'timestamp', prorettype => 'timestamp', proargtypes => 'date time', 5729 prosrc => 'datetime_timestamp' }, 5730{ oid => '2027', descr => 'convert timestamp with time zone to timestamp', 5731 proname => 'timestamp', provolatile => 's', prorettype => 'timestamp', 5732 proargtypes => 'timestamptz', prosrc => 'timestamptz_timestamp' }, 5733{ oid => '2028', descr => 'convert timestamp to timestamp with time zone', 5734 proname => 'timestamptz', provolatile => 's', prorettype => 'timestamptz', 5735 proargtypes => 'timestamp', prosrc => 'timestamp_timestamptz' }, 5736{ oid => '2029', descr => 'convert timestamp to date', 5737 proname => 'date', prorettype => 'date', proargtypes => 'timestamp', 5738 prosrc => 'timestamp_date' }, 5739{ oid => '2031', 5740 proname => 'timestamp_mi', prorettype => 'interval', 5741 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_mi' }, 5742{ oid => '2032', 5743 proname => 'timestamp_pl_interval', prorettype => 'timestamp', 5744 proargtypes => 'timestamp interval', prosrc => 'timestamp_pl_interval' }, 5745{ oid => '2033', 5746 proname => 'timestamp_mi_interval', prorettype => 'timestamp', 5747 proargtypes => 'timestamp interval', prosrc => 'timestamp_mi_interval' }, 5748{ oid => '2035', descr => 'smaller of two', 5749 proname => 'timestamp_smaller', prorettype => 'timestamp', 5750 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_smaller' }, 5751{ oid => '2036', descr => 'larger of two', 5752 proname => 'timestamp_larger', prorettype => 'timestamp', 5753 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_larger' }, 5754{ oid => '2037', descr => 'adjust time with time zone to new zone', 5755 proname => 'timezone', provolatile => 'v', prorettype => 'timetz', 5756 proargtypes => 'text timetz', prosrc => 'timetz_zone' }, 5757{ oid => '2038', descr => 'adjust time with time zone to new zone', 5758 proname => 'timezone', prorettype => 'timetz', 5759 proargtypes => 'interval timetz', prosrc => 'timetz_izone' }, 5760{ oid => '2039', descr => 'hash', 5761 proname => 'timestamp_hash', prorettype => 'int4', proargtypes => 'timestamp', 5762 prosrc => 'timestamp_hash' }, 5763{ oid => '3411', descr => 'hash', 5764 proname => 'timestamp_hash_extended', prorettype => 'int8', 5765 proargtypes => 'timestamp int8', prosrc => 'timestamp_hash_extended' }, 5766{ oid => '2041', descr => 'intervals overlap?', 5767 proname => 'overlaps', proisstrict => 'f', prorettype => 'bool', 5768 proargtypes => 'timestamp timestamp timestamp timestamp', 5769 prosrc => 'overlaps_timestamp' }, 5770{ oid => '2042', descr => 'intervals overlap?', 5771 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 5772 prorettype => 'bool', proargtypes => 'timestamp interval timestamp interval', 5773 prosrc => 'select ($1, ($1 + $2)) overlaps ($3, ($3 + $4))' }, 5774{ oid => '2043', descr => 'intervals overlap?', 5775 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 5776 prorettype => 'bool', proargtypes => 'timestamp timestamp timestamp interval', 5777 prosrc => 'select ($1, $2) overlaps ($3, ($3 + $4))' }, 5778{ oid => '2044', descr => 'intervals overlap?', 5779 proname => 'overlaps', prolang => 'sql', proisstrict => 'f', 5780 prorettype => 'bool', proargtypes => 'timestamp interval timestamp timestamp', 5781 prosrc => 'select ($1, ($1 + $2)) overlaps ($3, $4)' }, 5782{ oid => '2045', descr => 'less-equal-greater', 5783 proname => 'timestamp_cmp', proleakproof => 't', prorettype => 'int4', 5784 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_cmp' }, 5785{ oid => '3137', descr => 'sort support', 5786 proname => 'timestamp_sortsupport', prorettype => 'void', 5787 proargtypes => 'internal', prosrc => 'timestamp_sortsupport' }, 5788 5789{ oid => '4134', descr => 'window RANGE support', 5790 proname => 'in_range', prorettype => 'bool', 5791 proargtypes => 'timestamp timestamp interval bool bool', 5792 prosrc => 'in_range_timestamp_interval' }, 5793{ oid => '4135', descr => 'window RANGE support', 5794 proname => 'in_range', provolatile => 's', prorettype => 'bool', 5795 proargtypes => 'timestamptz timestamptz interval bool bool', 5796 prosrc => 'in_range_timestamptz_interval' }, 5797{ oid => '4136', descr => 'window RANGE support', 5798 proname => 'in_range', prorettype => 'bool', 5799 proargtypes => 'interval interval interval bool bool', 5800 prosrc => 'in_range_interval_interval' }, 5801{ oid => '4137', descr => 'window RANGE support', 5802 proname => 'in_range', prorettype => 'bool', 5803 proargtypes => 'time time interval bool bool', 5804 prosrc => 'in_range_time_interval' }, 5805{ oid => '4138', descr => 'window RANGE support', 5806 proname => 'in_range', prorettype => 'bool', 5807 proargtypes => 'timetz timetz interval bool bool', 5808 prosrc => 'in_range_timetz_interval' }, 5809 5810{ oid => '2046', descr => 'convert time with time zone to time', 5811 proname => 'time', prorettype => 'time', proargtypes => 'timetz', 5812 prosrc => 'timetz_time' }, 5813{ oid => '2047', descr => 'convert time to time with time zone', 5814 proname => 'timetz', provolatile => 's', prorettype => 'timetz', 5815 proargtypes => 'time', prosrc => 'time_timetz' }, 5816{ oid => '2048', descr => 'finite timestamp?', 5817 proname => 'isfinite', prorettype => 'bool', proargtypes => 'timestamp', 5818 prosrc => 'timestamp_finite' }, 5819{ oid => '2049', descr => 'format timestamp to text', 5820 proname => 'to_char', provolatile => 's', prorettype => 'text', 5821 proargtypes => 'timestamp text', prosrc => 'timestamp_to_char' }, 5822{ oid => '2052', 5823 proname => 'timestamp_eq', proleakproof => 't', prorettype => 'bool', 5824 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_eq' }, 5825{ oid => '2053', 5826 proname => 'timestamp_ne', proleakproof => 't', prorettype => 'bool', 5827 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_ne' }, 5828{ oid => '2054', 5829 proname => 'timestamp_lt', proleakproof => 't', prorettype => 'bool', 5830 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_lt' }, 5831{ oid => '2055', 5832 proname => 'timestamp_le', proleakproof => 't', prorettype => 'bool', 5833 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_le' }, 5834{ oid => '2056', 5835 proname => 'timestamp_ge', proleakproof => 't', prorettype => 'bool', 5836 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_ge' }, 5837{ oid => '2057', 5838 proname => 'timestamp_gt', proleakproof => 't', prorettype => 'bool', 5839 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_gt' }, 5840{ oid => '2058', descr => 'date difference preserving months and years', 5841 proname => 'age', prorettype => 'interval', 5842 proargtypes => 'timestamp timestamp', prosrc => 'timestamp_age' }, 5843{ oid => '2059', 5844 descr => 'date difference from today preserving months and years', 5845 proname => 'age', prolang => 'sql', provolatile => 's', 5846 prorettype => 'interval', proargtypes => 'timestamp', 5847 prosrc => 'select pg_catalog.age(cast(current_date as timestamp without time zone), $1)' }, 5848 5849{ oid => '2069', descr => 'adjust timestamp to new time zone', 5850 proname => 'timezone', prorettype => 'timestamptz', 5851 proargtypes => 'text timestamp', prosrc => 'timestamp_zone' }, 5852{ oid => '2070', descr => 'adjust timestamp to new time zone', 5853 proname => 'timezone', prorettype => 'timestamptz', 5854 proargtypes => 'interval timestamp', prosrc => 'timestamp_izone' }, 5855{ oid => '2071', 5856 proname => 'date_pl_interval', prorettype => 'timestamp', 5857 proargtypes => 'date interval', prosrc => 'date_pl_interval' }, 5858{ oid => '2072', 5859 proname => 'date_mi_interval', prorettype => 'timestamp', 5860 proargtypes => 'date interval', prosrc => 'date_mi_interval' }, 5861 5862{ oid => '2073', descr => 'extract text matching regular expression', 5863 proname => 'substring', prorettype => 'text', proargtypes => 'text text', 5864 prosrc => 'textregexsubstr' }, 5865{ oid => '2074', descr => 'extract text matching SQL regular expression', 5866 proname => 'substring', prolang => 'sql', prorettype => 'text', 5867 proargtypes => 'text text text', 5868 prosrc => 'select pg_catalog.substring($1, pg_catalog.similar_to_escape($2, $3))' }, 5869 5870{ oid => '2075', descr => 'convert int8 to bitstring', 5871 proname => 'bit', prorettype => 'bit', proargtypes => 'int8 int4', 5872 prosrc => 'bitfromint8' }, 5873{ oid => '2076', descr => 'convert bitstring to int8', 5874 proname => 'int8', prorettype => 'int8', proargtypes => 'bit', 5875 prosrc => 'bittoint8' }, 5876 5877{ oid => '2077', descr => 'SHOW X as a function', 5878 proname => 'current_setting', provolatile => 's', prorettype => 'text', 5879 proargtypes => 'text', prosrc => 'show_config_by_name' }, 5880{ oid => '3294', 5881 descr => 'SHOW X as a function, optionally no error for missing variable', 5882 proname => 'current_setting', provolatile => 's', prorettype => 'text', 5883 proargtypes => 'text bool', prosrc => 'show_config_by_name_missing_ok' }, 5884{ oid => '2078', descr => 'SET X as a function', 5885 proname => 'set_config', proisstrict => 'f', provolatile => 'v', 5886 proparallel => 'u', prorettype => 'text', proargtypes => 'text text bool', 5887 prosrc => 'set_config_by_name' }, 5888{ oid => '2084', descr => 'SHOW ALL as a function', 5889 proname => 'pg_show_all_settings', prorows => '1000', proretset => 't', 5890 provolatile => 's', prorettype => 'record', proargtypes => '', 5891 proallargtypes => '{text,text,text,text,text,text,text,text,text,text,text,_text,text,text,text,int4,bool}', 5892 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}', 5893 proargnames => '{name,setting,unit,category,short_desc,extra_desc,context,vartype,source,min_val,max_val,enumvals,boot_val,reset_val,sourcefile,sourceline,pending_restart}', 5894 prosrc => 'show_all_settings' }, 5895{ oid => '3329', descr => 'show config file settings', 5896 proname => 'pg_show_all_file_settings', prorows => '1000', proretset => 't', 5897 provolatile => 'v', prorettype => 'record', proargtypes => '', 5898 proallargtypes => '{text,int4,int4,text,text,bool,text}', 5899 proargmodes => '{o,o,o,o,o,o,o}', 5900 proargnames => '{sourcefile,sourceline,seqno,name,setting,applied,error}', 5901 prosrc => 'show_all_file_settings' }, 5902{ oid => '3401', descr => 'show pg_hba.conf rules', 5903 proname => 'pg_hba_file_rules', prorows => '1000', proretset => 't', 5904 provolatile => 'v', prorettype => 'record', proargtypes => '', 5905 proallargtypes => '{int4,text,_text,_text,text,text,text,_text,text}', 5906 proargmodes => '{o,o,o,o,o,o,o,o,o}', 5907 proargnames => '{line_number,type,database,user_name,address,netmask,auth_method,options,error}', 5908 prosrc => 'pg_hba_file_rules' }, 5909{ oid => '1371', descr => 'view system lock information', 5910 proname => 'pg_lock_status', prorows => '1000', proretset => 't', 5911 provolatile => 'v', prorettype => 'record', proargtypes => '', 5912 proallargtypes => '{text,oid,oid,int4,int2,text,xid,oid,oid,int2,text,int4,text,bool,bool}', 5913 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}', 5914 proargnames => '{locktype,database,relation,page,tuple,virtualxid,transactionid,classid,objid,objsubid,virtualtransaction,pid,mode,granted,fastpath}', 5915 prosrc => 'pg_lock_status' }, 5916{ oid => '2561', 5917 descr => 'get array of PIDs of sessions blocking specified backend PID from acquiring a heavyweight lock', 5918 proname => 'pg_blocking_pids', provolatile => 'v', prorettype => '_int4', 5919 proargtypes => 'int4', prosrc => 'pg_blocking_pids' }, 5920{ oid => '3376', 5921 descr => 'get array of PIDs of sessions blocking specified backend PID from acquiring a safe snapshot', 5922 proname => 'pg_safe_snapshot_blocking_pids', provolatile => 'v', 5923 prorettype => '_int4', proargtypes => 'int4', 5924 prosrc => 'pg_safe_snapshot_blocking_pids' }, 5925{ oid => '3378', descr => 'isolationtester support function', 5926 proname => 'pg_isolation_test_session_is_blocked', provolatile => 'v', 5927 prorettype => 'bool', proargtypes => 'int4 _int4', 5928 prosrc => 'pg_isolation_test_session_is_blocked' }, 5929{ oid => '1065', descr => 'view two-phase transactions', 5930 proname => 'pg_prepared_xact', prorows => '1000', proretset => 't', 5931 provolatile => 'v', prorettype => 'record', proargtypes => '', 5932 proallargtypes => '{xid,text,timestamptz,oid,oid}', 5933 proargmodes => '{o,o,o,o,o}', 5934 proargnames => '{transaction,gid,prepared,ownerid,dbid}', 5935 prosrc => 'pg_prepared_xact' }, 5936{ oid => '3819', descr => 'view members of a multixactid', 5937 proname => 'pg_get_multixact_members', prorows => '1000', proretset => 't', 5938 provolatile => 'v', prorettype => 'record', proargtypes => 'xid', 5939 proallargtypes => '{xid,xid,text}', proargmodes => '{i,o,o}', 5940 proargnames => '{multixid,xid,mode}', prosrc => 'pg_get_multixact_members' }, 5941 5942{ oid => '3581', descr => 'get commit timestamp of a transaction', 5943 proname => 'pg_xact_commit_timestamp', provolatile => 'v', 5944 prorettype => 'timestamptz', proargtypes => 'xid', 5945 prosrc => 'pg_xact_commit_timestamp' }, 5946 5947{ oid => '3583', 5948 descr => 'get transaction Id and commit timestamp of latest transaction commit', 5949 proname => 'pg_last_committed_xact', provolatile => 'v', 5950 prorettype => 'record', proargtypes => '', 5951 proallargtypes => '{xid,timestamptz}', proargmodes => '{o,o}', 5952 proargnames => '{xid,timestamp}', prosrc => 'pg_last_committed_xact' }, 5953 5954{ oid => '3537', descr => 'get identification of SQL object', 5955 proname => 'pg_describe_object', provolatile => 's', prorettype => 'text', 5956 proargtypes => 'oid oid int4', prosrc => 'pg_describe_object' }, 5957 5958{ oid => '3839', 5959 descr => 'get machine-parseable identification of SQL object', 5960 proname => 'pg_identify_object', provolatile => 's', prorettype => 'record', 5961 proargtypes => 'oid oid int4', 5962 proallargtypes => '{oid,oid,int4,text,text,text,text}', 5963 proargmodes => '{i,i,i,o,o,o,o}', 5964 proargnames => '{classid,objid,objsubid,type,schema,name,identity}', 5965 prosrc => 'pg_identify_object' }, 5966 5967{ oid => '3382', 5968 descr => 'get identification of SQL object for pg_get_object_address()', 5969 proname => 'pg_identify_object_as_address', provolatile => 's', 5970 prorettype => 'record', proargtypes => 'oid oid int4', 5971 proallargtypes => '{oid,oid,int4,text,_text,_text}', 5972 proargmodes => '{i,i,i,o,o,o}', 5973 proargnames => '{classid,objid,objsubid,type,object_names,object_args}', 5974 prosrc => 'pg_identify_object_as_address' }, 5975 5976{ oid => '3954', 5977 descr => 'get OID-based object address from name/args arrays', 5978 proname => 'pg_get_object_address', provolatile => 's', 5979 prorettype => 'record', proargtypes => 'text _text _text', 5980 proallargtypes => '{text,_text,_text,oid,oid,int4}', 5981 proargmodes => '{i,i,i,o,o,o}', 5982 proargnames => '{type,object_names,object_args,classid,objid,objsubid}', 5983 prosrc => 'pg_get_object_address' }, 5984 5985{ oid => '2079', descr => 'is table visible in search path?', 5986 proname => 'pg_table_is_visible', procost => '10', provolatile => 's', 5987 prorettype => 'bool', proargtypes => 'oid', prosrc => 'pg_table_is_visible' }, 5988{ oid => '2080', descr => 'is type visible in search path?', 5989 proname => 'pg_type_is_visible', procost => '10', provolatile => 's', 5990 prorettype => 'bool', proargtypes => 'oid', prosrc => 'pg_type_is_visible' }, 5991{ oid => '2081', descr => 'is function visible in search path?', 5992 proname => 'pg_function_is_visible', procost => '10', provolatile => 's', 5993 prorettype => 'bool', proargtypes => 'oid', 5994 prosrc => 'pg_function_is_visible' }, 5995{ oid => '2082', descr => 'is operator visible in search path?', 5996 proname => 'pg_operator_is_visible', procost => '10', provolatile => 's', 5997 prorettype => 'bool', proargtypes => 'oid', 5998 prosrc => 'pg_operator_is_visible' }, 5999{ oid => '2083', descr => 'is opclass visible in search path?', 6000 proname => 'pg_opclass_is_visible', procost => '10', provolatile => 's', 6001 prorettype => 'bool', proargtypes => 'oid', 6002 prosrc => 'pg_opclass_is_visible' }, 6003{ oid => '3829', descr => 'is opfamily visible in search path?', 6004 proname => 'pg_opfamily_is_visible', procost => '10', provolatile => 's', 6005 prorettype => 'bool', proargtypes => 'oid', 6006 prosrc => 'pg_opfamily_is_visible' }, 6007{ oid => '2093', descr => 'is conversion visible in search path?', 6008 proname => 'pg_conversion_is_visible', procost => '10', provolatile => 's', 6009 prorettype => 'bool', proargtypes => 'oid', 6010 prosrc => 'pg_conversion_is_visible' }, 6011{ oid => '3403', descr => 'is statistics object visible in search path?', 6012 proname => 'pg_statistics_obj_is_visible', procost => '10', 6013 provolatile => 's', prorettype => 'bool', proargtypes => 'oid', 6014 prosrc => 'pg_statistics_obj_is_visible' }, 6015{ oid => '3756', descr => 'is text search parser visible in search path?', 6016 proname => 'pg_ts_parser_is_visible', procost => '10', provolatile => 's', 6017 prorettype => 'bool', proargtypes => 'oid', 6018 prosrc => 'pg_ts_parser_is_visible' }, 6019{ oid => '3757', descr => 'is text search dictionary visible in search path?', 6020 proname => 'pg_ts_dict_is_visible', procost => '10', provolatile => 's', 6021 prorettype => 'bool', proargtypes => 'oid', 6022 prosrc => 'pg_ts_dict_is_visible' }, 6023{ oid => '3768', descr => 'is text search template visible in search path?', 6024 proname => 'pg_ts_template_is_visible', procost => '10', provolatile => 's', 6025 prorettype => 'bool', proargtypes => 'oid', 6026 prosrc => 'pg_ts_template_is_visible' }, 6027{ oid => '3758', 6028 descr => 'is text search configuration visible in search path?', 6029 proname => 'pg_ts_config_is_visible', procost => '10', provolatile => 's', 6030 prorettype => 'bool', proargtypes => 'oid', 6031 prosrc => 'pg_ts_config_is_visible' }, 6032{ oid => '3815', descr => 'is collation visible in search path?', 6033 proname => 'pg_collation_is_visible', procost => '10', provolatile => 's', 6034 prorettype => 'bool', proargtypes => 'oid', 6035 prosrc => 'pg_collation_is_visible' }, 6036 6037{ oid => '2854', descr => 'get OID of current session\'s temp schema, if any', 6038 proname => 'pg_my_temp_schema', provolatile => 's', proparallel => 'r', 6039 prorettype => 'oid', proargtypes => '', prosrc => 'pg_my_temp_schema' }, 6040{ oid => '2855', descr => 'is schema another session\'s temp schema?', 6041 proname => 'pg_is_other_temp_schema', provolatile => 's', 6042 prorettype => 'bool', proargtypes => 'oid', 6043 prosrc => 'pg_is_other_temp_schema' }, 6044 6045{ oid => '2171', descr => 'cancel a server process\' current query', 6046 proname => 'pg_cancel_backend', provolatile => 'v', prorettype => 'bool', 6047 proargtypes => 'int4', prosrc => 'pg_cancel_backend' }, 6048{ oid => '2096', descr => 'terminate a server process', 6049 proname => 'pg_terminate_backend', provolatile => 'v', prorettype => 'bool', 6050 proargtypes => 'int4', prosrc => 'pg_terminate_backend' }, 6051{ oid => '2172', descr => 'prepare for taking an online backup', 6052 proname => 'pg_start_backup', provolatile => 'v', proparallel => 'r', 6053 prorettype => 'pg_lsn', proargtypes => 'text bool bool', 6054 prosrc => 'pg_start_backup' }, 6055{ oid => '2173', descr => 'finish taking an online backup', 6056 proname => 'pg_stop_backup', provolatile => 'v', proparallel => 'r', 6057 prorettype => 'pg_lsn', proargtypes => '', prosrc => 'pg_stop_backup' }, 6058{ oid => '2739', descr => 'finish taking an online backup', 6059 proname => 'pg_stop_backup', prorows => '1', proretset => 't', 6060 provolatile => 'v', proparallel => 'r', prorettype => 'record', 6061 proargtypes => 'bool bool', proallargtypes => '{bool,bool,pg_lsn,text,text}', 6062 proargmodes => '{i,i,o,o,o}', 6063 proargnames => '{exclusive,wait_for_archive,lsn,labelfile,spcmapfile}', 6064 prosrc => 'pg_stop_backup_v2' }, 6065{ oid => '3813', descr => 'true if server is in online backup', 6066 proname => 'pg_is_in_backup', provolatile => 'v', prorettype => 'bool', 6067 proargtypes => '', prosrc => 'pg_is_in_backup' }, 6068{ oid => '3814', descr => 'start time of an online backup', 6069 proname => 'pg_backup_start_time', provolatile => 's', 6070 prorettype => 'timestamptz', proargtypes => '', 6071 prosrc => 'pg_backup_start_time' }, 6072{ oid => '3436', descr => 'promote standby server', 6073 proname => 'pg_promote', provolatile => 'v', prorettype => 'bool', 6074 proargtypes => 'bool int4', proargnames => '{wait,wait_seconds}', 6075 prosrc => 'pg_promote' }, 6076{ oid => '2848', descr => 'switch to new wal file', 6077 proname => 'pg_switch_wal', provolatile => 'v', prorettype => 'pg_lsn', 6078 proargtypes => '', prosrc => 'pg_switch_wal' }, 6079{ oid => '3098', descr => 'create a named restore point', 6080 proname => 'pg_create_restore_point', provolatile => 'v', 6081 prorettype => 'pg_lsn', proargtypes => 'text', 6082 prosrc => 'pg_create_restore_point' }, 6083{ oid => '2849', descr => 'current wal write location', 6084 proname => 'pg_current_wal_lsn', provolatile => 'v', prorettype => 'pg_lsn', 6085 proargtypes => '', prosrc => 'pg_current_wal_lsn' }, 6086{ oid => '2852', descr => 'current wal insert location', 6087 proname => 'pg_current_wal_insert_lsn', provolatile => 'v', 6088 prorettype => 'pg_lsn', proargtypes => '', 6089 prosrc => 'pg_current_wal_insert_lsn' }, 6090{ oid => '3330', descr => 'current wal flush location', 6091 proname => 'pg_current_wal_flush_lsn', provolatile => 'v', 6092 prorettype => 'pg_lsn', proargtypes => '', 6093 prosrc => 'pg_current_wal_flush_lsn' }, 6094{ oid => '2850', 6095 descr => 'wal filename and byte offset, given a wal location', 6096 proname => 'pg_walfile_name_offset', prorettype => 'record', 6097 proargtypes => 'pg_lsn', proallargtypes => '{pg_lsn,text,int4}', 6098 proargmodes => '{i,o,o}', proargnames => '{lsn,file_name,file_offset}', 6099 prosrc => 'pg_walfile_name_offset' }, 6100{ oid => '2851', descr => 'wal filename, given a wal location', 6101 proname => 'pg_walfile_name', prorettype => 'text', proargtypes => 'pg_lsn', 6102 prosrc => 'pg_walfile_name' }, 6103 6104{ oid => '3165', descr => 'difference in bytes, given two wal locations', 6105 proname => 'pg_wal_lsn_diff', prorettype => 'numeric', 6106 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_wal_lsn_diff' }, 6107 6108{ oid => '3809', descr => 'export a snapshot', 6109 proname => 'pg_export_snapshot', provolatile => 'v', proparallel => 'u', 6110 prorettype => 'text', proargtypes => '', prosrc => 'pg_export_snapshot' }, 6111 6112{ oid => '3810', descr => 'true if server is in recovery', 6113 proname => 'pg_is_in_recovery', provolatile => 'v', prorettype => 'bool', 6114 proargtypes => '', prosrc => 'pg_is_in_recovery' }, 6115 6116{ oid => '3820', descr => 'current wal flush location', 6117 proname => 'pg_last_wal_receive_lsn', provolatile => 'v', 6118 prorettype => 'pg_lsn', proargtypes => '', 6119 prosrc => 'pg_last_wal_receive_lsn' }, 6120{ oid => '3821', descr => 'last wal replay location', 6121 proname => 'pg_last_wal_replay_lsn', provolatile => 'v', 6122 prorettype => 'pg_lsn', proargtypes => '', 6123 prosrc => 'pg_last_wal_replay_lsn' }, 6124{ oid => '3830', descr => 'timestamp of last replay xact', 6125 proname => 'pg_last_xact_replay_timestamp', provolatile => 'v', 6126 prorettype => 'timestamptz', proargtypes => '', 6127 prosrc => 'pg_last_xact_replay_timestamp' }, 6128 6129{ oid => '3071', descr => 'pause wal replay', 6130 proname => 'pg_wal_replay_pause', provolatile => 'v', prorettype => 'void', 6131 proargtypes => '', prosrc => 'pg_wal_replay_pause' }, 6132{ oid => '3072', descr => 'resume wal replay, if it was paused', 6133 proname => 'pg_wal_replay_resume', provolatile => 'v', prorettype => 'void', 6134 proargtypes => '', prosrc => 'pg_wal_replay_resume' }, 6135{ oid => '3073', descr => 'true if wal replay is paused', 6136 proname => 'pg_is_wal_replay_paused', provolatile => 'v', 6137 prorettype => 'bool', proargtypes => '', 6138 prosrc => 'pg_is_wal_replay_paused' }, 6139 6140{ oid => '2621', descr => 'reload configuration files', 6141 proname => 'pg_reload_conf', provolatile => 'v', prorettype => 'bool', 6142 proargtypes => '', prosrc => 'pg_reload_conf' }, 6143{ oid => '2622', descr => 'rotate log file', 6144 proname => 'pg_rotate_logfile', provolatile => 'v', prorettype => 'bool', 6145 proargtypes => '', prosrc => 'pg_rotate_logfile_v2' }, 6146{ oid => '4099', descr => 'rotate log file - old version for adminpack 1.0', 6147 proname => 'pg_rotate_logfile_old', provolatile => 'v', prorettype => 'bool', 6148 proargtypes => '', prosrc => 'pg_rotate_logfile' }, 6149{ oid => '3800', descr => 'current logging collector file location', 6150 proname => 'pg_current_logfile', proisstrict => 'f', provolatile => 'v', 6151 prorettype => 'text', proargtypes => '', prosrc => 'pg_current_logfile' }, 6152{ oid => '3801', descr => 'current logging collector file location', 6153 proname => 'pg_current_logfile', proisstrict => 'f', provolatile => 'v', 6154 prorettype => 'text', proargtypes => 'text', 6155 prosrc => 'pg_current_logfile_1arg' }, 6156 6157{ oid => '2623', descr => 'get information about file', 6158 proname => 'pg_stat_file', provolatile => 'v', prorettype => 'record', 6159 proargtypes => 'text', 6160 proallargtypes => '{text,int8,timestamptz,timestamptz,timestamptz,timestamptz,bool}', 6161 proargmodes => '{i,o,o,o,o,o,o}', 6162 proargnames => '{filename,size,access,modification,change,creation,isdir}', 6163 prosrc => 'pg_stat_file_1arg' }, 6164{ oid => '3307', descr => 'get information about file', 6165 proname => 'pg_stat_file', provolatile => 'v', prorettype => 'record', 6166 proargtypes => 'text bool', 6167 proallargtypes => '{text,bool,int8,timestamptz,timestamptz,timestamptz,timestamptz,bool}', 6168 proargmodes => '{i,i,o,o,o,o,o,o}', 6169 proargnames => '{filename,missing_ok,size,access,modification,change,creation,isdir}', 6170 prosrc => 'pg_stat_file' }, 6171{ oid => '2624', descr => 'read text from a file', 6172 proname => 'pg_read_file', provolatile => 'v', prorettype => 'text', 6173 proargtypes => 'text int8 int8', prosrc => 'pg_read_file_off_len' }, 6174{ oid => '3293', descr => 'read text from a file', 6175 proname => 'pg_read_file', provolatile => 'v', prorettype => 'text', 6176 proargtypes => 'text int8 int8 bool', prosrc => 'pg_read_file_v2' }, 6177{ oid => '4100', 6178 descr => 'read text from a file - old version for adminpack 1.0', 6179 proname => 'pg_read_file_old', provolatile => 'v', prorettype => 'text', 6180 proargtypes => 'text int8 int8', prosrc => 'pg_read_file' }, 6181{ oid => '3826', descr => 'read text from a file', 6182 proname => 'pg_read_file', provolatile => 'v', prorettype => 'text', 6183 proargtypes => 'text', prosrc => 'pg_read_file_all' }, 6184{ oid => '3827', descr => 'read bytea from a file', 6185 proname => 'pg_read_binary_file', provolatile => 'v', prorettype => 'bytea', 6186 proargtypes => 'text int8 int8', prosrc => 'pg_read_binary_file_off_len' }, 6187{ oid => '3295', descr => 'read bytea from a file', 6188 proname => 'pg_read_binary_file', provolatile => 'v', prorettype => 'bytea', 6189 proargtypes => 'text int8 int8 bool', prosrc => 'pg_read_binary_file' }, 6190{ oid => '3828', descr => 'read bytea from a file', 6191 proname => 'pg_read_binary_file', provolatile => 'v', prorettype => 'bytea', 6192 proargtypes => 'text', prosrc => 'pg_read_binary_file_all' }, 6193{ oid => '2625', descr => 'list all files in a directory', 6194 proname => 'pg_ls_dir', prorows => '1000', proretset => 't', 6195 provolatile => 'v', prorettype => 'text', proargtypes => 'text', 6196 prosrc => 'pg_ls_dir_1arg' }, 6197{ oid => '3297', descr => 'list all files in a directory', 6198 proname => 'pg_ls_dir', prorows => '1000', proretset => 't', 6199 provolatile => 'v', prorettype => 'text', proargtypes => 'text bool bool', 6200 prosrc => 'pg_ls_dir' }, 6201{ oid => '2626', descr => 'sleep for the specified time in seconds', 6202 proname => 'pg_sleep', provolatile => 'v', prorettype => 'void', 6203 proargtypes => 'float8', prosrc => 'pg_sleep' }, 6204{ oid => '3935', descr => 'sleep for the specified interval', 6205 proname => 'pg_sleep_for', prolang => 'sql', provolatile => 'v', 6206 prorettype => 'void', proargtypes => 'interval', 6207 prosrc => 'select pg_catalog.pg_sleep(extract(epoch from pg_catalog.clock_timestamp() operator(pg_catalog.+) $1) operator(pg_catalog.-) extract(epoch from pg_catalog.clock_timestamp()))' }, 6208{ oid => '3936', descr => 'sleep until the specified time', 6209 proname => 'pg_sleep_until', prolang => 'sql', provolatile => 'v', 6210 prorettype => 'void', proargtypes => 'timestamptz', 6211 prosrc => 'select pg_catalog.pg_sleep(extract(epoch from $1) operator(pg_catalog.-) extract(epoch from pg_catalog.clock_timestamp()))' }, 6212{ oid => '315', descr => 'Is JIT compilation available in this session?', 6213 proname => 'pg_jit_available', provolatile => 'v', prorettype => 'bool', 6214 proargtypes => '', prosrc => 'pg_jit_available' }, 6215 6216{ oid => '2971', descr => 'convert boolean to text', 6217 proname => 'text', prorettype => 'text', proargtypes => 'bool', 6218 prosrc => 'booltext' }, 6219 6220# Aggregates (moved here from pg_aggregate for 7.3) 6221 6222{ oid => '2100', 6223 descr => 'the average (arithmetic mean) as numeric of all bigint values', 6224 proname => 'avg', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6225 proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6226{ oid => '2101', 6227 descr => 'the average (arithmetic mean) as numeric of all integer values', 6228 proname => 'avg', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6229 proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6230{ oid => '2102', 6231 descr => 'the average (arithmetic mean) as numeric of all smallint values', 6232 proname => 'avg', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6233 proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6234{ oid => '2103', 6235 descr => 'the average (arithmetic mean) as numeric of all numeric values', 6236 proname => 'avg', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6237 proargtypes => 'numeric', prosrc => 'aggregate_dummy' }, 6238{ oid => '2104', 6239 descr => 'the average (arithmetic mean) as float8 of all float4 values', 6240 proname => 'avg', prokind => 'a', proisstrict => 'f', prorettype => 'float8', 6241 proargtypes => 'float4', prosrc => 'aggregate_dummy' }, 6242{ oid => '2105', 6243 descr => 'the average (arithmetic mean) as float8 of all float8 values', 6244 proname => 'avg', prokind => 'a', proisstrict => 'f', prorettype => 'float8', 6245 proargtypes => 'float8', prosrc => 'aggregate_dummy' }, 6246{ oid => '2106', 6247 descr => 'the average (arithmetic mean) as interval of all interval values', 6248 proname => 'avg', prokind => 'a', proisstrict => 'f', 6249 prorettype => 'interval', proargtypes => 'interval', 6250 prosrc => 'aggregate_dummy' }, 6251 6252{ oid => '2107', descr => 'sum as numeric across all bigint input values', 6253 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6254 proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6255{ oid => '2108', descr => 'sum as bigint across all integer input values', 6256 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 6257 proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6258{ oid => '2109', descr => 'sum as bigint across all smallint input values', 6259 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 6260 proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6261{ oid => '2110', descr => 'sum as float4 across all float4 input values', 6262 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'float4', 6263 proargtypes => 'float4', prosrc => 'aggregate_dummy' }, 6264{ oid => '2111', descr => 'sum as float8 across all float8 input values', 6265 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'float8', 6266 proargtypes => 'float8', prosrc => 'aggregate_dummy' }, 6267{ oid => '2112', descr => 'sum as money across all money input values', 6268 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'money', 6269 proargtypes => 'money', prosrc => 'aggregate_dummy' }, 6270{ oid => '2113', descr => 'sum as interval across all interval input values', 6271 proname => 'sum', prokind => 'a', proisstrict => 'f', 6272 prorettype => 'interval', proargtypes => 'interval', 6273 prosrc => 'aggregate_dummy' }, 6274{ oid => '2114', descr => 'sum as numeric across all numeric input values', 6275 proname => 'sum', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6276 proargtypes => 'numeric', prosrc => 'aggregate_dummy' }, 6277 6278{ oid => '2115', descr => 'maximum value of all bigint input values', 6279 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 6280 proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6281{ oid => '2116', descr => 'maximum value of all integer input values', 6282 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'int4', 6283 proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6284{ oid => '2117', descr => 'maximum value of all smallint input values', 6285 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'int2', 6286 proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6287{ oid => '2118', descr => 'maximum value of all oid input values', 6288 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'oid', 6289 proargtypes => 'oid', prosrc => 'aggregate_dummy' }, 6290{ oid => '2119', descr => 'maximum value of all float4 input values', 6291 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'float4', 6292 proargtypes => 'float4', prosrc => 'aggregate_dummy' }, 6293{ oid => '2120', descr => 'maximum value of all float8 input values', 6294 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'float8', 6295 proargtypes => 'float8', prosrc => 'aggregate_dummy' }, 6296{ oid => '2122', descr => 'maximum value of all date input values', 6297 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'date', 6298 proargtypes => 'date', prosrc => 'aggregate_dummy' }, 6299{ oid => '2123', descr => 'maximum value of all time input values', 6300 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'time', 6301 proargtypes => 'time', prosrc => 'aggregate_dummy' }, 6302{ oid => '2124', 6303 descr => 'maximum value of all time with time zone input values', 6304 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'timetz', 6305 proargtypes => 'timetz', prosrc => 'aggregate_dummy' }, 6306{ oid => '2125', descr => 'maximum value of all money input values', 6307 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'money', 6308 proargtypes => 'money', prosrc => 'aggregate_dummy' }, 6309{ oid => '2126', descr => 'maximum value of all timestamp input values', 6310 proname => 'max', prokind => 'a', proisstrict => 'f', 6311 prorettype => 'timestamp', proargtypes => 'timestamp', 6312 prosrc => 'aggregate_dummy' }, 6313{ oid => '2127', 6314 descr => 'maximum value of all timestamp with time zone input values', 6315 proname => 'max', prokind => 'a', proisstrict => 'f', 6316 prorettype => 'timestamptz', proargtypes => 'timestamptz', 6317 prosrc => 'aggregate_dummy' }, 6318{ oid => '2128', descr => 'maximum value of all interval input values', 6319 proname => 'max', prokind => 'a', proisstrict => 'f', 6320 prorettype => 'interval', proargtypes => 'interval', 6321 prosrc => 'aggregate_dummy' }, 6322{ oid => '2129', descr => 'maximum value of all text input values', 6323 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'text', 6324 proargtypes => 'text', prosrc => 'aggregate_dummy' }, 6325{ oid => '2130', descr => 'maximum value of all numeric input values', 6326 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6327 proargtypes => 'numeric', prosrc => 'aggregate_dummy' }, 6328{ oid => '2050', descr => 'maximum value of all anyarray input values', 6329 proname => 'max', prokind => 'a', proisstrict => 'f', 6330 prorettype => 'anyarray', proargtypes => 'anyarray', 6331 prosrc => 'aggregate_dummy' }, 6332{ oid => '2244', descr => 'maximum value of all bpchar input values', 6333 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'bpchar', 6334 proargtypes => 'bpchar', prosrc => 'aggregate_dummy' }, 6335{ oid => '2797', descr => 'maximum value of all tid input values', 6336 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'tid', 6337 proargtypes => 'tid', prosrc => 'aggregate_dummy' }, 6338{ oid => '3564', descr => 'maximum value of all inet input values', 6339 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'inet', 6340 proargtypes => 'inet', prosrc => 'aggregate_dummy' }, 6341{ oid => '4189', descr => 'maximum value of all pg_lsn input values', 6342 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'pg_lsn', 6343 proargtypes => 'pg_lsn', prosrc => 'aggregate_dummy' }, 6344 6345{ oid => '2131', descr => 'minimum value of all bigint input values', 6346 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 6347 proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6348{ oid => '2132', descr => 'minimum value of all integer input values', 6349 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'int4', 6350 proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6351{ oid => '2133', descr => 'minimum value of all smallint input values', 6352 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'int2', 6353 proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6354{ oid => '2134', descr => 'minimum value of all oid input values', 6355 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'oid', 6356 proargtypes => 'oid', prosrc => 'aggregate_dummy' }, 6357{ oid => '2135', descr => 'minimum value of all float4 input values', 6358 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'float4', 6359 proargtypes => 'float4', prosrc => 'aggregate_dummy' }, 6360{ oid => '2136', descr => 'minimum value of all float8 input values', 6361 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'float8', 6362 proargtypes => 'float8', prosrc => 'aggregate_dummy' }, 6363{ oid => '2138', descr => 'minimum value of all date input values', 6364 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'date', 6365 proargtypes => 'date', prosrc => 'aggregate_dummy' }, 6366{ oid => '2139', descr => 'minimum value of all time input values', 6367 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'time', 6368 proargtypes => 'time', prosrc => 'aggregate_dummy' }, 6369{ oid => '2140', 6370 descr => 'minimum value of all time with time zone input values', 6371 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'timetz', 6372 proargtypes => 'timetz', prosrc => 'aggregate_dummy' }, 6373{ oid => '2141', descr => 'minimum value of all money input values', 6374 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'money', 6375 proargtypes => 'money', prosrc => 'aggregate_dummy' }, 6376{ oid => '2142', descr => 'minimum value of all timestamp input values', 6377 proname => 'min', prokind => 'a', proisstrict => 'f', 6378 prorettype => 'timestamp', proargtypes => 'timestamp', 6379 prosrc => 'aggregate_dummy' }, 6380{ oid => '2143', 6381 descr => 'minimum value of all timestamp with time zone input values', 6382 proname => 'min', prokind => 'a', proisstrict => 'f', 6383 prorettype => 'timestamptz', proargtypes => 'timestamptz', 6384 prosrc => 'aggregate_dummy' }, 6385{ oid => '2144', descr => 'minimum value of all interval input values', 6386 proname => 'min', prokind => 'a', proisstrict => 'f', 6387 prorettype => 'interval', proargtypes => 'interval', 6388 prosrc => 'aggregate_dummy' }, 6389{ oid => '2145', descr => 'minimum value of all text values', 6390 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'text', 6391 proargtypes => 'text', prosrc => 'aggregate_dummy' }, 6392{ oid => '2146', descr => 'minimum value of all numeric input values', 6393 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'numeric', 6394 proargtypes => 'numeric', prosrc => 'aggregate_dummy' }, 6395{ oid => '2051', descr => 'minimum value of all anyarray input values', 6396 proname => 'min', prokind => 'a', proisstrict => 'f', 6397 prorettype => 'anyarray', proargtypes => 'anyarray', 6398 prosrc => 'aggregate_dummy' }, 6399{ oid => '2245', descr => 'minimum value of all bpchar input values', 6400 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'bpchar', 6401 proargtypes => 'bpchar', prosrc => 'aggregate_dummy' }, 6402{ oid => '2798', descr => 'minimum value of all tid input values', 6403 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'tid', 6404 proargtypes => 'tid', prosrc => 'aggregate_dummy' }, 6405{ oid => '3565', descr => 'minimum value of all inet input values', 6406 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'inet', 6407 proargtypes => 'inet', prosrc => 'aggregate_dummy' }, 6408{ oid => '4190', descr => 'minimum value of all pg_lsn input values', 6409 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'pg_lsn', 6410 proargtypes => 'pg_lsn', prosrc => 'aggregate_dummy' }, 6411 6412# count has two forms: count(any) and count(*) 6413{ oid => '2147', 6414 descr => 'number of input rows for which the input expression is not null', 6415 proname => 'count', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 6416 proargtypes => 'any', prosrc => 'aggregate_dummy' }, 6417{ oid => '2803', descr => 'number of input rows', 6418 proname => 'count', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 6419 proargtypes => '', prosrc => 'aggregate_dummy' }, 6420 6421{ oid => '2718', 6422 descr => 'population variance of bigint input values (square of the population standard deviation)', 6423 proname => 'var_pop', prokind => 'a', proisstrict => 'f', 6424 prorettype => 'numeric', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6425{ oid => '2719', 6426 descr => 'population variance of integer input values (square of the population standard deviation)', 6427 proname => 'var_pop', prokind => 'a', proisstrict => 'f', 6428 prorettype => 'numeric', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6429{ oid => '2720', 6430 descr => 'population variance of smallint input values (square of the population standard deviation)', 6431 proname => 'var_pop', prokind => 'a', proisstrict => 'f', 6432 prorettype => 'numeric', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6433{ oid => '2721', 6434 descr => 'population variance of float4 input values (square of the population standard deviation)', 6435 proname => 'var_pop', prokind => 'a', proisstrict => 'f', 6436 prorettype => 'float8', proargtypes => 'float4', 6437 prosrc => 'aggregate_dummy' }, 6438{ oid => '2722', 6439 descr => 'population variance of float8 input values (square of the population standard deviation)', 6440 proname => 'var_pop', prokind => 'a', proisstrict => 'f', 6441 prorettype => 'float8', proargtypes => 'float8', 6442 prosrc => 'aggregate_dummy' }, 6443{ oid => '2723', 6444 descr => 'population variance of numeric input values (square of the population standard deviation)', 6445 proname => 'var_pop', prokind => 'a', proisstrict => 'f', 6446 prorettype => 'numeric', proargtypes => 'numeric', 6447 prosrc => 'aggregate_dummy' }, 6448 6449{ oid => '2641', 6450 descr => 'sample variance of bigint input values (square of the sample standard deviation)', 6451 proname => 'var_samp', prokind => 'a', proisstrict => 'f', 6452 prorettype => 'numeric', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6453{ oid => '2642', 6454 descr => 'sample variance of integer input values (square of the sample standard deviation)', 6455 proname => 'var_samp', prokind => 'a', proisstrict => 'f', 6456 prorettype => 'numeric', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6457{ oid => '2643', 6458 descr => 'sample variance of smallint input values (square of the sample standard deviation)', 6459 proname => 'var_samp', prokind => 'a', proisstrict => 'f', 6460 prorettype => 'numeric', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6461{ oid => '2644', 6462 descr => 'sample variance of float4 input values (square of the sample standard deviation)', 6463 proname => 'var_samp', prokind => 'a', proisstrict => 'f', 6464 prorettype => 'float8', proargtypes => 'float4', 6465 prosrc => 'aggregate_dummy' }, 6466 6467{ oid => '2645', 6468 descr => 'sample variance of float8 input values (square of the sample standard deviation)', 6469 proname => 'var_samp', prokind => 'a', proisstrict => 'f', 6470 prorettype => 'float8', proargtypes => 'float8', 6471 prosrc => 'aggregate_dummy' }, 6472{ oid => '2646', 6473 descr => 'sample variance of numeric input values (square of the sample standard deviation)', 6474 proname => 'var_samp', prokind => 'a', proisstrict => 'f', 6475 prorettype => 'numeric', proargtypes => 'numeric', 6476 prosrc => 'aggregate_dummy' }, 6477 6478{ oid => '2148', descr => 'historical alias for var_samp', 6479 proname => 'variance', prokind => 'a', proisstrict => 'f', 6480 prorettype => 'numeric', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6481{ oid => '2149', descr => 'historical alias for var_samp', 6482 proname => 'variance', prokind => 'a', proisstrict => 'f', 6483 prorettype => 'numeric', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6484{ oid => '2150', descr => 'historical alias for var_samp', 6485 proname => 'variance', prokind => 'a', proisstrict => 'f', 6486 prorettype => 'numeric', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6487{ oid => '2151', descr => 'historical alias for var_samp', 6488 proname => 'variance', prokind => 'a', proisstrict => 'f', 6489 prorettype => 'float8', proargtypes => 'float4', 6490 prosrc => 'aggregate_dummy' }, 6491{ oid => '2152', descr => 'historical alias for var_samp', 6492 proname => 'variance', prokind => 'a', proisstrict => 'f', 6493 prorettype => 'float8', proargtypes => 'float8', 6494 prosrc => 'aggregate_dummy' }, 6495{ oid => '2153', descr => 'historical alias for var_samp', 6496 proname => 'variance', prokind => 'a', proisstrict => 'f', 6497 prorettype => 'numeric', proargtypes => 'numeric', 6498 prosrc => 'aggregate_dummy' }, 6499 6500{ oid => '2724', 6501 descr => 'population standard deviation of bigint input values', 6502 proname => 'stddev_pop', prokind => 'a', proisstrict => 'f', 6503 prorettype => 'numeric', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6504{ oid => '2725', 6505 descr => 'population standard deviation of integer input values', 6506 proname => 'stddev_pop', prokind => 'a', proisstrict => 'f', 6507 prorettype => 'numeric', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6508{ oid => '2726', 6509 descr => 'population standard deviation of smallint input values', 6510 proname => 'stddev_pop', prokind => 'a', proisstrict => 'f', 6511 prorettype => 'numeric', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6512{ oid => '2727', 6513 descr => 'population standard deviation of float4 input values', 6514 proname => 'stddev_pop', prokind => 'a', proisstrict => 'f', 6515 prorettype => 'float8', proargtypes => 'float4', 6516 prosrc => 'aggregate_dummy' }, 6517{ oid => '2728', 6518 descr => 'population standard deviation of float8 input values', 6519 proname => 'stddev_pop', prokind => 'a', proisstrict => 'f', 6520 prorettype => 'float8', proargtypes => 'float8', 6521 prosrc => 'aggregate_dummy' }, 6522{ oid => '2729', 6523 descr => 'population standard deviation of numeric input values', 6524 proname => 'stddev_pop', prokind => 'a', proisstrict => 'f', 6525 prorettype => 'numeric', proargtypes => 'numeric', 6526 prosrc => 'aggregate_dummy' }, 6527 6528{ oid => '2712', descr => 'sample standard deviation of bigint input values', 6529 proname => 'stddev_samp', prokind => 'a', proisstrict => 'f', 6530 prorettype => 'numeric', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6531{ oid => '2713', descr => 'sample standard deviation of integer input values', 6532 proname => 'stddev_samp', prokind => 'a', proisstrict => 'f', 6533 prorettype => 'numeric', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6534{ oid => '2714', 6535 descr => 'sample standard deviation of smallint input values', 6536 proname => 'stddev_samp', prokind => 'a', proisstrict => 'f', 6537 prorettype => 'numeric', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6538{ oid => '2715', descr => 'sample standard deviation of float4 input values', 6539 proname => 'stddev_samp', prokind => 'a', proisstrict => 'f', 6540 prorettype => 'float8', proargtypes => 'float4', 6541 prosrc => 'aggregate_dummy' }, 6542{ oid => '2716', descr => 'sample standard deviation of float8 input values', 6543 proname => 'stddev_samp', prokind => 'a', proisstrict => 'f', 6544 prorettype => 'float8', proargtypes => 'float8', 6545 prosrc => 'aggregate_dummy' }, 6546{ oid => '2717', descr => 'sample standard deviation of numeric input values', 6547 proname => 'stddev_samp', prokind => 'a', proisstrict => 'f', 6548 prorettype => 'numeric', proargtypes => 'numeric', 6549 prosrc => 'aggregate_dummy' }, 6550 6551{ oid => '2154', descr => 'historical alias for stddev_samp', 6552 proname => 'stddev', prokind => 'a', proisstrict => 'f', 6553 prorettype => 'numeric', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 6554{ oid => '2155', descr => 'historical alias for stddev_samp', 6555 proname => 'stddev', prokind => 'a', proisstrict => 'f', 6556 prorettype => 'numeric', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 6557{ oid => '2156', descr => 'historical alias for stddev_samp', 6558 proname => 'stddev', prokind => 'a', proisstrict => 'f', 6559 prorettype => 'numeric', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 6560{ oid => '2157', descr => 'historical alias for stddev_samp', 6561 proname => 'stddev', prokind => 'a', proisstrict => 'f', 6562 prorettype => 'float8', proargtypes => 'float4', 6563 prosrc => 'aggregate_dummy' }, 6564{ oid => '2158', descr => 'historical alias for stddev_samp', 6565 proname => 'stddev', prokind => 'a', proisstrict => 'f', 6566 prorettype => 'float8', proargtypes => 'float8', 6567 prosrc => 'aggregate_dummy' }, 6568{ oid => '2159', descr => 'historical alias for stddev_samp', 6569 proname => 'stddev', prokind => 'a', proisstrict => 'f', 6570 prorettype => 'numeric', proargtypes => 'numeric', 6571 prosrc => 'aggregate_dummy' }, 6572 6573{ oid => '2818', 6574 descr => 'number of input rows in which both expressions are not null', 6575 proname => 'regr_count', prokind => 'a', proisstrict => 'f', 6576 prorettype => 'int8', proargtypes => 'float8 float8', 6577 prosrc => 'aggregate_dummy' }, 6578{ oid => '2819', 6579 descr => 'sum of squares of the independent variable (sum(X^2) - sum(X)^2/N)', 6580 proname => 'regr_sxx', prokind => 'a', proisstrict => 'f', 6581 prorettype => 'float8', proargtypes => 'float8 float8', 6582 prosrc => 'aggregate_dummy' }, 6583{ oid => '2820', 6584 descr => 'sum of squares of the dependent variable (sum(Y^2) - sum(Y)^2/N)', 6585 proname => 'regr_syy', prokind => 'a', proisstrict => 'f', 6586 prorettype => 'float8', proargtypes => 'float8 float8', 6587 prosrc => 'aggregate_dummy' }, 6588{ oid => '2821', 6589 descr => 'sum of products of independent times dependent variable (sum(X*Y) - sum(X) * sum(Y)/N)', 6590 proname => 'regr_sxy', prokind => 'a', proisstrict => 'f', 6591 prorettype => 'float8', proargtypes => 'float8 float8', 6592 prosrc => 'aggregate_dummy' }, 6593{ oid => '2822', descr => 'average of the independent variable (sum(X)/N)', 6594 proname => 'regr_avgx', prokind => 'a', proisstrict => 'f', 6595 prorettype => 'float8', proargtypes => 'float8 float8', 6596 prosrc => 'aggregate_dummy' }, 6597{ oid => '2823', descr => 'average of the dependent variable (sum(Y)/N)', 6598 proname => 'regr_avgy', prokind => 'a', proisstrict => 'f', 6599 prorettype => 'float8', proargtypes => 'float8 float8', 6600 prosrc => 'aggregate_dummy' }, 6601{ oid => '2824', descr => 'square of the correlation coefficient', 6602 proname => 'regr_r2', prokind => 'a', proisstrict => 'f', 6603 prorettype => 'float8', proargtypes => 'float8 float8', 6604 prosrc => 'aggregate_dummy' }, 6605{ oid => '2825', 6606 descr => 'slope of the least-squares-fit linear equation determined by the (X, Y) pairs', 6607 proname => 'regr_slope', prokind => 'a', proisstrict => 'f', 6608 prorettype => 'float8', proargtypes => 'float8 float8', 6609 prosrc => 'aggregate_dummy' }, 6610{ oid => '2826', 6611 descr => 'y-intercept of the least-squares-fit linear equation determined by the (X, Y) pairs', 6612 proname => 'regr_intercept', prokind => 'a', proisstrict => 'f', 6613 prorettype => 'float8', proargtypes => 'float8 float8', 6614 prosrc => 'aggregate_dummy' }, 6615 6616{ oid => '2827', descr => 'population covariance', 6617 proname => 'covar_pop', prokind => 'a', proisstrict => 'f', 6618 prorettype => 'float8', proargtypes => 'float8 float8', 6619 prosrc => 'aggregate_dummy' }, 6620{ oid => '2828', descr => 'sample covariance', 6621 proname => 'covar_samp', prokind => 'a', proisstrict => 'f', 6622 prorettype => 'float8', proargtypes => 'float8 float8', 6623 prosrc => 'aggregate_dummy' }, 6624{ oid => '2829', descr => 'correlation coefficient', 6625 proname => 'corr', prokind => 'a', proisstrict => 'f', prorettype => 'float8', 6626 proargtypes => 'float8 float8', prosrc => 'aggregate_dummy' }, 6627 6628{ oid => '2160', 6629 proname => 'text_pattern_lt', proleakproof => 't', prorettype => 'bool', 6630 proargtypes => 'text text', prosrc => 'text_pattern_lt' }, 6631{ oid => '2161', 6632 proname => 'text_pattern_le', proleakproof => 't', prorettype => 'bool', 6633 proargtypes => 'text text', prosrc => 'text_pattern_le' }, 6634{ oid => '2163', 6635 proname => 'text_pattern_ge', proleakproof => 't', prorettype => 'bool', 6636 proargtypes => 'text text', prosrc => 'text_pattern_ge' }, 6637{ oid => '2164', 6638 proname => 'text_pattern_gt', proleakproof => 't', prorettype => 'bool', 6639 proargtypes => 'text text', prosrc => 'text_pattern_gt' }, 6640{ oid => '2166', descr => 'less-equal-greater', 6641 proname => 'bttext_pattern_cmp', proleakproof => 't', prorettype => 'int4', 6642 proargtypes => 'text text', prosrc => 'bttext_pattern_cmp' }, 6643{ oid => '3332', descr => 'sort support', 6644 proname => 'bttext_pattern_sortsupport', prorettype => 'void', 6645 proargtypes => 'internal', prosrc => 'bttext_pattern_sortsupport' }, 6646 6647{ oid => '2174', 6648 proname => 'bpchar_pattern_lt', proleakproof => 't', prorettype => 'bool', 6649 proargtypes => 'bpchar bpchar', prosrc => 'bpchar_pattern_lt' }, 6650{ oid => '2175', 6651 proname => 'bpchar_pattern_le', proleakproof => 't', prorettype => 'bool', 6652 proargtypes => 'bpchar bpchar', prosrc => 'bpchar_pattern_le' }, 6653{ oid => '2177', 6654 proname => 'bpchar_pattern_ge', proleakproof => 't', prorettype => 'bool', 6655 proargtypes => 'bpchar bpchar', prosrc => 'bpchar_pattern_ge' }, 6656{ oid => '2178', 6657 proname => 'bpchar_pattern_gt', proleakproof => 't', prorettype => 'bool', 6658 proargtypes => 'bpchar bpchar', prosrc => 'bpchar_pattern_gt' }, 6659{ oid => '2180', descr => 'less-equal-greater', 6660 proname => 'btbpchar_pattern_cmp', proleakproof => 't', prorettype => 'int4', 6661 proargtypes => 'bpchar bpchar', prosrc => 'btbpchar_pattern_cmp' }, 6662{ oid => '3333', descr => 'sort support', 6663 proname => 'btbpchar_pattern_sortsupport', prorettype => 'void', 6664 proargtypes => 'internal', prosrc => 'btbpchar_pattern_sortsupport' }, 6665 6666{ oid => '2188', descr => 'less-equal-greater', 6667 proname => 'btint48cmp', proleakproof => 't', prorettype => 'int4', 6668 proargtypes => 'int4 int8', prosrc => 'btint48cmp' }, 6669{ oid => '2189', descr => 'less-equal-greater', 6670 proname => 'btint84cmp', proleakproof => 't', prorettype => 'int4', 6671 proargtypes => 'int8 int4', prosrc => 'btint84cmp' }, 6672{ oid => '2190', descr => 'less-equal-greater', 6673 proname => 'btint24cmp', proleakproof => 't', prorettype => 'int4', 6674 proargtypes => 'int2 int4', prosrc => 'btint24cmp' }, 6675{ oid => '2191', descr => 'less-equal-greater', 6676 proname => 'btint42cmp', proleakproof => 't', prorettype => 'int4', 6677 proargtypes => 'int4 int2', prosrc => 'btint42cmp' }, 6678{ oid => '2192', descr => 'less-equal-greater', 6679 proname => 'btint28cmp', proleakproof => 't', prorettype => 'int4', 6680 proargtypes => 'int2 int8', prosrc => 'btint28cmp' }, 6681{ oid => '2193', descr => 'less-equal-greater', 6682 proname => 'btint82cmp', proleakproof => 't', prorettype => 'int4', 6683 proargtypes => 'int8 int2', prosrc => 'btint82cmp' }, 6684{ oid => '2194', descr => 'less-equal-greater', 6685 proname => 'btfloat48cmp', proleakproof => 't', prorettype => 'int4', 6686 proargtypes => 'float4 float8', prosrc => 'btfloat48cmp' }, 6687{ oid => '2195', descr => 'less-equal-greater', 6688 proname => 'btfloat84cmp', proleakproof => 't', prorettype => 'int4', 6689 proargtypes => 'float8 float4', prosrc => 'btfloat84cmp' }, 6690 6691{ oid => '2212', descr => 'I/O', 6692 proname => 'regprocedurein', provolatile => 's', prorettype => 'regprocedure', 6693 proargtypes => 'cstring', prosrc => 'regprocedurein' }, 6694{ oid => '2213', descr => 'I/O', 6695 proname => 'regprocedureout', provolatile => 's', prorettype => 'cstring', 6696 proargtypes => 'regprocedure', prosrc => 'regprocedureout' }, 6697{ oid => '2214', descr => 'I/O', 6698 proname => 'regoperin', provolatile => 's', prorettype => 'regoper', 6699 proargtypes => 'cstring', prosrc => 'regoperin' }, 6700{ oid => '2215', descr => 'I/O', 6701 proname => 'regoperout', provolatile => 's', prorettype => 'cstring', 6702 proargtypes => 'regoper', prosrc => 'regoperout' }, 6703{ oid => '3492', descr => 'convert operator name to regoper', 6704 proname => 'to_regoper', provolatile => 's', prorettype => 'regoper', 6705 proargtypes => 'text', prosrc => 'to_regoper' }, 6706{ oid => '3476', descr => 'convert operator name to regoperator', 6707 proname => 'to_regoperator', provolatile => 's', prorettype => 'regoperator', 6708 proargtypes => 'text', prosrc => 'to_regoperator' }, 6709{ oid => '2216', descr => 'I/O', 6710 proname => 'regoperatorin', provolatile => 's', prorettype => 'regoperator', 6711 proargtypes => 'cstring', prosrc => 'regoperatorin' }, 6712{ oid => '2217', descr => 'I/O', 6713 proname => 'regoperatorout', provolatile => 's', prorettype => 'cstring', 6714 proargtypes => 'regoperator', prosrc => 'regoperatorout' }, 6715{ oid => '2218', descr => 'I/O', 6716 proname => 'regclassin', provolatile => 's', prorettype => 'regclass', 6717 proargtypes => 'cstring', prosrc => 'regclassin' }, 6718{ oid => '2219', descr => 'I/O', 6719 proname => 'regclassout', provolatile => 's', prorettype => 'cstring', 6720 proargtypes => 'regclass', prosrc => 'regclassout' }, 6721{ oid => '3495', descr => 'convert classname to regclass', 6722 proname => 'to_regclass', provolatile => 's', prorettype => 'regclass', 6723 proargtypes => 'text', prosrc => 'to_regclass' }, 6724{ oid => '4193', descr => 'I/O', 6725 proname => 'regcollationin', provolatile => 's', prorettype => 'regcollation', 6726 proargtypes => 'cstring', prosrc => 'regcollationin' }, 6727{ oid => '4194', descr => 'I/O', 6728 proname => 'regcollationout', provolatile => 's', prorettype => 'cstring', 6729 proargtypes => 'regcollation', prosrc => 'regcollationout' }, 6730{ oid => '4195', descr => 'convert classname to regcollation', 6731 proname => 'to_regcollation', provolatile => 's', 6732 prorettype => 'regcollation', proargtypes => 'text', 6733 prosrc => 'to_regcollation' }, 6734{ oid => '2220', descr => 'I/O', 6735 proname => 'regtypein', provolatile => 's', prorettype => 'regtype', 6736 proargtypes => 'cstring', prosrc => 'regtypein' }, 6737{ oid => '2221', descr => 'I/O', 6738 proname => 'regtypeout', provolatile => 's', prorettype => 'cstring', 6739 proargtypes => 'regtype', prosrc => 'regtypeout' }, 6740{ oid => '3493', descr => 'convert type name to regtype', 6741 proname => 'to_regtype', provolatile => 's', prorettype => 'regtype', 6742 proargtypes => 'text', prosrc => 'to_regtype' }, 6743{ oid => '1079', descr => 'convert text to regclass', 6744 proname => 'regclass', provolatile => 's', prorettype => 'regclass', 6745 proargtypes => 'text', prosrc => 'text_regclass' }, 6746 6747{ oid => '4098', descr => 'I/O', 6748 proname => 'regrolein', provolatile => 's', prorettype => 'regrole', 6749 proargtypes => 'cstring', prosrc => 'regrolein' }, 6750{ oid => '4092', descr => 'I/O', 6751 proname => 'regroleout', provolatile => 's', prorettype => 'cstring', 6752 proargtypes => 'regrole', prosrc => 'regroleout' }, 6753{ oid => '4093', descr => 'convert role name to regrole', 6754 proname => 'to_regrole', provolatile => 's', prorettype => 'regrole', 6755 proargtypes => 'text', prosrc => 'to_regrole' }, 6756 6757{ oid => '4084', descr => 'I/O', 6758 proname => 'regnamespacein', provolatile => 's', prorettype => 'regnamespace', 6759 proargtypes => 'cstring', prosrc => 'regnamespacein' }, 6760{ oid => '4085', descr => 'I/O', 6761 proname => 'regnamespaceout', provolatile => 's', prorettype => 'cstring', 6762 proargtypes => 'regnamespace', prosrc => 'regnamespaceout' }, 6763{ oid => '4086', descr => 'convert namespace name to regnamespace', 6764 proname => 'to_regnamespace', provolatile => 's', 6765 prorettype => 'regnamespace', proargtypes => 'text', 6766 prosrc => 'to_regnamespace' }, 6767 6768{ oid => '1268', 6769 descr => 'parse qualified identifier to array of identifiers', 6770 proname => 'parse_ident', prorettype => '_text', proargtypes => 'text bool', 6771 proargnames => '{str,strict}', prosrc => 'parse_ident' }, 6772 6773{ oid => '2246', descr => '(internal)', 6774 proname => 'fmgr_internal_validator', provolatile => 's', 6775 prorettype => 'void', proargtypes => 'oid', 6776 prosrc => 'fmgr_internal_validator' }, 6777{ oid => '2247', descr => '(internal)', 6778 proname => 'fmgr_c_validator', provolatile => 's', prorettype => 'void', 6779 proargtypes => 'oid', prosrc => 'fmgr_c_validator' }, 6780{ oid => '2248', descr => '(internal)', 6781 proname => 'fmgr_sql_validator', provolatile => 's', prorettype => 'void', 6782 proargtypes => 'oid', prosrc => 'fmgr_sql_validator' }, 6783 6784{ oid => '2250', 6785 descr => 'user privilege on database by username, database name', 6786 proname => 'has_database_privilege', provolatile => 's', prorettype => 'bool', 6787 proargtypes => 'name text text', 6788 prosrc => 'has_database_privilege_name_name' }, 6789{ oid => '2251', 6790 descr => 'user privilege on database by username, database oid', 6791 proname => 'has_database_privilege', provolatile => 's', prorettype => 'bool', 6792 proargtypes => 'name oid text', prosrc => 'has_database_privilege_name_id' }, 6793{ oid => '2252', 6794 descr => 'user privilege on database by user oid, database name', 6795 proname => 'has_database_privilege', provolatile => 's', prorettype => 'bool', 6796 proargtypes => 'oid text text', prosrc => 'has_database_privilege_id_name' }, 6797{ oid => '2253', 6798 descr => 'user privilege on database by user oid, database oid', 6799 proname => 'has_database_privilege', provolatile => 's', prorettype => 'bool', 6800 proargtypes => 'oid oid text', prosrc => 'has_database_privilege_id_id' }, 6801{ oid => '2254', 6802 descr => 'current user privilege on database by database name', 6803 proname => 'has_database_privilege', provolatile => 's', prorettype => 'bool', 6804 proargtypes => 'text text', prosrc => 'has_database_privilege_name' }, 6805{ oid => '2255', 6806 descr => 'current user privilege on database by database oid', 6807 proname => 'has_database_privilege', provolatile => 's', prorettype => 'bool', 6808 proargtypes => 'oid text', prosrc => 'has_database_privilege_id' }, 6809 6810{ oid => '2256', 6811 descr => 'user privilege on function by username, function name', 6812 proname => 'has_function_privilege', provolatile => 's', prorettype => 'bool', 6813 proargtypes => 'name text text', 6814 prosrc => 'has_function_privilege_name_name' }, 6815{ oid => '2257', 6816 descr => 'user privilege on function by username, function oid', 6817 proname => 'has_function_privilege', provolatile => 's', prorettype => 'bool', 6818 proargtypes => 'name oid text', prosrc => 'has_function_privilege_name_id' }, 6819{ oid => '2258', 6820 descr => 'user privilege on function by user oid, function name', 6821 proname => 'has_function_privilege', provolatile => 's', prorettype => 'bool', 6822 proargtypes => 'oid text text', prosrc => 'has_function_privilege_id_name' }, 6823{ oid => '2259', 6824 descr => 'user privilege on function by user oid, function oid', 6825 proname => 'has_function_privilege', provolatile => 's', prorettype => 'bool', 6826 proargtypes => 'oid oid text', prosrc => 'has_function_privilege_id_id' }, 6827{ oid => '2260', 6828 descr => 'current user privilege on function by function name', 6829 proname => 'has_function_privilege', provolatile => 's', prorettype => 'bool', 6830 proargtypes => 'text text', prosrc => 'has_function_privilege_name' }, 6831{ oid => '2261', 6832 descr => 'current user privilege on function by function oid', 6833 proname => 'has_function_privilege', provolatile => 's', prorettype => 'bool', 6834 proargtypes => 'oid text', prosrc => 'has_function_privilege_id' }, 6835 6836{ oid => '2262', 6837 descr => 'user privilege on language by username, language name', 6838 proname => 'has_language_privilege', provolatile => 's', prorettype => 'bool', 6839 proargtypes => 'name text text', 6840 prosrc => 'has_language_privilege_name_name' }, 6841{ oid => '2263', 6842 descr => 'user privilege on language by username, language oid', 6843 proname => 'has_language_privilege', provolatile => 's', prorettype => 'bool', 6844 proargtypes => 'name oid text', prosrc => 'has_language_privilege_name_id' }, 6845{ oid => '2264', 6846 descr => 'user privilege on language by user oid, language name', 6847 proname => 'has_language_privilege', provolatile => 's', prorettype => 'bool', 6848 proargtypes => 'oid text text', prosrc => 'has_language_privilege_id_name' }, 6849{ oid => '2265', 6850 descr => 'user privilege on language by user oid, language oid', 6851 proname => 'has_language_privilege', provolatile => 's', prorettype => 'bool', 6852 proargtypes => 'oid oid text', prosrc => 'has_language_privilege_id_id' }, 6853{ oid => '2266', 6854 descr => 'current user privilege on language by language name', 6855 proname => 'has_language_privilege', provolatile => 's', prorettype => 'bool', 6856 proargtypes => 'text text', prosrc => 'has_language_privilege_name' }, 6857{ oid => '2267', 6858 descr => 'current user privilege on language by language oid', 6859 proname => 'has_language_privilege', provolatile => 's', prorettype => 'bool', 6860 proargtypes => 'oid text', prosrc => 'has_language_privilege_id' }, 6861 6862{ oid => '2268', descr => 'user privilege on schema by username, schema name', 6863 proname => 'has_schema_privilege', provolatile => 's', prorettype => 'bool', 6864 proargtypes => 'name text text', prosrc => 'has_schema_privilege_name_name' }, 6865{ oid => '2269', descr => 'user privilege on schema by username, schema oid', 6866 proname => 'has_schema_privilege', provolatile => 's', prorettype => 'bool', 6867 proargtypes => 'name oid text', prosrc => 'has_schema_privilege_name_id' }, 6868{ oid => '2270', descr => 'user privilege on schema by user oid, schema name', 6869 proname => 'has_schema_privilege', provolatile => 's', prorettype => 'bool', 6870 proargtypes => 'oid text text', prosrc => 'has_schema_privilege_id_name' }, 6871{ oid => '2271', descr => 'user privilege on schema by user oid, schema oid', 6872 proname => 'has_schema_privilege', provolatile => 's', prorettype => 'bool', 6873 proargtypes => 'oid oid text', prosrc => 'has_schema_privilege_id_id' }, 6874{ oid => '2272', descr => 'current user privilege on schema by schema name', 6875 proname => 'has_schema_privilege', provolatile => 's', prorettype => 'bool', 6876 proargtypes => 'text text', prosrc => 'has_schema_privilege_name' }, 6877{ oid => '2273', descr => 'current user privilege on schema by schema oid', 6878 proname => 'has_schema_privilege', provolatile => 's', prorettype => 'bool', 6879 proargtypes => 'oid text', prosrc => 'has_schema_privilege_id' }, 6880 6881{ oid => '2390', 6882 descr => 'user privilege on tablespace by username, tablespace name', 6883 proname => 'has_tablespace_privilege', provolatile => 's', 6884 prorettype => 'bool', proargtypes => 'name text text', 6885 prosrc => 'has_tablespace_privilege_name_name' }, 6886{ oid => '2391', 6887 descr => 'user privilege on tablespace by username, tablespace oid', 6888 proname => 'has_tablespace_privilege', provolatile => 's', 6889 prorettype => 'bool', proargtypes => 'name oid text', 6890 prosrc => 'has_tablespace_privilege_name_id' }, 6891{ oid => '2392', 6892 descr => 'user privilege on tablespace by user oid, tablespace name', 6893 proname => 'has_tablespace_privilege', provolatile => 's', 6894 prorettype => 'bool', proargtypes => 'oid text text', 6895 prosrc => 'has_tablespace_privilege_id_name' }, 6896{ oid => '2393', 6897 descr => 'user privilege on tablespace by user oid, tablespace oid', 6898 proname => 'has_tablespace_privilege', provolatile => 's', 6899 prorettype => 'bool', proargtypes => 'oid oid text', 6900 prosrc => 'has_tablespace_privilege_id_id' }, 6901{ oid => '2394', 6902 descr => 'current user privilege on tablespace by tablespace name', 6903 proname => 'has_tablespace_privilege', provolatile => 's', 6904 prorettype => 'bool', proargtypes => 'text text', 6905 prosrc => 'has_tablespace_privilege_name' }, 6906{ oid => '2395', 6907 descr => 'current user privilege on tablespace by tablespace oid', 6908 proname => 'has_tablespace_privilege', provolatile => 's', 6909 prorettype => 'bool', proargtypes => 'oid text', 6910 prosrc => 'has_tablespace_privilege_id' }, 6911 6912{ oid => '3000', 6913 descr => 'user privilege on foreign data wrapper by username, foreign data wrapper name', 6914 proname => 'has_foreign_data_wrapper_privilege', provolatile => 's', 6915 prorettype => 'bool', proargtypes => 'name text text', 6916 prosrc => 'has_foreign_data_wrapper_privilege_name_name' }, 6917{ oid => '3001', 6918 descr => 'user privilege on foreign data wrapper by username, foreign data wrapper oid', 6919 proname => 'has_foreign_data_wrapper_privilege', provolatile => 's', 6920 prorettype => 'bool', proargtypes => 'name oid text', 6921 prosrc => 'has_foreign_data_wrapper_privilege_name_id' }, 6922{ oid => '3002', 6923 descr => 'user privilege on foreign data wrapper by user oid, foreign data wrapper name', 6924 proname => 'has_foreign_data_wrapper_privilege', provolatile => 's', 6925 prorettype => 'bool', proargtypes => 'oid text text', 6926 prosrc => 'has_foreign_data_wrapper_privilege_id_name' }, 6927{ oid => '3003', 6928 descr => 'user privilege on foreign data wrapper by user oid, foreign data wrapper oid', 6929 proname => 'has_foreign_data_wrapper_privilege', provolatile => 's', 6930 prorettype => 'bool', proargtypes => 'oid oid text', 6931 prosrc => 'has_foreign_data_wrapper_privilege_id_id' }, 6932{ oid => '3004', 6933 descr => 'current user privilege on foreign data wrapper by foreign data wrapper name', 6934 proname => 'has_foreign_data_wrapper_privilege', provolatile => 's', 6935 prorettype => 'bool', proargtypes => 'text text', 6936 prosrc => 'has_foreign_data_wrapper_privilege_name' }, 6937{ oid => '3005', 6938 descr => 'current user privilege on foreign data wrapper by foreign data wrapper oid', 6939 proname => 'has_foreign_data_wrapper_privilege', provolatile => 's', 6940 prorettype => 'bool', proargtypes => 'oid text', 6941 prosrc => 'has_foreign_data_wrapper_privilege_id' }, 6942 6943{ oid => '3006', descr => 'user privilege on server by username, server name', 6944 proname => 'has_server_privilege', provolatile => 's', prorettype => 'bool', 6945 proargtypes => 'name text text', prosrc => 'has_server_privilege_name_name' }, 6946{ oid => '3007', descr => 'user privilege on server by username, server oid', 6947 proname => 'has_server_privilege', provolatile => 's', prorettype => 'bool', 6948 proargtypes => 'name oid text', prosrc => 'has_server_privilege_name_id' }, 6949{ oid => '3008', descr => 'user privilege on server by user oid, server name', 6950 proname => 'has_server_privilege', provolatile => 's', prorettype => 'bool', 6951 proargtypes => 'oid text text', prosrc => 'has_server_privilege_id_name' }, 6952{ oid => '3009', descr => 'user privilege on server by user oid, server oid', 6953 proname => 'has_server_privilege', provolatile => 's', prorettype => 'bool', 6954 proargtypes => 'oid oid text', prosrc => 'has_server_privilege_id_id' }, 6955{ oid => '3010', descr => 'current user privilege on server by server name', 6956 proname => 'has_server_privilege', provolatile => 's', prorettype => 'bool', 6957 proargtypes => 'text text', prosrc => 'has_server_privilege_name' }, 6958{ oid => '3011', descr => 'current user privilege on server by server oid', 6959 proname => 'has_server_privilege', provolatile => 's', prorettype => 'bool', 6960 proargtypes => 'oid text', prosrc => 'has_server_privilege_id' }, 6961 6962{ oid => '3138', descr => 'user privilege on type by username, type name', 6963 proname => 'has_type_privilege', provolatile => 's', prorettype => 'bool', 6964 proargtypes => 'name text text', prosrc => 'has_type_privilege_name_name' }, 6965{ oid => '3139', descr => 'user privilege on type by username, type oid', 6966 proname => 'has_type_privilege', provolatile => 's', prorettype => 'bool', 6967 proargtypes => 'name oid text', prosrc => 'has_type_privilege_name_id' }, 6968{ oid => '3140', descr => 'user privilege on type by user oid, type name', 6969 proname => 'has_type_privilege', provolatile => 's', prorettype => 'bool', 6970 proargtypes => 'oid text text', prosrc => 'has_type_privilege_id_name' }, 6971{ oid => '3141', descr => 'user privilege on type by user oid, type oid', 6972 proname => 'has_type_privilege', provolatile => 's', prorettype => 'bool', 6973 proargtypes => 'oid oid text', prosrc => 'has_type_privilege_id_id' }, 6974{ oid => '3142', descr => 'current user privilege on type by type name', 6975 proname => 'has_type_privilege', provolatile => 's', prorettype => 'bool', 6976 proargtypes => 'text text', prosrc => 'has_type_privilege_name' }, 6977{ oid => '3143', descr => 'current user privilege on type by type oid', 6978 proname => 'has_type_privilege', provolatile => 's', prorettype => 'bool', 6979 proargtypes => 'oid text', prosrc => 'has_type_privilege_id' }, 6980 6981{ oid => '2705', descr => 'user privilege on role by username, role name', 6982 proname => 'pg_has_role', provolatile => 's', prorettype => 'bool', 6983 proargtypes => 'name name text', prosrc => 'pg_has_role_name_name' }, 6984{ oid => '2706', descr => 'user privilege on role by username, role oid', 6985 proname => 'pg_has_role', provolatile => 's', prorettype => 'bool', 6986 proargtypes => 'name oid text', prosrc => 'pg_has_role_name_id' }, 6987{ oid => '2707', descr => 'user privilege on role by user oid, role name', 6988 proname => 'pg_has_role', provolatile => 's', prorettype => 'bool', 6989 proargtypes => 'oid name text', prosrc => 'pg_has_role_id_name' }, 6990{ oid => '2708', descr => 'user privilege on role by user oid, role oid', 6991 proname => 'pg_has_role', provolatile => 's', prorettype => 'bool', 6992 proargtypes => 'oid oid text', prosrc => 'pg_has_role_id_id' }, 6993{ oid => '2709', descr => 'current user privilege on role by role name', 6994 proname => 'pg_has_role', provolatile => 's', prorettype => 'bool', 6995 proargtypes => 'name text', prosrc => 'pg_has_role_name' }, 6996{ oid => '2710', descr => 'current user privilege on role by role oid', 6997 proname => 'pg_has_role', provolatile => 's', prorettype => 'bool', 6998 proargtypes => 'oid text', prosrc => 'pg_has_role_id' }, 6999 7000{ oid => '1269', 7001 descr => 'bytes required to store the value, perhaps with compression', 7002 proname => 'pg_column_size', provolatile => 's', prorettype => 'int4', 7003 proargtypes => 'any', prosrc => 'pg_column_size' }, 7004{ oid => '2322', 7005 descr => 'total disk space usage for the specified tablespace', 7006 proname => 'pg_tablespace_size', provolatile => 'v', prorettype => 'int8', 7007 proargtypes => 'oid', prosrc => 'pg_tablespace_size_oid' }, 7008{ oid => '2323', 7009 descr => 'total disk space usage for the specified tablespace', 7010 proname => 'pg_tablespace_size', provolatile => 'v', prorettype => 'int8', 7011 proargtypes => 'name', prosrc => 'pg_tablespace_size_name' }, 7012{ oid => '2324', descr => 'total disk space usage for the specified database', 7013 proname => 'pg_database_size', provolatile => 'v', prorettype => 'int8', 7014 proargtypes => 'oid', prosrc => 'pg_database_size_oid' }, 7015{ oid => '2168', descr => 'total disk space usage for the specified database', 7016 proname => 'pg_database_size', provolatile => 'v', prorettype => 'int8', 7017 proargtypes => 'name', prosrc => 'pg_database_size_name' }, 7018{ oid => '2325', 7019 descr => 'disk space usage for the main fork of the specified table or index', 7020 proname => 'pg_relation_size', prolang => 'sql', provolatile => 'v', 7021 prorettype => 'int8', proargtypes => 'regclass', 7022 prosrc => 'select pg_catalog.pg_relation_size($1, \'main\')' }, 7023{ oid => '2332', 7024 descr => 'disk space usage for the specified fork of a table or index', 7025 proname => 'pg_relation_size', provolatile => 'v', prorettype => 'int8', 7026 proargtypes => 'regclass text', prosrc => 'pg_relation_size' }, 7027{ oid => '2286', 7028 descr => 'total disk space usage for the specified table and associated indexes', 7029 proname => 'pg_total_relation_size', provolatile => 'v', prorettype => 'int8', 7030 proargtypes => 'regclass', prosrc => 'pg_total_relation_size' }, 7031{ oid => '2288', 7032 descr => 'convert a long int to a human readable text using size units', 7033 proname => 'pg_size_pretty', prorettype => 'text', proargtypes => 'int8', 7034 prosrc => 'pg_size_pretty' }, 7035{ oid => '3166', 7036 descr => 'convert a numeric to a human readable text using size units', 7037 proname => 'pg_size_pretty', prorettype => 'text', proargtypes => 'numeric', 7038 prosrc => 'pg_size_pretty_numeric' }, 7039{ oid => '3334', 7040 descr => 'convert a size in human-readable format with size units into bytes', 7041 proname => 'pg_size_bytes', prorettype => 'int8', proargtypes => 'text', 7042 prosrc => 'pg_size_bytes' }, 7043{ oid => '2997', 7044 descr => 'disk space usage for the specified table, including TOAST, free space and visibility map', 7045 proname => 'pg_table_size', provolatile => 'v', prorettype => 'int8', 7046 proargtypes => 'regclass', prosrc => 'pg_table_size' }, 7047{ oid => '2998', 7048 descr => 'disk space usage for all indexes attached to the specified table', 7049 proname => 'pg_indexes_size', provolatile => 'v', prorettype => 'int8', 7050 proargtypes => 'regclass', prosrc => 'pg_indexes_size' }, 7051{ oid => '2999', descr => 'filenode identifier of relation', 7052 proname => 'pg_relation_filenode', provolatile => 's', prorettype => 'oid', 7053 proargtypes => 'regclass', prosrc => 'pg_relation_filenode' }, 7054{ oid => '3454', descr => 'relation OID for filenode and tablespace', 7055 proname => 'pg_filenode_relation', provolatile => 's', 7056 prorettype => 'regclass', proargtypes => 'oid oid', 7057 prosrc => 'pg_filenode_relation' }, 7058{ oid => '3034', descr => 'file path of relation', 7059 proname => 'pg_relation_filepath', provolatile => 's', prorettype => 'text', 7060 proargtypes => 'regclass', prosrc => 'pg_relation_filepath' }, 7061 7062{ oid => '2316', descr => '(internal)', 7063 proname => 'postgresql_fdw_validator', prorettype => 'bool', 7064 proargtypes => '_text oid', prosrc => 'postgresql_fdw_validator' }, 7065 7066{ oid => '2290', descr => 'I/O', 7067 proname => 'record_in', provolatile => 's', prorettype => 'record', 7068 proargtypes => 'cstring oid int4', prosrc => 'record_in' }, 7069{ oid => '2291', descr => 'I/O', 7070 proname => 'record_out', provolatile => 's', prorettype => 'cstring', 7071 proargtypes => 'record', prosrc => 'record_out' }, 7072{ oid => '2292', descr => 'I/O', 7073 proname => 'cstring_in', prorettype => 'cstring', proargtypes => 'cstring', 7074 prosrc => 'cstring_in' }, 7075{ oid => '2293', descr => 'I/O', 7076 proname => 'cstring_out', prorettype => 'cstring', proargtypes => 'cstring', 7077 prosrc => 'cstring_out' }, 7078{ oid => '2294', descr => 'I/O', 7079 proname => 'any_in', prorettype => 'any', proargtypes => 'cstring', 7080 prosrc => 'any_in' }, 7081{ oid => '2295', descr => 'I/O', 7082 proname => 'any_out', prorettype => 'cstring', proargtypes => 'any', 7083 prosrc => 'any_out' }, 7084{ oid => '2296', descr => 'I/O', 7085 proname => 'anyarray_in', prorettype => 'anyarray', proargtypes => 'cstring', 7086 prosrc => 'anyarray_in' }, 7087{ oid => '2297', descr => 'I/O', 7088 proname => 'anyarray_out', provolatile => 's', prorettype => 'cstring', 7089 proargtypes => 'anyarray', prosrc => 'anyarray_out' }, 7090{ oid => '2298', descr => 'I/O', 7091 proname => 'void_in', prorettype => 'void', proargtypes => 'cstring', 7092 prosrc => 'void_in' }, 7093{ oid => '2299', descr => 'I/O', 7094 proname => 'void_out', prorettype => 'cstring', proargtypes => 'void', 7095 prosrc => 'void_out' }, 7096{ oid => '2300', descr => 'I/O', 7097 proname => 'trigger_in', proisstrict => 'f', prorettype => 'trigger', 7098 proargtypes => 'cstring', prosrc => 'trigger_in' }, 7099{ oid => '2301', descr => 'I/O', 7100 proname => 'trigger_out', prorettype => 'cstring', proargtypes => 'trigger', 7101 prosrc => 'trigger_out' }, 7102{ oid => '3594', descr => 'I/O', 7103 proname => 'event_trigger_in', proisstrict => 'f', 7104 prorettype => 'event_trigger', proargtypes => 'cstring', 7105 prosrc => 'event_trigger_in' }, 7106{ oid => '3595', descr => 'I/O', 7107 proname => 'event_trigger_out', prorettype => 'cstring', 7108 proargtypes => 'event_trigger', prosrc => 'event_trigger_out' }, 7109{ oid => '2302', descr => 'I/O', 7110 proname => 'language_handler_in', proisstrict => 'f', 7111 prorettype => 'language_handler', proargtypes => 'cstring', 7112 prosrc => 'language_handler_in' }, 7113{ oid => '2303', descr => 'I/O', 7114 proname => 'language_handler_out', prorettype => 'cstring', 7115 proargtypes => 'language_handler', prosrc => 'language_handler_out' }, 7116{ oid => '2304', descr => 'I/O', 7117 proname => 'internal_in', proisstrict => 'f', prorettype => 'internal', 7118 proargtypes => 'cstring', prosrc => 'internal_in' }, 7119{ oid => '2305', descr => 'I/O', 7120 proname => 'internal_out', prorettype => 'cstring', proargtypes => 'internal', 7121 prosrc => 'internal_out' }, 7122{ oid => '2312', descr => 'I/O', 7123 proname => 'anyelement_in', prorettype => 'anyelement', 7124 proargtypes => 'cstring', prosrc => 'anyelement_in' }, 7125{ oid => '2313', descr => 'I/O', 7126 proname => 'anyelement_out', prorettype => 'cstring', 7127 proargtypes => 'anyelement', prosrc => 'anyelement_out' }, 7128{ oid => '2398', descr => 'I/O', 7129 proname => 'shell_in', proisstrict => 'f', prorettype => 'void', 7130 proargtypes => 'cstring', prosrc => 'shell_in' }, 7131{ oid => '2399', descr => 'I/O', 7132 proname => 'shell_out', prorettype => 'cstring', proargtypes => 'void', 7133 prosrc => 'shell_out' }, 7134{ oid => '2597', descr => 'I/O', 7135 proname => 'domain_in', proisstrict => 'f', provolatile => 's', 7136 prorettype => 'any', proargtypes => 'cstring oid int4', 7137 prosrc => 'domain_in' }, 7138{ oid => '2598', descr => 'I/O', 7139 proname => 'domain_recv', proisstrict => 'f', provolatile => 's', 7140 prorettype => 'any', proargtypes => 'internal oid int4', 7141 prosrc => 'domain_recv' }, 7142{ oid => '2777', descr => 'I/O', 7143 proname => 'anynonarray_in', prorettype => 'anynonarray', 7144 proargtypes => 'cstring', prosrc => 'anynonarray_in' }, 7145{ oid => '2778', descr => 'I/O', 7146 proname => 'anynonarray_out', prorettype => 'cstring', 7147 proargtypes => 'anynonarray', prosrc => 'anynonarray_out' }, 7148{ oid => '3116', descr => 'I/O', 7149 proname => 'fdw_handler_in', proisstrict => 'f', prorettype => 'fdw_handler', 7150 proargtypes => 'cstring', prosrc => 'fdw_handler_in' }, 7151{ oid => '3117', descr => 'I/O', 7152 proname => 'fdw_handler_out', prorettype => 'cstring', 7153 proargtypes => 'fdw_handler', prosrc => 'fdw_handler_out' }, 7154{ oid => '326', descr => 'I/O', 7155 proname => 'index_am_handler_in', proisstrict => 'f', 7156 prorettype => 'index_am_handler', proargtypes => 'cstring', 7157 prosrc => 'index_am_handler_in' }, 7158{ oid => '327', descr => 'I/O', 7159 proname => 'index_am_handler_out', prorettype => 'cstring', 7160 proargtypes => 'index_am_handler', prosrc => 'index_am_handler_out' }, 7161{ oid => '3311', descr => 'I/O', 7162 proname => 'tsm_handler_in', proisstrict => 'f', prorettype => 'tsm_handler', 7163 proargtypes => 'cstring', prosrc => 'tsm_handler_in' }, 7164{ oid => '3312', descr => 'I/O', 7165 proname => 'tsm_handler_out', prorettype => 'cstring', 7166 proargtypes => 'tsm_handler', prosrc => 'tsm_handler_out' }, 7167{ oid => '267', descr => 'I/O', 7168 proname => 'table_am_handler_in', proisstrict => 'f', 7169 prorettype => 'table_am_handler', proargtypes => 'cstring', 7170 prosrc => 'table_am_handler_in' }, 7171{ oid => '268', descr => 'I/O', 7172 proname => 'table_am_handler_out', prorettype => 'cstring', 7173 proargtypes => 'table_am_handler', prosrc => 'table_am_handler_out' }, 7174{ oid => '5086', descr => 'I/O', 7175 proname => 'anycompatible_in', prorettype => 'anycompatible', 7176 proargtypes => 'cstring', prosrc => 'anycompatible_in' }, 7177{ oid => '5087', descr => 'I/O', 7178 proname => 'anycompatible_out', prorettype => 'cstring', 7179 proargtypes => 'anycompatible', prosrc => 'anycompatible_out' }, 7180{ oid => '5088', descr => 'I/O', 7181 proname => 'anycompatiblearray_in', prorettype => 'anycompatiblearray', 7182 proargtypes => 'cstring', prosrc => 'anycompatiblearray_in' }, 7183{ oid => '5089', descr => 'I/O', 7184 proname => 'anycompatiblearray_out', provolatile => 's', 7185 prorettype => 'cstring', proargtypes => 'anycompatiblearray', 7186 prosrc => 'anycompatiblearray_out' }, 7187{ oid => '5090', descr => 'I/O', 7188 proname => 'anycompatiblearray_recv', provolatile => 's', 7189 prorettype => 'anycompatiblearray', proargtypes => 'internal', 7190 prosrc => 'anycompatiblearray_recv' }, 7191{ oid => '5091', descr => 'I/O', 7192 proname => 'anycompatiblearray_send', provolatile => 's', 7193 prorettype => 'bytea', proargtypes => 'anycompatiblearray', 7194 prosrc => 'anycompatiblearray_send' }, 7195{ oid => '5092', descr => 'I/O', 7196 proname => 'anycompatiblenonarray_in', prorettype => 'anycompatiblenonarray', 7197 proargtypes => 'cstring', prosrc => 'anycompatiblenonarray_in' }, 7198{ oid => '5093', descr => 'I/O', 7199 proname => 'anycompatiblenonarray_out', prorettype => 'cstring', 7200 proargtypes => 'anycompatiblenonarray', 7201 prosrc => 'anycompatiblenonarray_out' }, 7202{ oid => '5094', descr => 'I/O', 7203 proname => 'anycompatiblerange_in', provolatile => 's', 7204 prorettype => 'anycompatiblerange', proargtypes => 'cstring oid int4', 7205 prosrc => 'anycompatiblerange_in' }, 7206{ oid => '5095', descr => 'I/O', 7207 proname => 'anycompatiblerange_out', provolatile => 's', 7208 prorettype => 'cstring', proargtypes => 'anycompatiblerange', 7209 prosrc => 'anycompatiblerange_out' }, 7210 7211# tablesample method handlers 7212{ oid => '3313', descr => 'BERNOULLI tablesample method handler', 7213 proname => 'bernoulli', provolatile => 'v', prorettype => 'tsm_handler', 7214 proargtypes => 'internal', prosrc => 'tsm_bernoulli_handler' }, 7215{ oid => '3314', descr => 'SYSTEM tablesample method handler', 7216 proname => 'system', provolatile => 'v', prorettype => 'tsm_handler', 7217 proargtypes => 'internal', prosrc => 'tsm_system_handler' }, 7218 7219# cryptographic 7220{ oid => '2311', descr => 'MD5 hash', 7221 proname => 'md5', proleakproof => 't', prorettype => 'text', 7222 proargtypes => 'text', prosrc => 'md5_text' }, 7223{ oid => '2321', descr => 'MD5 hash', 7224 proname => 'md5', proleakproof => 't', prorettype => 'text', 7225 proargtypes => 'bytea', prosrc => 'md5_bytea' }, 7226{ oid => '3419', descr => 'SHA-224 hash', 7227 proname => 'sha224', proleakproof => 't', prorettype => 'bytea', 7228 proargtypes => 'bytea', prosrc => 'sha224_bytea' }, 7229{ oid => '3420', descr => 'SHA-256 hash', 7230 proname => 'sha256', proleakproof => 't', prorettype => 'bytea', 7231 proargtypes => 'bytea', prosrc => 'sha256_bytea' }, 7232{ oid => '3421', descr => 'SHA-384 hash', 7233 proname => 'sha384', proleakproof => 't', prorettype => 'bytea', 7234 proargtypes => 'bytea', prosrc => 'sha384_bytea' }, 7235{ oid => '3422', descr => 'SHA-512 hash', 7236 proname => 'sha512', proleakproof => 't', prorettype => 'bytea', 7237 proargtypes => 'bytea', prosrc => 'sha512_bytea' }, 7238 7239# crosstype operations for date vs. timestamp and timestamptz 7240{ oid => '2338', 7241 proname => 'date_lt_timestamp', prorettype => 'bool', 7242 proargtypes => 'date timestamp', prosrc => 'date_lt_timestamp' }, 7243{ oid => '2339', 7244 proname => 'date_le_timestamp', prorettype => 'bool', 7245 proargtypes => 'date timestamp', prosrc => 'date_le_timestamp' }, 7246{ oid => '2340', 7247 proname => 'date_eq_timestamp', prorettype => 'bool', 7248 proargtypes => 'date timestamp', prosrc => 'date_eq_timestamp' }, 7249{ oid => '2341', 7250 proname => 'date_gt_timestamp', prorettype => 'bool', 7251 proargtypes => 'date timestamp', prosrc => 'date_gt_timestamp' }, 7252{ oid => '2342', 7253 proname => 'date_ge_timestamp', prorettype => 'bool', 7254 proargtypes => 'date timestamp', prosrc => 'date_ge_timestamp' }, 7255{ oid => '2343', 7256 proname => 'date_ne_timestamp', prorettype => 'bool', 7257 proargtypes => 'date timestamp', prosrc => 'date_ne_timestamp' }, 7258{ oid => '2344', descr => 'less-equal-greater', 7259 proname => 'date_cmp_timestamp', prorettype => 'int4', 7260 proargtypes => 'date timestamp', prosrc => 'date_cmp_timestamp' }, 7261 7262{ oid => '2351', 7263 proname => 'date_lt_timestamptz', provolatile => 's', prorettype => 'bool', 7264 proargtypes => 'date timestamptz', prosrc => 'date_lt_timestamptz' }, 7265{ oid => '2352', 7266 proname => 'date_le_timestamptz', provolatile => 's', prorettype => 'bool', 7267 proargtypes => 'date timestamptz', prosrc => 'date_le_timestamptz' }, 7268{ oid => '2353', 7269 proname => 'date_eq_timestamptz', provolatile => 's', prorettype => 'bool', 7270 proargtypes => 'date timestamptz', prosrc => 'date_eq_timestamptz' }, 7271{ oid => '2354', 7272 proname => 'date_gt_timestamptz', provolatile => 's', prorettype => 'bool', 7273 proargtypes => 'date timestamptz', prosrc => 'date_gt_timestamptz' }, 7274{ oid => '2355', 7275 proname => 'date_ge_timestamptz', provolatile => 's', prorettype => 'bool', 7276 proargtypes => 'date timestamptz', prosrc => 'date_ge_timestamptz' }, 7277{ oid => '2356', 7278 proname => 'date_ne_timestamptz', provolatile => 's', prorettype => 'bool', 7279 proargtypes => 'date timestamptz', prosrc => 'date_ne_timestamptz' }, 7280{ oid => '2357', descr => 'less-equal-greater', 7281 proname => 'date_cmp_timestamptz', provolatile => 's', prorettype => 'int4', 7282 proargtypes => 'date timestamptz', prosrc => 'date_cmp_timestamptz' }, 7283 7284{ oid => '2364', 7285 proname => 'timestamp_lt_date', prorettype => 'bool', 7286 proargtypes => 'timestamp date', prosrc => 'timestamp_lt_date' }, 7287{ oid => '2365', 7288 proname => 'timestamp_le_date', prorettype => 'bool', 7289 proargtypes => 'timestamp date', prosrc => 'timestamp_le_date' }, 7290{ oid => '2366', 7291 proname => 'timestamp_eq_date', prorettype => 'bool', 7292 proargtypes => 'timestamp date', prosrc => 'timestamp_eq_date' }, 7293{ oid => '2367', 7294 proname => 'timestamp_gt_date', prorettype => 'bool', 7295 proargtypes => 'timestamp date', prosrc => 'timestamp_gt_date' }, 7296{ oid => '2368', 7297 proname => 'timestamp_ge_date', prorettype => 'bool', 7298 proargtypes => 'timestamp date', prosrc => 'timestamp_ge_date' }, 7299{ oid => '2369', 7300 proname => 'timestamp_ne_date', prorettype => 'bool', 7301 proargtypes => 'timestamp date', prosrc => 'timestamp_ne_date' }, 7302{ oid => '2370', descr => 'less-equal-greater', 7303 proname => 'timestamp_cmp_date', prorettype => 'int4', 7304 proargtypes => 'timestamp date', prosrc => 'timestamp_cmp_date' }, 7305 7306{ oid => '2377', 7307 proname => 'timestamptz_lt_date', provolatile => 's', prorettype => 'bool', 7308 proargtypes => 'timestamptz date', prosrc => 'timestamptz_lt_date' }, 7309{ oid => '2378', 7310 proname => 'timestamptz_le_date', provolatile => 's', prorettype => 'bool', 7311 proargtypes => 'timestamptz date', prosrc => 'timestamptz_le_date' }, 7312{ oid => '2379', 7313 proname => 'timestamptz_eq_date', provolatile => 's', prorettype => 'bool', 7314 proargtypes => 'timestamptz date', prosrc => 'timestamptz_eq_date' }, 7315{ oid => '2380', 7316 proname => 'timestamptz_gt_date', provolatile => 's', prorettype => 'bool', 7317 proargtypes => 'timestamptz date', prosrc => 'timestamptz_gt_date' }, 7318{ oid => '2381', 7319 proname => 'timestamptz_ge_date', provolatile => 's', prorettype => 'bool', 7320 proargtypes => 'timestamptz date', prosrc => 'timestamptz_ge_date' }, 7321{ oid => '2382', 7322 proname => 'timestamptz_ne_date', provolatile => 's', prorettype => 'bool', 7323 proargtypes => 'timestamptz date', prosrc => 'timestamptz_ne_date' }, 7324{ oid => '2383', descr => 'less-equal-greater', 7325 proname => 'timestamptz_cmp_date', provolatile => 's', prorettype => 'int4', 7326 proargtypes => 'timestamptz date', prosrc => 'timestamptz_cmp_date' }, 7327 7328# crosstype operations for timestamp vs. timestamptz 7329{ oid => '2520', 7330 proname => 'timestamp_lt_timestamptz', provolatile => 's', 7331 prorettype => 'bool', proargtypes => 'timestamp timestamptz', 7332 prosrc => 'timestamp_lt_timestamptz' }, 7333{ oid => '2521', 7334 proname => 'timestamp_le_timestamptz', provolatile => 's', 7335 prorettype => 'bool', proargtypes => 'timestamp timestamptz', 7336 prosrc => 'timestamp_le_timestamptz' }, 7337{ oid => '2522', 7338 proname => 'timestamp_eq_timestamptz', provolatile => 's', 7339 prorettype => 'bool', proargtypes => 'timestamp timestamptz', 7340 prosrc => 'timestamp_eq_timestamptz' }, 7341{ oid => '2523', 7342 proname => 'timestamp_gt_timestamptz', provolatile => 's', 7343 prorettype => 'bool', proargtypes => 'timestamp timestamptz', 7344 prosrc => 'timestamp_gt_timestamptz' }, 7345{ oid => '2524', 7346 proname => 'timestamp_ge_timestamptz', provolatile => 's', 7347 prorettype => 'bool', proargtypes => 'timestamp timestamptz', 7348 prosrc => 'timestamp_ge_timestamptz' }, 7349{ oid => '2525', 7350 proname => 'timestamp_ne_timestamptz', provolatile => 's', 7351 prorettype => 'bool', proargtypes => 'timestamp timestamptz', 7352 prosrc => 'timestamp_ne_timestamptz' }, 7353{ oid => '2526', descr => 'less-equal-greater', 7354 proname => 'timestamp_cmp_timestamptz', provolatile => 's', 7355 prorettype => 'int4', proargtypes => 'timestamp timestamptz', 7356 prosrc => 'timestamp_cmp_timestamptz' }, 7357 7358{ oid => '2527', 7359 proname => 'timestamptz_lt_timestamp', provolatile => 's', 7360 prorettype => 'bool', proargtypes => 'timestamptz timestamp', 7361 prosrc => 'timestamptz_lt_timestamp' }, 7362{ oid => '2528', 7363 proname => 'timestamptz_le_timestamp', provolatile => 's', 7364 prorettype => 'bool', proargtypes => 'timestamptz timestamp', 7365 prosrc => 'timestamptz_le_timestamp' }, 7366{ oid => '2529', 7367 proname => 'timestamptz_eq_timestamp', provolatile => 's', 7368 prorettype => 'bool', proargtypes => 'timestamptz timestamp', 7369 prosrc => 'timestamptz_eq_timestamp' }, 7370{ oid => '2530', 7371 proname => 'timestamptz_gt_timestamp', provolatile => 's', 7372 prorettype => 'bool', proargtypes => 'timestamptz timestamp', 7373 prosrc => 'timestamptz_gt_timestamp' }, 7374{ oid => '2531', 7375 proname => 'timestamptz_ge_timestamp', provolatile => 's', 7376 prorettype => 'bool', proargtypes => 'timestamptz timestamp', 7377 prosrc => 'timestamptz_ge_timestamp' }, 7378{ oid => '2532', 7379 proname => 'timestamptz_ne_timestamp', provolatile => 's', 7380 prorettype => 'bool', proargtypes => 'timestamptz timestamp', 7381 prosrc => 'timestamptz_ne_timestamp' }, 7382{ oid => '2533', descr => 'less-equal-greater', 7383 proname => 'timestamptz_cmp_timestamp', provolatile => 's', 7384 prorettype => 'int4', proargtypes => 'timestamptz timestamp', 7385 prosrc => 'timestamptz_cmp_timestamp' }, 7386 7387# send/receive functions 7388{ oid => '2400', descr => 'I/O', 7389 proname => 'array_recv', provolatile => 's', prorettype => 'anyarray', 7390 proargtypes => 'internal oid int4', prosrc => 'array_recv' }, 7391{ oid => '2401', descr => 'I/O', 7392 proname => 'array_send', provolatile => 's', prorettype => 'bytea', 7393 proargtypes => 'anyarray', prosrc => 'array_send' }, 7394{ oid => '2402', descr => 'I/O', 7395 proname => 'record_recv', provolatile => 's', prorettype => 'record', 7396 proargtypes => 'internal oid int4', prosrc => 'record_recv' }, 7397{ oid => '2403', descr => 'I/O', 7398 proname => 'record_send', provolatile => 's', prorettype => 'bytea', 7399 proargtypes => 'record', prosrc => 'record_send' }, 7400{ oid => '2404', descr => 'I/O', 7401 proname => 'int2recv', prorettype => 'int2', proargtypes => 'internal', 7402 prosrc => 'int2recv' }, 7403{ oid => '2405', descr => 'I/O', 7404 proname => 'int2send', prorettype => 'bytea', proargtypes => 'int2', 7405 prosrc => 'int2send' }, 7406{ oid => '2406', descr => 'I/O', 7407 proname => 'int4recv', prorettype => 'int4', proargtypes => 'internal', 7408 prosrc => 'int4recv' }, 7409{ oid => '2407', descr => 'I/O', 7410 proname => 'int4send', prorettype => 'bytea', proargtypes => 'int4', 7411 prosrc => 'int4send' }, 7412{ oid => '2408', descr => 'I/O', 7413 proname => 'int8recv', prorettype => 'int8', proargtypes => 'internal', 7414 prosrc => 'int8recv' }, 7415{ oid => '2409', descr => 'I/O', 7416 proname => 'int8send', prorettype => 'bytea', proargtypes => 'int8', 7417 prosrc => 'int8send' }, 7418{ oid => '2410', descr => 'I/O', 7419 proname => 'int2vectorrecv', prorettype => 'int2vector', 7420 proargtypes => 'internal', prosrc => 'int2vectorrecv' }, 7421{ oid => '2411', descr => 'I/O', 7422 proname => 'int2vectorsend', prorettype => 'bytea', 7423 proargtypes => 'int2vector', prosrc => 'int2vectorsend' }, 7424{ oid => '2412', descr => 'I/O', 7425 proname => 'bytearecv', prorettype => 'bytea', proargtypes => 'internal', 7426 prosrc => 'bytearecv' }, 7427{ oid => '2413', descr => 'I/O', 7428 proname => 'byteasend', prorettype => 'bytea', proargtypes => 'bytea', 7429 prosrc => 'byteasend' }, 7430{ oid => '2414', descr => 'I/O', 7431 proname => 'textrecv', provolatile => 's', prorettype => 'text', 7432 proargtypes => 'internal', prosrc => 'textrecv' }, 7433{ oid => '2415', descr => 'I/O', 7434 proname => 'textsend', provolatile => 's', prorettype => 'bytea', 7435 proargtypes => 'text', prosrc => 'textsend' }, 7436{ oid => '2416', descr => 'I/O', 7437 proname => 'unknownrecv', prorettype => 'unknown', proargtypes => 'internal', 7438 prosrc => 'unknownrecv' }, 7439{ oid => '2417', descr => 'I/O', 7440 proname => 'unknownsend', prorettype => 'bytea', proargtypes => 'unknown', 7441 prosrc => 'unknownsend' }, 7442{ oid => '2418', descr => 'I/O', 7443 proname => 'oidrecv', prorettype => 'oid', proargtypes => 'internal', 7444 prosrc => 'oidrecv' }, 7445{ oid => '2419', descr => 'I/O', 7446 proname => 'oidsend', prorettype => 'bytea', proargtypes => 'oid', 7447 prosrc => 'oidsend' }, 7448{ oid => '2420', descr => 'I/O', 7449 proname => 'oidvectorrecv', prorettype => 'oidvector', 7450 proargtypes => 'internal', prosrc => 'oidvectorrecv' }, 7451{ oid => '2421', descr => 'I/O', 7452 proname => 'oidvectorsend', prorettype => 'bytea', proargtypes => 'oidvector', 7453 prosrc => 'oidvectorsend' }, 7454{ oid => '2422', descr => 'I/O', 7455 proname => 'namerecv', provolatile => 's', prorettype => 'name', 7456 proargtypes => 'internal', prosrc => 'namerecv' }, 7457{ oid => '2423', descr => 'I/O', 7458 proname => 'namesend', provolatile => 's', prorettype => 'bytea', 7459 proargtypes => 'name', prosrc => 'namesend' }, 7460{ oid => '2424', descr => 'I/O', 7461 proname => 'float4recv', prorettype => 'float4', proargtypes => 'internal', 7462 prosrc => 'float4recv' }, 7463{ oid => '2425', descr => 'I/O', 7464 proname => 'float4send', prorettype => 'bytea', proargtypes => 'float4', 7465 prosrc => 'float4send' }, 7466{ oid => '2426', descr => 'I/O', 7467 proname => 'float8recv', prorettype => 'float8', proargtypes => 'internal', 7468 prosrc => 'float8recv' }, 7469{ oid => '2427', descr => 'I/O', 7470 proname => 'float8send', prorettype => 'bytea', proargtypes => 'float8', 7471 prosrc => 'float8send' }, 7472{ oid => '2428', descr => 'I/O', 7473 proname => 'point_recv', prorettype => 'point', proargtypes => 'internal', 7474 prosrc => 'point_recv' }, 7475{ oid => '2429', descr => 'I/O', 7476 proname => 'point_send', prorettype => 'bytea', proargtypes => 'point', 7477 prosrc => 'point_send' }, 7478{ oid => '2430', descr => 'I/O', 7479 proname => 'bpcharrecv', provolatile => 's', prorettype => 'bpchar', 7480 proargtypes => 'internal oid int4', prosrc => 'bpcharrecv' }, 7481{ oid => '2431', descr => 'I/O', 7482 proname => 'bpcharsend', provolatile => 's', prorettype => 'bytea', 7483 proargtypes => 'bpchar', prosrc => 'bpcharsend' }, 7484{ oid => '2432', descr => 'I/O', 7485 proname => 'varcharrecv', provolatile => 's', prorettype => 'varchar', 7486 proargtypes => 'internal oid int4', prosrc => 'varcharrecv' }, 7487{ oid => '2433', descr => 'I/O', 7488 proname => 'varcharsend', provolatile => 's', prorettype => 'bytea', 7489 proargtypes => 'varchar', prosrc => 'varcharsend' }, 7490{ oid => '2434', descr => 'I/O', 7491 proname => 'charrecv', prorettype => 'char', proargtypes => 'internal', 7492 prosrc => 'charrecv' }, 7493{ oid => '2435', descr => 'I/O', 7494 proname => 'charsend', prorettype => 'bytea', proargtypes => 'char', 7495 prosrc => 'charsend' }, 7496{ oid => '2436', descr => 'I/O', 7497 proname => 'boolrecv', prorettype => 'bool', proargtypes => 'internal', 7498 prosrc => 'boolrecv' }, 7499{ oid => '2437', descr => 'I/O', 7500 proname => 'boolsend', prorettype => 'bytea', proargtypes => 'bool', 7501 prosrc => 'boolsend' }, 7502{ oid => '2438', descr => 'I/O', 7503 proname => 'tidrecv', prorettype => 'tid', proargtypes => 'internal', 7504 prosrc => 'tidrecv' }, 7505{ oid => '2439', descr => 'I/O', 7506 proname => 'tidsend', prorettype => 'bytea', proargtypes => 'tid', 7507 prosrc => 'tidsend' }, 7508{ oid => '2440', descr => 'I/O', 7509 proname => 'xidrecv', prorettype => 'xid', proargtypes => 'internal', 7510 prosrc => 'xidrecv' }, 7511{ oid => '2441', descr => 'I/O', 7512 proname => 'xidsend', prorettype => 'bytea', proargtypes => 'xid', 7513 prosrc => 'xidsend' }, 7514{ oid => '2442', descr => 'I/O', 7515 proname => 'cidrecv', prorettype => 'cid', proargtypes => 'internal', 7516 prosrc => 'cidrecv' }, 7517{ oid => '2443', descr => 'I/O', 7518 proname => 'cidsend', prorettype => 'bytea', proargtypes => 'cid', 7519 prosrc => 'cidsend' }, 7520{ oid => '2444', descr => 'I/O', 7521 proname => 'regprocrecv', prorettype => 'regproc', proargtypes => 'internal', 7522 prosrc => 'regprocrecv' }, 7523{ oid => '2445', descr => 'I/O', 7524 proname => 'regprocsend', prorettype => 'bytea', proargtypes => 'regproc', 7525 prosrc => 'regprocsend' }, 7526{ oid => '2446', descr => 'I/O', 7527 proname => 'regprocedurerecv', prorettype => 'regprocedure', 7528 proargtypes => 'internal', prosrc => 'regprocedurerecv' }, 7529{ oid => '2447', descr => 'I/O', 7530 proname => 'regproceduresend', prorettype => 'bytea', 7531 proargtypes => 'regprocedure', prosrc => 'regproceduresend' }, 7532{ oid => '2448', descr => 'I/O', 7533 proname => 'regoperrecv', prorettype => 'regoper', proargtypes => 'internal', 7534 prosrc => 'regoperrecv' }, 7535{ oid => '2449', descr => 'I/O', 7536 proname => 'regopersend', prorettype => 'bytea', proargtypes => 'regoper', 7537 prosrc => 'regopersend' }, 7538{ oid => '2450', descr => 'I/O', 7539 proname => 'regoperatorrecv', prorettype => 'regoperator', 7540 proargtypes => 'internal', prosrc => 'regoperatorrecv' }, 7541{ oid => '2451', descr => 'I/O', 7542 proname => 'regoperatorsend', prorettype => 'bytea', 7543 proargtypes => 'regoperator', prosrc => 'regoperatorsend' }, 7544{ oid => '2452', descr => 'I/O', 7545 proname => 'regclassrecv', prorettype => 'regclass', 7546 proargtypes => 'internal', prosrc => 'regclassrecv' }, 7547{ oid => '2453', descr => 'I/O', 7548 proname => 'regclasssend', prorettype => 'bytea', proargtypes => 'regclass', 7549 prosrc => 'regclasssend' }, 7550{ oid => '4196', descr => 'I/O', 7551 proname => 'regcollationrecv', prorettype => 'regcollation', 7552 proargtypes => 'internal', prosrc => 'regcollationrecv' }, 7553{ oid => '4197', descr => 'I/O', 7554 proname => 'regcollationsend', prorettype => 'bytea', 7555 proargtypes => 'regcollation', prosrc => 'regcollationsend' }, 7556{ oid => '2454', descr => 'I/O', 7557 proname => 'regtyperecv', prorettype => 'regtype', proargtypes => 'internal', 7558 prosrc => 'regtyperecv' }, 7559{ oid => '2455', descr => 'I/O', 7560 proname => 'regtypesend', prorettype => 'bytea', proargtypes => 'regtype', 7561 prosrc => 'regtypesend' }, 7562 7563{ oid => '4094', descr => 'I/O', 7564 proname => 'regrolerecv', prorettype => 'regrole', proargtypes => 'internal', 7565 prosrc => 'regrolerecv' }, 7566{ oid => '4095', descr => 'I/O', 7567 proname => 'regrolesend', prorettype => 'bytea', proargtypes => 'regrole', 7568 prosrc => 'regrolesend' }, 7569{ oid => '4087', descr => 'I/O', 7570 proname => 'regnamespacerecv', prorettype => 'regnamespace', 7571 proargtypes => 'internal', prosrc => 'regnamespacerecv' }, 7572{ oid => '4088', descr => 'I/O', 7573 proname => 'regnamespacesend', prorettype => 'bytea', 7574 proargtypes => 'regnamespace', prosrc => 'regnamespacesend' }, 7575{ oid => '2456', descr => 'I/O', 7576 proname => 'bit_recv', prorettype => 'bit', 7577 proargtypes => 'internal oid int4', prosrc => 'bit_recv' }, 7578{ oid => '2457', descr => 'I/O', 7579 proname => 'bit_send', prorettype => 'bytea', proargtypes => 'bit', 7580 prosrc => 'bit_send' }, 7581{ oid => '2458', descr => 'I/O', 7582 proname => 'varbit_recv', prorettype => 'varbit', 7583 proargtypes => 'internal oid int4', prosrc => 'varbit_recv' }, 7584{ oid => '2459', descr => 'I/O', 7585 proname => 'varbit_send', prorettype => 'bytea', proargtypes => 'varbit', 7586 prosrc => 'varbit_send' }, 7587{ oid => '2460', descr => 'I/O', 7588 proname => 'numeric_recv', prorettype => 'numeric', 7589 proargtypes => 'internal oid int4', prosrc => 'numeric_recv' }, 7590{ oid => '2461', descr => 'I/O', 7591 proname => 'numeric_send', prorettype => 'bytea', proargtypes => 'numeric', 7592 prosrc => 'numeric_send' }, 7593{ oid => '2468', descr => 'I/O', 7594 proname => 'date_recv', prorettype => 'date', proargtypes => 'internal', 7595 prosrc => 'date_recv' }, 7596{ oid => '2469', descr => 'I/O', 7597 proname => 'date_send', prorettype => 'bytea', proargtypes => 'date', 7598 prosrc => 'date_send' }, 7599{ oid => '2470', descr => 'I/O', 7600 proname => 'time_recv', prorettype => 'time', 7601 proargtypes => 'internal oid int4', prosrc => 'time_recv' }, 7602{ oid => '2471', descr => 'I/O', 7603 proname => 'time_send', prorettype => 'bytea', proargtypes => 'time', 7604 prosrc => 'time_send' }, 7605{ oid => '2472', descr => 'I/O', 7606 proname => 'timetz_recv', prorettype => 'timetz', 7607 proargtypes => 'internal oid int4', prosrc => 'timetz_recv' }, 7608{ oid => '2473', descr => 'I/O', 7609 proname => 'timetz_send', prorettype => 'bytea', proargtypes => 'timetz', 7610 prosrc => 'timetz_send' }, 7611{ oid => '2474', descr => 'I/O', 7612 proname => 'timestamp_recv', prorettype => 'timestamp', 7613 proargtypes => 'internal oid int4', prosrc => 'timestamp_recv' }, 7614{ oid => '2475', descr => 'I/O', 7615 proname => 'timestamp_send', prorettype => 'bytea', 7616 proargtypes => 'timestamp', prosrc => 'timestamp_send' }, 7617{ oid => '2476', descr => 'I/O', 7618 proname => 'timestamptz_recv', prorettype => 'timestamptz', 7619 proargtypes => 'internal oid int4', prosrc => 'timestamptz_recv' }, 7620{ oid => '2477', descr => 'I/O', 7621 proname => 'timestamptz_send', prorettype => 'bytea', 7622 proargtypes => 'timestamptz', prosrc => 'timestamptz_send' }, 7623{ oid => '2478', descr => 'I/O', 7624 proname => 'interval_recv', prorettype => 'interval', 7625 proargtypes => 'internal oid int4', prosrc => 'interval_recv' }, 7626{ oid => '2479', descr => 'I/O', 7627 proname => 'interval_send', prorettype => 'bytea', proargtypes => 'interval', 7628 prosrc => 'interval_send' }, 7629{ oid => '2480', descr => 'I/O', 7630 proname => 'lseg_recv', prorettype => 'lseg', proargtypes => 'internal', 7631 prosrc => 'lseg_recv' }, 7632{ oid => '2481', descr => 'I/O', 7633 proname => 'lseg_send', prorettype => 'bytea', proargtypes => 'lseg', 7634 prosrc => 'lseg_send' }, 7635{ oid => '2482', descr => 'I/O', 7636 proname => 'path_recv', prorettype => 'path', proargtypes => 'internal', 7637 prosrc => 'path_recv' }, 7638{ oid => '2483', descr => 'I/O', 7639 proname => 'path_send', prorettype => 'bytea', proargtypes => 'path', 7640 prosrc => 'path_send' }, 7641{ oid => '2484', descr => 'I/O', 7642 proname => 'box_recv', prorettype => 'box', proargtypes => 'internal', 7643 prosrc => 'box_recv' }, 7644{ oid => '2485', descr => 'I/O', 7645 proname => 'box_send', prorettype => 'bytea', proargtypes => 'box', 7646 prosrc => 'box_send' }, 7647{ oid => '2486', descr => 'I/O', 7648 proname => 'poly_recv', prorettype => 'polygon', proargtypes => 'internal', 7649 prosrc => 'poly_recv' }, 7650{ oid => '2487', descr => 'I/O', 7651 proname => 'poly_send', prorettype => 'bytea', proargtypes => 'polygon', 7652 prosrc => 'poly_send' }, 7653{ oid => '2488', descr => 'I/O', 7654 proname => 'line_recv', prorettype => 'line', proargtypes => 'internal', 7655 prosrc => 'line_recv' }, 7656{ oid => '2489', descr => 'I/O', 7657 proname => 'line_send', prorettype => 'bytea', proargtypes => 'line', 7658 prosrc => 'line_send' }, 7659{ oid => '2490', descr => 'I/O', 7660 proname => 'circle_recv', prorettype => 'circle', proargtypes => 'internal', 7661 prosrc => 'circle_recv' }, 7662{ oid => '2491', descr => 'I/O', 7663 proname => 'circle_send', prorettype => 'bytea', proargtypes => 'circle', 7664 prosrc => 'circle_send' }, 7665{ oid => '2492', descr => 'I/O', 7666 proname => 'cash_recv', prorettype => 'money', proargtypes => 'internal', 7667 prosrc => 'cash_recv' }, 7668{ oid => '2493', descr => 'I/O', 7669 proname => 'cash_send', prorettype => 'bytea', proargtypes => 'money', 7670 prosrc => 'cash_send' }, 7671{ oid => '2494', descr => 'I/O', 7672 proname => 'macaddr_recv', prorettype => 'macaddr', proargtypes => 'internal', 7673 prosrc => 'macaddr_recv' }, 7674{ oid => '2495', descr => 'I/O', 7675 proname => 'macaddr_send', prorettype => 'bytea', proargtypes => 'macaddr', 7676 prosrc => 'macaddr_send' }, 7677{ oid => '2496', descr => 'I/O', 7678 proname => 'inet_recv', prorettype => 'inet', proargtypes => 'internal', 7679 prosrc => 'inet_recv' }, 7680{ oid => '2497', descr => 'I/O', 7681 proname => 'inet_send', prorettype => 'bytea', proargtypes => 'inet', 7682 prosrc => 'inet_send' }, 7683{ oid => '2498', descr => 'I/O', 7684 proname => 'cidr_recv', prorettype => 'cidr', proargtypes => 'internal', 7685 prosrc => 'cidr_recv' }, 7686{ oid => '2499', descr => 'I/O', 7687 proname => 'cidr_send', prorettype => 'bytea', proargtypes => 'cidr', 7688 prosrc => 'cidr_send' }, 7689{ oid => '2500', descr => 'I/O', 7690 proname => 'cstring_recv', provolatile => 's', prorettype => 'cstring', 7691 proargtypes => 'internal', prosrc => 'cstring_recv' }, 7692{ oid => '2501', descr => 'I/O', 7693 proname => 'cstring_send', provolatile => 's', prorettype => 'bytea', 7694 proargtypes => 'cstring', prosrc => 'cstring_send' }, 7695{ oid => '2502', descr => 'I/O', 7696 proname => 'anyarray_recv', provolatile => 's', prorettype => 'anyarray', 7697 proargtypes => 'internal', prosrc => 'anyarray_recv' }, 7698{ oid => '2503', descr => 'I/O', 7699 proname => 'anyarray_send', provolatile => 's', prorettype => 'bytea', 7700 proargtypes => 'anyarray', prosrc => 'anyarray_send' }, 7701{ oid => '3120', descr => 'I/O', 7702 proname => 'void_recv', prorettype => 'void', proargtypes => 'internal', 7703 prosrc => 'void_recv' }, 7704{ oid => '3121', descr => 'I/O', 7705 proname => 'void_send', prorettype => 'bytea', proargtypes => 'void', 7706 prosrc => 'void_send' }, 7707{ oid => '3446', descr => 'I/O', 7708 proname => 'macaddr8_recv', prorettype => 'macaddr8', 7709 proargtypes => 'internal', prosrc => 'macaddr8_recv' }, 7710{ oid => '3447', descr => 'I/O', 7711 proname => 'macaddr8_send', prorettype => 'bytea', proargtypes => 'macaddr8', 7712 prosrc => 'macaddr8_send' }, 7713 7714# System-view support functions with pretty-print option 7715{ oid => '2504', descr => 'source text of a rule with pretty-print option', 7716 proname => 'pg_get_ruledef', provolatile => 's', prorettype => 'text', 7717 proargtypes => 'oid bool', prosrc => 'pg_get_ruledef_ext' }, 7718{ oid => '2505', 7719 descr => 'select statement of a view with pretty-print option', 7720 proname => 'pg_get_viewdef', provolatile => 's', proparallel => 'r', 7721 prorettype => 'text', proargtypes => 'text bool', 7722 prosrc => 'pg_get_viewdef_name_ext' }, 7723{ oid => '2506', 7724 descr => 'select statement of a view with pretty-print option', 7725 proname => 'pg_get_viewdef', provolatile => 's', proparallel => 'r', 7726 prorettype => 'text', proargtypes => 'oid bool', 7727 prosrc => 'pg_get_viewdef_ext' }, 7728{ oid => '3159', 7729 descr => 'select statement of a view with pretty-printing and specified line wrapping', 7730 proname => 'pg_get_viewdef', provolatile => 's', proparallel => 'r', 7731 prorettype => 'text', proargtypes => 'oid int4', 7732 prosrc => 'pg_get_viewdef_wrap' }, 7733{ oid => '2507', 7734 descr => 'index description (full create statement or single expression) with pretty-print option', 7735 proname => 'pg_get_indexdef', provolatile => 's', prorettype => 'text', 7736 proargtypes => 'oid int4 bool', prosrc => 'pg_get_indexdef_ext' }, 7737{ oid => '2508', descr => 'constraint description with pretty-print option', 7738 proname => 'pg_get_constraintdef', provolatile => 's', prorettype => 'text', 7739 proargtypes => 'oid bool', prosrc => 'pg_get_constraintdef_ext' }, 7740{ oid => '2509', 7741 descr => 'deparse an encoded expression with pretty-print option', 7742 proname => 'pg_get_expr', provolatile => 's', prorettype => 'text', 7743 proargtypes => 'pg_node_tree oid bool', prosrc => 'pg_get_expr_ext' }, 7744{ oid => '2510', descr => 'get the prepared statements for this session', 7745 proname => 'pg_prepared_statement', prorows => '1000', proretset => 't', 7746 provolatile => 's', proparallel => 'r', prorettype => 'record', 7747 proargtypes => '', proallargtypes => '{text,text,timestamptz,_regtype,bool}', 7748 proargmodes => '{o,o,o,o,o}', 7749 proargnames => '{name,statement,prepare_time,parameter_types,from_sql}', 7750 prosrc => 'pg_prepared_statement' }, 7751{ oid => '2511', descr => 'get the open cursors for this session', 7752 proname => 'pg_cursor', prorows => '1000', proretset => 't', 7753 provolatile => 's', proparallel => 'r', prorettype => 'record', 7754 proargtypes => '', proallargtypes => '{text,text,bool,bool,bool,timestamptz}', 7755 proargmodes => '{o,o,o,o,o,o}', 7756 proargnames => '{name,statement,is_holdable,is_binary,is_scrollable,creation_time}', 7757 prosrc => 'pg_cursor' }, 7758{ oid => '2599', descr => 'get the available time zone abbreviations', 7759 proname => 'pg_timezone_abbrevs', prorows => '1000', proretset => 't', 7760 provolatile => 's', prorettype => 'record', proargtypes => '', 7761 proallargtypes => '{text,interval,bool}', proargmodes => '{o,o,o}', 7762 proargnames => '{abbrev,utc_offset,is_dst}', 7763 prosrc => 'pg_timezone_abbrevs' }, 7764{ oid => '2856', descr => 'get the available time zone names', 7765 proname => 'pg_timezone_names', prorows => '1000', proretset => 't', 7766 provolatile => 's', prorettype => 'record', proargtypes => '', 7767 proallargtypes => '{text,text,interval,bool}', proargmodes => '{o,o,o,o}', 7768 proargnames => '{name,abbrev,utc_offset,is_dst}', 7769 prosrc => 'pg_timezone_names' }, 7770{ oid => '2730', descr => 'trigger description with pretty-print option', 7771 proname => 'pg_get_triggerdef', provolatile => 's', prorettype => 'text', 7772 proargtypes => 'oid bool', prosrc => 'pg_get_triggerdef_ext' }, 7773 7774# asynchronous notifications 7775{ oid => '3035', 7776 descr => 'get the channels that the current backend listens to', 7777 proname => 'pg_listening_channels', prorows => '10', proretset => 't', 7778 provolatile => 's', proparallel => 'r', prorettype => 'text', 7779 proargtypes => '', prosrc => 'pg_listening_channels' }, 7780{ oid => '3036', descr => 'send a notification event', 7781 proname => 'pg_notify', proisstrict => 'f', provolatile => 'v', 7782 proparallel => 'r', prorettype => 'void', proargtypes => 'text text', 7783 prosrc => 'pg_notify' }, 7784{ oid => '3296', 7785 descr => 'get the fraction of the asynchronous notification queue currently in use', 7786 proname => 'pg_notification_queue_usage', provolatile => 'v', 7787 proparallel => 'r', prorettype => 'float8', proargtypes => '', 7788 prosrc => 'pg_notification_queue_usage' }, 7789 7790# shared memory usage 7791{ oid => '5052', descr => 'allocations from the main shared memory segment', 7792 proname => 'pg_get_shmem_allocations', prorows => '50', proretset => 't', 7793 provolatile => 'v', prorettype => 'record', proargtypes => '', 7794 proallargtypes => '{text,int8,int8,int8}', proargmodes => '{o,o,o,o}', 7795 proargnames => '{name,off,size,allocated_size}', 7796 prosrc => 'pg_get_shmem_allocations' }, 7797 7798# non-persistent series generator 7799{ oid => '1066', descr => 'non-persistent series generator', 7800 proname => 'generate_series', prorows => '1000', 7801 prosupport => 'generate_series_int4_support', proretset => 't', 7802 prorettype => 'int4', proargtypes => 'int4 int4 int4', 7803 prosrc => 'generate_series_step_int4' }, 7804{ oid => '1067', descr => 'non-persistent series generator', 7805 proname => 'generate_series', prorows => '1000', 7806 prosupport => 'generate_series_int4_support', proretset => 't', 7807 prorettype => 'int4', proargtypes => 'int4 int4', 7808 prosrc => 'generate_series_int4' }, 7809{ oid => '3994', descr => 'planner support for generate_series', 7810 proname => 'generate_series_int4_support', prorettype => 'internal', 7811 proargtypes => 'internal', prosrc => 'generate_series_int4_support' }, 7812{ oid => '1068', descr => 'non-persistent series generator', 7813 proname => 'generate_series', prorows => '1000', 7814 prosupport => 'generate_series_int8_support', proretset => 't', 7815 prorettype => 'int8', proargtypes => 'int8 int8 int8', 7816 prosrc => 'generate_series_step_int8' }, 7817{ oid => '1069', descr => 'non-persistent series generator', 7818 proname => 'generate_series', prorows => '1000', 7819 prosupport => 'generate_series_int8_support', proretset => 't', 7820 prorettype => 'int8', proargtypes => 'int8 int8', 7821 prosrc => 'generate_series_int8' }, 7822{ oid => '3995', descr => 'planner support for generate_series', 7823 proname => 'generate_series_int8_support', prorettype => 'internal', 7824 proargtypes => 'internal', prosrc => 'generate_series_int8_support' }, 7825{ oid => '3259', descr => 'non-persistent series generator', 7826 proname => 'generate_series', prorows => '1000', proretset => 't', 7827 prorettype => 'numeric', proargtypes => 'numeric numeric numeric', 7828 prosrc => 'generate_series_step_numeric' }, 7829{ oid => '3260', descr => 'non-persistent series generator', 7830 proname => 'generate_series', prorows => '1000', proretset => 't', 7831 prorettype => 'numeric', proargtypes => 'numeric numeric', 7832 prosrc => 'generate_series_numeric' }, 7833{ oid => '938', descr => 'non-persistent series generator', 7834 proname => 'generate_series', prorows => '1000', proretset => 't', 7835 prorettype => 'timestamp', proargtypes => 'timestamp timestamp interval', 7836 prosrc => 'generate_series_timestamp' }, 7837{ oid => '939', descr => 'non-persistent series generator', 7838 proname => 'generate_series', prorows => '1000', proretset => 't', 7839 provolatile => 's', prorettype => 'timestamptz', 7840 proargtypes => 'timestamptz timestamptz interval', 7841 prosrc => 'generate_series_timestamptz' }, 7842 7843# boolean aggregates 7844{ oid => '2515', descr => 'aggregate transition function', 7845 proname => 'booland_statefunc', prorettype => 'bool', 7846 proargtypes => 'bool bool', prosrc => 'booland_statefunc' }, 7847{ oid => '2516', descr => 'aggregate transition function', 7848 proname => 'boolor_statefunc', prorettype => 'bool', 7849 proargtypes => 'bool bool', prosrc => 'boolor_statefunc' }, 7850{ oid => '3496', descr => 'aggregate transition function', 7851 proname => 'bool_accum', proisstrict => 'f', prorettype => 'internal', 7852 proargtypes => 'internal bool', prosrc => 'bool_accum' }, 7853{ oid => '3497', descr => 'aggregate transition function', 7854 proname => 'bool_accum_inv', proisstrict => 'f', prorettype => 'internal', 7855 proargtypes => 'internal bool', prosrc => 'bool_accum_inv' }, 7856{ oid => '3498', descr => 'aggregate final function', 7857 proname => 'bool_alltrue', prorettype => 'bool', proargtypes => 'internal', 7858 prosrc => 'bool_alltrue' }, 7859{ oid => '3499', descr => 'aggregate final function', 7860 proname => 'bool_anytrue', prorettype => 'bool', proargtypes => 'internal', 7861 prosrc => 'bool_anytrue' }, 7862{ oid => '2517', descr => 'boolean-and aggregate', 7863 proname => 'bool_and', prokind => 'a', proisstrict => 'f', 7864 prorettype => 'bool', proargtypes => 'bool', prosrc => 'aggregate_dummy' }, 7865 7866# ANY, SOME? These names conflict with subquery operators. See doc. 7867{ oid => '2518', descr => 'boolean-or aggregate', 7868 proname => 'bool_or', prokind => 'a', proisstrict => 'f', 7869 prorettype => 'bool', proargtypes => 'bool', prosrc => 'aggregate_dummy' }, 7870{ oid => '2519', descr => 'boolean-and aggregate', 7871 proname => 'every', prokind => 'a', proisstrict => 'f', prorettype => 'bool', 7872 proargtypes => 'bool', prosrc => 'aggregate_dummy' }, 7873 7874# bitwise integer aggregates 7875{ oid => '2236', descr => 'bitwise-and smallint aggregate', 7876 proname => 'bit_and', prokind => 'a', proisstrict => 'f', 7877 prorettype => 'int2', proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 7878{ oid => '2237', descr => 'bitwise-or smallint aggregate', 7879 proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'int2', 7880 proargtypes => 'int2', prosrc => 'aggregate_dummy' }, 7881{ oid => '2238', descr => 'bitwise-and integer aggregate', 7882 proname => 'bit_and', prokind => 'a', proisstrict => 'f', 7883 prorettype => 'int4', proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 7884{ oid => '2239', descr => 'bitwise-or integer aggregate', 7885 proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'int4', 7886 proargtypes => 'int4', prosrc => 'aggregate_dummy' }, 7887{ oid => '2240', descr => 'bitwise-and bigint aggregate', 7888 proname => 'bit_and', prokind => 'a', proisstrict => 'f', 7889 prorettype => 'int8', proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 7890{ oid => '2241', descr => 'bitwise-or bigint aggregate', 7891 proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'int8', 7892 proargtypes => 'int8', prosrc => 'aggregate_dummy' }, 7893{ oid => '2242', descr => 'bitwise-and bit aggregate', 7894 proname => 'bit_and', prokind => 'a', proisstrict => 'f', prorettype => 'bit', 7895 proargtypes => 'bit', prosrc => 'aggregate_dummy' }, 7896{ oid => '2243', descr => 'bitwise-or bit aggregate', 7897 proname => 'bit_or', prokind => 'a', proisstrict => 'f', prorettype => 'bit', 7898 proargtypes => 'bit', prosrc => 'aggregate_dummy' }, 7899 7900# formerly-missing interval + datetime operators 7901{ oid => '2546', 7902 proname => 'interval_pl_date', prolang => 'sql', prorettype => 'timestamp', 7903 proargtypes => 'interval date', prosrc => 'select $2 + $1' }, 7904{ oid => '2547', 7905 proname => 'interval_pl_timetz', prolang => 'sql', prorettype => 'timetz', 7906 proargtypes => 'interval timetz', prosrc => 'select $2 + $1' }, 7907{ oid => '2548', 7908 proname => 'interval_pl_timestamp', prolang => 'sql', 7909 prorettype => 'timestamp', proargtypes => 'interval timestamp', 7910 prosrc => 'select $2 + $1' }, 7911{ oid => '2549', 7912 proname => 'interval_pl_timestamptz', prolang => 'sql', provolatile => 's', 7913 prorettype => 'timestamptz', proargtypes => 'interval timestamptz', 7914 prosrc => 'select $2 + $1' }, 7915{ oid => '2550', 7916 proname => 'integer_pl_date', prolang => 'sql', prorettype => 'date', 7917 proargtypes => 'int4 date', prosrc => 'select $2 + $1' }, 7918 7919{ oid => '2556', descr => 'get OIDs of databases in a tablespace', 7920 proname => 'pg_tablespace_databases', prorows => '1000', proretset => 't', 7921 provolatile => 's', prorettype => 'oid', proargtypes => 'oid', 7922 prosrc => 'pg_tablespace_databases' }, 7923 7924{ oid => '2557', descr => 'convert int4 to boolean', 7925 proname => 'bool', prorettype => 'bool', proargtypes => 'int4', 7926 prosrc => 'int4_bool' }, 7927{ oid => '2558', descr => 'convert boolean to int4', 7928 proname => 'int4', prorettype => 'int4', proargtypes => 'bool', 7929 prosrc => 'bool_int4' }, 7930{ oid => '2559', descr => 'current value from last used sequence', 7931 proname => 'lastval', provolatile => 'v', proparallel => 'u', 7932 prorettype => 'int8', proargtypes => '', prosrc => 'lastval' }, 7933 7934# start time function 7935{ oid => '2560', descr => 'postmaster start time', 7936 proname => 'pg_postmaster_start_time', provolatile => 's', 7937 prorettype => 'timestamptz', proargtypes => '', 7938 prosrc => 'pg_postmaster_start_time' }, 7939 7940# config reload time function 7941{ oid => '2034', descr => 'configuration load time', 7942 proname => 'pg_conf_load_time', provolatile => 's', proparallel => 'r', 7943 prorettype => 'timestamptz', proargtypes => '', 7944 prosrc => 'pg_conf_load_time' }, 7945 7946# new functions for Y-direction rtree opclasses 7947{ oid => '2562', 7948 proname => 'box_below', prorettype => 'bool', proargtypes => 'box box', 7949 prosrc => 'box_below' }, 7950{ oid => '2563', 7951 proname => 'box_overbelow', prorettype => 'bool', proargtypes => 'box box', 7952 prosrc => 'box_overbelow' }, 7953{ oid => '2564', 7954 proname => 'box_overabove', prorettype => 'bool', proargtypes => 'box box', 7955 prosrc => 'box_overabove' }, 7956{ oid => '2565', 7957 proname => 'box_above', prorettype => 'bool', proargtypes => 'box box', 7958 prosrc => 'box_above' }, 7959{ oid => '2566', 7960 proname => 'poly_below', prorettype => 'bool', 7961 proargtypes => 'polygon polygon', prosrc => 'poly_below' }, 7962{ oid => '2567', 7963 proname => 'poly_overbelow', prorettype => 'bool', 7964 proargtypes => 'polygon polygon', prosrc => 'poly_overbelow' }, 7965{ oid => '2568', 7966 proname => 'poly_overabove', prorettype => 'bool', 7967 proargtypes => 'polygon polygon', prosrc => 'poly_overabove' }, 7968{ oid => '2569', 7969 proname => 'poly_above', prorettype => 'bool', 7970 proargtypes => 'polygon polygon', prosrc => 'poly_above' }, 7971{ oid => '2587', 7972 proname => 'circle_overbelow', prorettype => 'bool', 7973 proargtypes => 'circle circle', prosrc => 'circle_overbelow' }, 7974{ oid => '2588', 7975 proname => 'circle_overabove', prorettype => 'bool', 7976 proargtypes => 'circle circle', prosrc => 'circle_overabove' }, 7977 7978# support functions for GiST r-tree emulation 7979{ oid => '2578', descr => 'GiST support', 7980 proname => 'gist_box_consistent', prorettype => 'bool', 7981 proargtypes => 'internal box int2 oid internal', 7982 prosrc => 'gist_box_consistent' }, 7983{ oid => '2581', descr => 'GiST support', 7984 proname => 'gist_box_penalty', prorettype => 'internal', 7985 proargtypes => 'internal internal internal', prosrc => 'gist_box_penalty' }, 7986{ oid => '2582', descr => 'GiST support', 7987 proname => 'gist_box_picksplit', prorettype => 'internal', 7988 proargtypes => 'internal internal', prosrc => 'gist_box_picksplit' }, 7989{ oid => '2583', descr => 'GiST support', 7990 proname => 'gist_box_union', prorettype => 'box', 7991 proargtypes => 'internal internal', prosrc => 'gist_box_union' }, 7992{ oid => '2584', descr => 'GiST support', 7993 proname => 'gist_box_same', prorettype => 'internal', 7994 proargtypes => 'box box internal', prosrc => 'gist_box_same' }, 7995{ oid => '3998', descr => 'GiST support', 7996 proname => 'gist_box_distance', prorettype => 'float8', 7997 proargtypes => 'internal box int2 oid internal', 7998 prosrc => 'gist_box_distance' }, 7999{ oid => '2585', descr => 'GiST support', 8000 proname => 'gist_poly_consistent', prorettype => 'bool', 8001 proargtypes => 'internal polygon int2 oid internal', 8002 prosrc => 'gist_poly_consistent' }, 8003{ oid => '2586', descr => 'GiST support', 8004 proname => 'gist_poly_compress', prorettype => 'internal', 8005 proargtypes => 'internal', prosrc => 'gist_poly_compress' }, 8006{ oid => '2591', descr => 'GiST support', 8007 proname => 'gist_circle_consistent', prorettype => 'bool', 8008 proargtypes => 'internal circle int2 oid internal', 8009 prosrc => 'gist_circle_consistent' }, 8010{ oid => '2592', descr => 'GiST support', 8011 proname => 'gist_circle_compress', prorettype => 'internal', 8012 proargtypes => 'internal', prosrc => 'gist_circle_compress' }, 8013{ oid => '1030', descr => 'GiST support', 8014 proname => 'gist_point_compress', prorettype => 'internal', 8015 proargtypes => 'internal', prosrc => 'gist_point_compress' }, 8016{ oid => '3282', descr => 'GiST support', 8017 proname => 'gist_point_fetch', prorettype => 'internal', 8018 proargtypes => 'internal', prosrc => 'gist_point_fetch' }, 8019{ oid => '2179', descr => 'GiST support', 8020 proname => 'gist_point_consistent', prorettype => 'bool', 8021 proargtypes => 'internal point int2 oid internal', 8022 prosrc => 'gist_point_consistent' }, 8023{ oid => '3064', descr => 'GiST support', 8024 proname => 'gist_point_distance', prorettype => 'float8', 8025 proargtypes => 'internal point int2 oid internal', 8026 prosrc => 'gist_point_distance' }, 8027{ oid => '3280', descr => 'GiST support', 8028 proname => 'gist_circle_distance', prorettype => 'float8', 8029 proargtypes => 'internal circle int2 oid internal', 8030 prosrc => 'gist_circle_distance' }, 8031{ oid => '3288', descr => 'GiST support', 8032 proname => 'gist_poly_distance', prorettype => 'float8', 8033 proargtypes => 'internal polygon int2 oid internal', 8034 prosrc => 'gist_poly_distance' }, 8035 8036# GIN array support 8037{ oid => '2743', descr => 'GIN array support', 8038 proname => 'ginarrayextract', prorettype => 'internal', 8039 proargtypes => 'anyarray internal internal', prosrc => 'ginarrayextract' }, 8040{ oid => '2774', descr => 'GIN array support', 8041 proname => 'ginqueryarrayextract', prorettype => 'internal', 8042 proargtypes => 'anyarray internal int2 internal internal internal internal', 8043 prosrc => 'ginqueryarrayextract' }, 8044{ oid => '2744', descr => 'GIN array support', 8045 proname => 'ginarrayconsistent', prorettype => 'bool', 8046 proargtypes => 'internal int2 anyarray int4 internal internal internal internal', 8047 prosrc => 'ginarrayconsistent' }, 8048{ oid => '3920', descr => 'GIN array support', 8049 proname => 'ginarraytriconsistent', prorettype => 'char', 8050 proargtypes => 'internal int2 anyarray int4 internal internal internal', 8051 prosrc => 'ginarraytriconsistent' }, 8052{ oid => '3076', descr => 'GIN array support (obsolete)', 8053 proname => 'ginarrayextract', prorettype => 'internal', 8054 proargtypes => 'anyarray internal', prosrc => 'ginarrayextract_2args' }, 8055 8056# overlap/contains/contained 8057{ oid => '2747', 8058 proname => 'arrayoverlap', prorettype => 'bool', 8059 proargtypes => 'anyarray anyarray', prosrc => 'arrayoverlap' }, 8060{ oid => '2748', 8061 proname => 'arraycontains', prorettype => 'bool', 8062 proargtypes => 'anyarray anyarray', prosrc => 'arraycontains' }, 8063{ oid => '2749', 8064 proname => 'arraycontained', prorettype => 'bool', 8065 proargtypes => 'anyarray anyarray', prosrc => 'arraycontained' }, 8066 8067# BRIN minmax 8068{ oid => '3383', descr => 'BRIN minmax support', 8069 proname => 'brin_minmax_opcinfo', prorettype => 'internal', 8070 proargtypes => 'internal', prosrc => 'brin_minmax_opcinfo' }, 8071{ oid => '3384', descr => 'BRIN minmax support', 8072 proname => 'brin_minmax_add_value', prorettype => 'bool', 8073 proargtypes => 'internal internal internal internal', 8074 prosrc => 'brin_minmax_add_value' }, 8075{ oid => '3385', descr => 'BRIN minmax support', 8076 proname => 'brin_minmax_consistent', prorettype => 'bool', 8077 proargtypes => 'internal internal internal', 8078 prosrc => 'brin_minmax_consistent' }, 8079{ oid => '3386', descr => 'BRIN minmax support', 8080 proname => 'brin_minmax_union', prorettype => 'bool', 8081 proargtypes => 'internal internal internal', prosrc => 'brin_minmax_union' }, 8082 8083# BRIN inclusion 8084{ oid => '4105', descr => 'BRIN inclusion support', 8085 proname => 'brin_inclusion_opcinfo', prorettype => 'internal', 8086 proargtypes => 'internal', prosrc => 'brin_inclusion_opcinfo' }, 8087{ oid => '4106', descr => 'BRIN inclusion support', 8088 proname => 'brin_inclusion_add_value', prorettype => 'bool', 8089 proargtypes => 'internal internal internal internal', 8090 prosrc => 'brin_inclusion_add_value' }, 8091{ oid => '4107', descr => 'BRIN inclusion support', 8092 proname => 'brin_inclusion_consistent', prorettype => 'bool', 8093 proargtypes => 'internal internal internal', 8094 prosrc => 'brin_inclusion_consistent' }, 8095{ oid => '4108', descr => 'BRIN inclusion support', 8096 proname => 'brin_inclusion_union', prorettype => 'bool', 8097 proargtypes => 'internal internal internal', 8098 prosrc => 'brin_inclusion_union' }, 8099 8100# userlock replacements 8101{ oid => '2880', descr => 'obtain exclusive advisory lock', 8102 proname => 'pg_advisory_lock', provolatile => 'v', proparallel => 'r', 8103 prorettype => 'void', proargtypes => 'int8', 8104 prosrc => 'pg_advisory_lock_int8' }, 8105{ oid => '3089', descr => 'obtain exclusive advisory lock', 8106 proname => 'pg_advisory_xact_lock', provolatile => 'v', proparallel => 'r', 8107 prorettype => 'void', proargtypes => 'int8', 8108 prosrc => 'pg_advisory_xact_lock_int8' }, 8109{ oid => '2881', descr => 'obtain shared advisory lock', 8110 proname => 'pg_advisory_lock_shared', provolatile => 'v', proparallel => 'r', 8111 prorettype => 'void', proargtypes => 'int8', 8112 prosrc => 'pg_advisory_lock_shared_int8' }, 8113{ oid => '3090', descr => 'obtain shared advisory lock', 8114 proname => 'pg_advisory_xact_lock_shared', provolatile => 'v', 8115 proparallel => 'r', prorettype => 'void', proargtypes => 'int8', 8116 prosrc => 'pg_advisory_xact_lock_shared_int8' }, 8117{ oid => '2882', descr => 'obtain exclusive advisory lock if available', 8118 proname => 'pg_try_advisory_lock', provolatile => 'v', proparallel => 'r', 8119 prorettype => 'bool', proargtypes => 'int8', 8120 prosrc => 'pg_try_advisory_lock_int8' }, 8121{ oid => '3091', descr => 'obtain exclusive advisory lock if available', 8122 proname => 'pg_try_advisory_xact_lock', provolatile => 'v', 8123 proparallel => 'r', prorettype => 'bool', proargtypes => 'int8', 8124 prosrc => 'pg_try_advisory_xact_lock_int8' }, 8125{ oid => '2883', descr => 'obtain shared advisory lock if available', 8126 proname => 'pg_try_advisory_lock_shared', provolatile => 'v', 8127 proparallel => 'r', prorettype => 'bool', proargtypes => 'int8', 8128 prosrc => 'pg_try_advisory_lock_shared_int8' }, 8129{ oid => '3092', descr => 'obtain shared advisory lock if available', 8130 proname => 'pg_try_advisory_xact_lock_shared', provolatile => 'v', 8131 proparallel => 'r', prorettype => 'bool', proargtypes => 'int8', 8132 prosrc => 'pg_try_advisory_xact_lock_shared_int8' }, 8133{ oid => '2884', descr => 'release exclusive advisory lock', 8134 proname => 'pg_advisory_unlock', provolatile => 'v', proparallel => 'r', 8135 prorettype => 'bool', proargtypes => 'int8', 8136 prosrc => 'pg_advisory_unlock_int8' }, 8137{ oid => '2885', descr => 'release shared advisory lock', 8138 proname => 'pg_advisory_unlock_shared', provolatile => 'v', 8139 proparallel => 'r', prorettype => 'bool', proargtypes => 'int8', 8140 prosrc => 'pg_advisory_unlock_shared_int8' }, 8141{ oid => '2886', descr => 'obtain exclusive advisory lock', 8142 proname => 'pg_advisory_lock', provolatile => 'v', proparallel => 'r', 8143 prorettype => 'void', proargtypes => 'int4 int4', 8144 prosrc => 'pg_advisory_lock_int4' }, 8145{ oid => '3093', descr => 'obtain exclusive advisory lock', 8146 proname => 'pg_advisory_xact_lock', provolatile => 'v', proparallel => 'r', 8147 prorettype => 'void', proargtypes => 'int4 int4', 8148 prosrc => 'pg_advisory_xact_lock_int4' }, 8149{ oid => '2887', descr => 'obtain shared advisory lock', 8150 proname => 'pg_advisory_lock_shared', provolatile => 'v', proparallel => 'r', 8151 prorettype => 'void', proargtypes => 'int4 int4', 8152 prosrc => 'pg_advisory_lock_shared_int4' }, 8153{ oid => '3094', descr => 'obtain shared advisory lock', 8154 proname => 'pg_advisory_xact_lock_shared', provolatile => 'v', 8155 proparallel => 'r', prorettype => 'void', proargtypes => 'int4 int4', 8156 prosrc => 'pg_advisory_xact_lock_shared_int4' }, 8157{ oid => '2888', descr => 'obtain exclusive advisory lock if available', 8158 proname => 'pg_try_advisory_lock', provolatile => 'v', proparallel => 'r', 8159 prorettype => 'bool', proargtypes => 'int4 int4', 8160 prosrc => 'pg_try_advisory_lock_int4' }, 8161{ oid => '3095', descr => 'obtain exclusive advisory lock if available', 8162 proname => 'pg_try_advisory_xact_lock', provolatile => 'v', 8163 proparallel => 'r', prorettype => 'bool', proargtypes => 'int4 int4', 8164 prosrc => 'pg_try_advisory_xact_lock_int4' }, 8165{ oid => '2889', descr => 'obtain shared advisory lock if available', 8166 proname => 'pg_try_advisory_lock_shared', provolatile => 'v', 8167 proparallel => 'r', prorettype => 'bool', proargtypes => 'int4 int4', 8168 prosrc => 'pg_try_advisory_lock_shared_int4' }, 8169{ oid => '3096', descr => 'obtain shared advisory lock if available', 8170 proname => 'pg_try_advisory_xact_lock_shared', provolatile => 'v', 8171 proparallel => 'r', prorettype => 'bool', proargtypes => 'int4 int4', 8172 prosrc => 'pg_try_advisory_xact_lock_shared_int4' }, 8173{ oid => '2890', descr => 'release exclusive advisory lock', 8174 proname => 'pg_advisory_unlock', provolatile => 'v', proparallel => 'r', 8175 prorettype => 'bool', proargtypes => 'int4 int4', 8176 prosrc => 'pg_advisory_unlock_int4' }, 8177{ oid => '2891', descr => 'release shared advisory lock', 8178 proname => 'pg_advisory_unlock_shared', provolatile => 'v', 8179 proparallel => 'r', prorettype => 'bool', proargtypes => 'int4 int4', 8180 prosrc => 'pg_advisory_unlock_shared_int4' }, 8181{ oid => '2892', descr => 'release all advisory locks', 8182 proname => 'pg_advisory_unlock_all', provolatile => 'v', proparallel => 'r', 8183 prorettype => 'void', proargtypes => '', prosrc => 'pg_advisory_unlock_all' }, 8184 8185# XML support 8186{ oid => '2893', descr => 'I/O', 8187 proname => 'xml_in', provolatile => 's', prorettype => 'xml', 8188 proargtypes => 'cstring', prosrc => 'xml_in' }, 8189{ oid => '2894', descr => 'I/O', 8190 proname => 'xml_out', prorettype => 'cstring', proargtypes => 'xml', 8191 prosrc => 'xml_out' }, 8192{ oid => '2895', descr => 'generate XML comment', 8193 proname => 'xmlcomment', prorettype => 'xml', proargtypes => 'text', 8194 prosrc => 'xmlcomment' }, 8195{ oid => '2896', 8196 descr => 'perform a non-validating parse of a character string to produce an XML value', 8197 proname => 'xml', provolatile => 's', prorettype => 'xml', 8198 proargtypes => 'text', prosrc => 'texttoxml' }, 8199{ oid => '2897', descr => 'validate an XML value', 8200 proname => 'xmlvalidate', prorettype => 'bool', proargtypes => 'xml text', 8201 prosrc => 'xmlvalidate' }, 8202{ oid => '2898', descr => 'I/O', 8203 proname => 'xml_recv', provolatile => 's', prorettype => 'xml', 8204 proargtypes => 'internal', prosrc => 'xml_recv' }, 8205{ oid => '2899', descr => 'I/O', 8206 proname => 'xml_send', provolatile => 's', prorettype => 'bytea', 8207 proargtypes => 'xml', prosrc => 'xml_send' }, 8208{ oid => '2900', descr => 'aggregate transition function', 8209 proname => 'xmlconcat2', proisstrict => 'f', prorettype => 'xml', 8210 proargtypes => 'xml xml', prosrc => 'xmlconcat2' }, 8211{ oid => '2901', descr => 'concatenate XML values', 8212 proname => 'xmlagg', prokind => 'a', proisstrict => 'f', prorettype => 'xml', 8213 proargtypes => 'xml', prosrc => 'aggregate_dummy' }, 8214{ oid => '2922', descr => 'serialize an XML value to a character string', 8215 proname => 'text', prorettype => 'text', proargtypes => 'xml', 8216 prosrc => 'xmltotext' }, 8217 8218{ oid => '2923', descr => 'map table contents to XML', 8219 proname => 'table_to_xml', procost => '100', provolatile => 's', 8220 proparallel => 'r', prorettype => 'xml', 8221 proargtypes => 'regclass bool bool text', 8222 proargnames => '{tbl,nulls,tableforest,targetns}', prosrc => 'table_to_xml' }, 8223{ oid => '2924', descr => 'map query result to XML', 8224 proname => 'query_to_xml', procost => '100', provolatile => 'v', 8225 proparallel => 'u', prorettype => 'xml', proargtypes => 'text bool bool text', 8226 proargnames => '{query,nulls,tableforest,targetns}', 8227 prosrc => 'query_to_xml' }, 8228{ oid => '2925', descr => 'map rows from cursor to XML', 8229 proname => 'cursor_to_xml', procost => '100', provolatile => 'v', 8230 proparallel => 'u', prorettype => 'xml', 8231 proargtypes => 'refcursor int4 bool bool text', 8232 proargnames => '{cursor,count,nulls,tableforest,targetns}', 8233 prosrc => 'cursor_to_xml' }, 8234{ oid => '2926', descr => 'map table structure to XML Schema', 8235 proname => 'table_to_xmlschema', procost => '100', provolatile => 's', 8236 proparallel => 'r', prorettype => 'xml', 8237 proargtypes => 'regclass bool bool text', 8238 proargnames => '{tbl,nulls,tableforest,targetns}', 8239 prosrc => 'table_to_xmlschema' }, 8240{ oid => '2927', descr => 'map query result structure to XML Schema', 8241 proname => 'query_to_xmlschema', procost => '100', provolatile => 'v', 8242 proparallel => 'u', prorettype => 'xml', proargtypes => 'text bool bool text', 8243 proargnames => '{query,nulls,tableforest,targetns}', 8244 prosrc => 'query_to_xmlschema' }, 8245{ oid => '2928', descr => 'map cursor structure to XML Schema', 8246 proname => 'cursor_to_xmlschema', procost => '100', provolatile => 'v', 8247 proparallel => 'u', prorettype => 'xml', 8248 proargtypes => 'refcursor bool bool text', 8249 proargnames => '{cursor,nulls,tableforest,targetns}', 8250 prosrc => 'cursor_to_xmlschema' }, 8251{ oid => '2929', 8252 descr => 'map table contents and structure to XML and XML Schema', 8253 proname => 'table_to_xml_and_xmlschema', procost => '100', provolatile => 's', 8254 proparallel => 'r', prorettype => 'xml', 8255 proargtypes => 'regclass bool bool text', 8256 proargnames => '{tbl,nulls,tableforest,targetns}', 8257 prosrc => 'table_to_xml_and_xmlschema' }, 8258{ oid => '2930', 8259 descr => 'map query result and structure to XML and XML Schema', 8260 proname => 'query_to_xml_and_xmlschema', procost => '100', provolatile => 'v', 8261 proparallel => 'u', prorettype => 'xml', proargtypes => 'text bool bool text', 8262 proargnames => '{query,nulls,tableforest,targetns}', 8263 prosrc => 'query_to_xml_and_xmlschema' }, 8264 8265{ oid => '2933', descr => 'map schema contents to XML', 8266 proname => 'schema_to_xml', procost => '100', provolatile => 's', 8267 proparallel => 'r', prorettype => 'xml', proargtypes => 'name bool bool text', 8268 proargnames => '{schema,nulls,tableforest,targetns}', 8269 prosrc => 'schema_to_xml' }, 8270{ oid => '2934', descr => 'map schema structure to XML Schema', 8271 proname => 'schema_to_xmlschema', procost => '100', provolatile => 's', 8272 proparallel => 'r', prorettype => 'xml', proargtypes => 'name bool bool text', 8273 proargnames => '{schema,nulls,tableforest,targetns}', 8274 prosrc => 'schema_to_xmlschema' }, 8275{ oid => '2935', 8276 descr => 'map schema contents and structure to XML and XML Schema', 8277 proname => 'schema_to_xml_and_xmlschema', procost => '100', 8278 provolatile => 's', proparallel => 'r', prorettype => 'xml', 8279 proargtypes => 'name bool bool text', 8280 proargnames => '{schema,nulls,tableforest,targetns}', 8281 prosrc => 'schema_to_xml_and_xmlschema' }, 8282 8283{ oid => '2936', descr => 'map database contents to XML', 8284 proname => 'database_to_xml', procost => '100', provolatile => 's', 8285 proparallel => 'r', prorettype => 'xml', proargtypes => 'bool bool text', 8286 proargnames => '{nulls,tableforest,targetns}', prosrc => 'database_to_xml' }, 8287{ oid => '2937', descr => 'map database structure to XML Schema', 8288 proname => 'database_to_xmlschema', procost => '100', provolatile => 's', 8289 proparallel => 'r', prorettype => 'xml', proargtypes => 'bool bool text', 8290 proargnames => '{nulls,tableforest,targetns}', 8291 prosrc => 'database_to_xmlschema' }, 8292{ oid => '2938', 8293 descr => 'map database contents and structure to XML and XML Schema', 8294 proname => 'database_to_xml_and_xmlschema', procost => '100', 8295 provolatile => 's', proparallel => 'r', prorettype => 'xml', 8296 proargtypes => 'bool bool text', 8297 proargnames => '{nulls,tableforest,targetns}', 8298 prosrc => 'database_to_xml_and_xmlschema' }, 8299 8300{ oid => '2931', 8301 descr => 'evaluate XPath expression, with namespaces support', 8302 proname => 'xpath', prorettype => '_xml', proargtypes => 'text xml _text', 8303 prosrc => 'xpath' }, 8304{ oid => '2932', descr => 'evaluate XPath expression', 8305 proname => 'xpath', prolang => 'sql', prorettype => '_xml', 8306 proargtypes => 'text xml', 8307 prosrc => 'select pg_catalog.xpath($1, $2, \'{}\'::pg_catalog.text[])' }, 8308 8309{ oid => '2614', descr => 'test XML value against XPath expression', 8310 proname => 'xmlexists', prorettype => 'bool', proargtypes => 'text xml', 8311 prosrc => 'xmlexists' }, 8312 8313{ oid => '3049', 8314 descr => 'test XML value against XPath expression, with namespace support', 8315 proname => 'xpath_exists', prorettype => 'bool', 8316 proargtypes => 'text xml _text', prosrc => 'xpath_exists' }, 8317{ oid => '3050', descr => 'test XML value against XPath expression', 8318 proname => 'xpath_exists', prolang => 'sql', prorettype => 'bool', 8319 proargtypes => 'text xml', 8320 prosrc => 'select pg_catalog.xpath_exists($1, $2, \'{}\'::pg_catalog.text[])' }, 8321{ oid => '3051', descr => 'determine if a string is well formed XML', 8322 proname => 'xml_is_well_formed', provolatile => 's', prorettype => 'bool', 8323 proargtypes => 'text', prosrc => 'xml_is_well_formed' }, 8324{ oid => '3052', descr => 'determine if a string is well formed XML document', 8325 proname => 'xml_is_well_formed_document', prorettype => 'bool', 8326 proargtypes => 'text', prosrc => 'xml_is_well_formed_document' }, 8327{ oid => '3053', descr => 'determine if a string is well formed XML content', 8328 proname => 'xml_is_well_formed_content', prorettype => 'bool', 8329 proargtypes => 'text', prosrc => 'xml_is_well_formed_content' }, 8330 8331# json 8332{ oid => '321', descr => 'I/O', 8333 proname => 'json_in', prorettype => 'json', proargtypes => 'cstring', 8334 prosrc => 'json_in' }, 8335{ oid => '322', descr => 'I/O', 8336 proname => 'json_out', prorettype => 'cstring', proargtypes => 'json', 8337 prosrc => 'json_out' }, 8338{ oid => '323', descr => 'I/O', 8339 proname => 'json_recv', prorettype => 'json', proargtypes => 'internal', 8340 prosrc => 'json_recv' }, 8341{ oid => '324', descr => 'I/O', 8342 proname => 'json_send', prorettype => 'bytea', proargtypes => 'json', 8343 prosrc => 'json_send' }, 8344{ oid => '3153', descr => 'map array to json', 8345 proname => 'array_to_json', provolatile => 's', prorettype => 'json', 8346 proargtypes => 'anyarray', prosrc => 'array_to_json' }, 8347{ oid => '3154', descr => 'map array to json with optional pretty printing', 8348 proname => 'array_to_json', provolatile => 's', prorettype => 'json', 8349 proargtypes => 'anyarray bool', prosrc => 'array_to_json_pretty' }, 8350{ oid => '3155', descr => 'map row to json', 8351 proname => 'row_to_json', provolatile => 's', prorettype => 'json', 8352 proargtypes => 'record', prosrc => 'row_to_json' }, 8353{ oid => '3156', descr => 'map row to json with optional pretty printing', 8354 proname => 'row_to_json', provolatile => 's', prorettype => 'json', 8355 proargtypes => 'record bool', prosrc => 'row_to_json_pretty' }, 8356{ oid => '3173', descr => 'json aggregate transition function', 8357 proname => 'json_agg_transfn', proisstrict => 'f', provolatile => 's', 8358 prorettype => 'internal', proargtypes => 'internal anyelement', 8359 prosrc => 'json_agg_transfn' }, 8360{ oid => '3174', descr => 'json aggregate final function', 8361 proname => 'json_agg_finalfn', proisstrict => 'f', prorettype => 'json', 8362 proargtypes => 'internal', prosrc => 'json_agg_finalfn' }, 8363{ oid => '3175', descr => 'aggregate input into json', 8364 proname => 'json_agg', prokind => 'a', proisstrict => 'f', provolatile => 's', 8365 prorettype => 'json', proargtypes => 'anyelement', 8366 prosrc => 'aggregate_dummy' }, 8367{ oid => '3180', descr => 'json object aggregate transition function', 8368 proname => 'json_object_agg_transfn', proisstrict => 'f', provolatile => 's', 8369 prorettype => 'internal', proargtypes => 'internal any any', 8370 prosrc => 'json_object_agg_transfn' }, 8371{ oid => '3196', descr => 'json object aggregate final function', 8372 proname => 'json_object_agg_finalfn', proisstrict => 'f', 8373 prorettype => 'json', proargtypes => 'internal', 8374 prosrc => 'json_object_agg_finalfn' }, 8375{ oid => '3197', descr => 'aggregate input into a json object', 8376 proname => 'json_object_agg', prokind => 'a', proisstrict => 'f', 8377 provolatile => 's', prorettype => 'json', proargtypes => 'any any', 8378 prosrc => 'aggregate_dummy' }, 8379{ oid => '3198', descr => 'build a json array from any inputs', 8380 proname => 'json_build_array', provariadic => 'any', proisstrict => 'f', 8381 provolatile => 's', prorettype => 'json', proargtypes => 'any', 8382 proallargtypes => '{any}', proargmodes => '{v}', 8383 prosrc => 'json_build_array' }, 8384{ oid => '3199', descr => 'build an empty json array', 8385 proname => 'json_build_array', proisstrict => 'f', provolatile => 's', 8386 prorettype => 'json', proargtypes => '', 8387 prosrc => 'json_build_array_noargs' }, 8388{ oid => '3200', 8389 descr => 'build a json object from pairwise key/value inputs', 8390 proname => 'json_build_object', provariadic => 'any', proisstrict => 'f', 8391 provolatile => 's', prorettype => 'json', proargtypes => 'any', 8392 proallargtypes => '{any}', proargmodes => '{v}', 8393 prosrc => 'json_build_object' }, 8394{ oid => '3201', descr => 'build an empty json object', 8395 proname => 'json_build_object', proisstrict => 'f', provolatile => 's', 8396 prorettype => 'json', proargtypes => '', 8397 prosrc => 'json_build_object_noargs' }, 8398{ oid => '3202', descr => 'map text array of key value pairs to json object', 8399 proname => 'json_object', prorettype => 'json', proargtypes => '_text', 8400 prosrc => 'json_object' }, 8401{ oid => '3203', descr => 'map text arrays of keys and values to json object', 8402 proname => 'json_object', prorettype => 'json', proargtypes => '_text _text', 8403 prosrc => 'json_object_two_arg' }, 8404{ oid => '3176', descr => 'map input to json', 8405 proname => 'to_json', provolatile => 's', prorettype => 'json', 8406 proargtypes => 'anyelement', prosrc => 'to_json' }, 8407{ oid => '3261', descr => 'remove object fields with null values from json', 8408 proname => 'json_strip_nulls', prorettype => 'json', proargtypes => 'json', 8409 prosrc => 'json_strip_nulls' }, 8410 8411{ oid => '3947', 8412 proname => 'json_object_field', prorettype => 'json', 8413 proargtypes => 'json text', proargnames => '{from_json, field_name}', 8414 prosrc => 'json_object_field' }, 8415{ oid => '3948', 8416 proname => 'json_object_field_text', prorettype => 'text', 8417 proargtypes => 'json text', proargnames => '{from_json, field_name}', 8418 prosrc => 'json_object_field_text' }, 8419{ oid => '3949', 8420 proname => 'json_array_element', prorettype => 'json', 8421 proargtypes => 'json int4', proargnames => '{from_json, element_index}', 8422 prosrc => 'json_array_element' }, 8423{ oid => '3950', 8424 proname => 'json_array_element_text', prorettype => 'text', 8425 proargtypes => 'json int4', proargnames => '{from_json, element_index}', 8426 prosrc => 'json_array_element_text' }, 8427{ oid => '3951', descr => 'get value from json with path elements', 8428 proname => 'json_extract_path', provariadic => 'text', prorettype => 'json', 8429 proargtypes => 'json _text', proallargtypes => '{json,_text}', 8430 proargmodes => '{i,v}', proargnames => '{from_json,path_elems}', 8431 prosrc => 'json_extract_path' }, 8432{ oid => '3953', descr => 'get value from json as text with path elements', 8433 proname => 'json_extract_path_text', provariadic => 'text', 8434 prorettype => 'text', proargtypes => 'json _text', 8435 proallargtypes => '{json,_text}', proargmodes => '{i,v}', 8436 proargnames => '{from_json,path_elems}', prosrc => 'json_extract_path_text' }, 8437{ oid => '3955', descr => 'key value pairs of a json object', 8438 proname => 'json_array_elements', prorows => '100', proretset => 't', 8439 prorettype => 'json', proargtypes => 'json', proallargtypes => '{json,json}', 8440 proargmodes => '{i,o}', proargnames => '{from_json,value}', 8441 prosrc => 'json_array_elements' }, 8442{ oid => '3969', descr => 'elements of json array', 8443 proname => 'json_array_elements_text', prorows => '100', proretset => 't', 8444 prorettype => 'text', proargtypes => 'json', proallargtypes => '{json,text}', 8445 proargmodes => '{i,o}', proargnames => '{from_json,value}', 8446 prosrc => 'json_array_elements_text' }, 8447{ oid => '3956', descr => 'length of json array', 8448 proname => 'json_array_length', prorettype => 'int4', proargtypes => 'json', 8449 prosrc => 'json_array_length' }, 8450{ oid => '3957', descr => 'get json object keys', 8451 proname => 'json_object_keys', prorows => '100', proretset => 't', 8452 prorettype => 'text', proargtypes => 'json', prosrc => 'json_object_keys' }, 8453{ oid => '3958', descr => 'key value pairs of a json object', 8454 proname => 'json_each', prorows => '100', proretset => 't', 8455 prorettype => 'record', proargtypes => 'json', 8456 proallargtypes => '{json,text,json}', proargmodes => '{i,o,o}', 8457 proargnames => '{from_json,key,value}', prosrc => 'json_each' }, 8458{ oid => '3959', descr => 'key value pairs of a json object', 8459 proname => 'json_each_text', prorows => '100', proretset => 't', 8460 prorettype => 'record', proargtypes => 'json', 8461 proallargtypes => '{json,text,text}', proargmodes => '{i,o,o}', 8462 proargnames => '{from_json,key,value}', prosrc => 'json_each_text' }, 8463{ oid => '3960', descr => 'get record fields from a json object', 8464 proname => 'json_populate_record', proisstrict => 'f', provolatile => 's', 8465 prorettype => 'anyelement', proargtypes => 'anyelement json bool', 8466 prosrc => 'json_populate_record' }, 8467{ oid => '3961', 8468 descr => 'get set of records with fields from a json array of objects', 8469 proname => 'json_populate_recordset', prorows => '100', proisstrict => 'f', 8470 proretset => 't', provolatile => 's', prorettype => 'anyelement', 8471 proargtypes => 'anyelement json bool', prosrc => 'json_populate_recordset' }, 8472{ oid => '3204', descr => 'get record fields from a json object', 8473 proname => 'json_to_record', provolatile => 's', prorettype => 'record', 8474 proargtypes => 'json', prosrc => 'json_to_record' }, 8475{ oid => '3205', 8476 descr => 'get set of records with fields from a json array of objects', 8477 proname => 'json_to_recordset', prorows => '100', proisstrict => 'f', 8478 proretset => 't', provolatile => 's', prorettype => 'record', 8479 proargtypes => 'json', prosrc => 'json_to_recordset' }, 8480{ oid => '3968', descr => 'get the type of a json value', 8481 proname => 'json_typeof', prorettype => 'text', proargtypes => 'json', 8482 prosrc => 'json_typeof' }, 8483 8484# uuid 8485{ oid => '2952', descr => 'I/O', 8486 proname => 'uuid_in', prorettype => 'uuid', proargtypes => 'cstring', 8487 prosrc => 'uuid_in' }, 8488{ oid => '2953', descr => 'I/O', 8489 proname => 'uuid_out', prorettype => 'cstring', proargtypes => 'uuid', 8490 prosrc => 'uuid_out' }, 8491{ oid => '2954', 8492 proname => 'uuid_lt', proleakproof => 't', prorettype => 'bool', 8493 proargtypes => 'uuid uuid', prosrc => 'uuid_lt' }, 8494{ oid => '2955', 8495 proname => 'uuid_le', proleakproof => 't', prorettype => 'bool', 8496 proargtypes => 'uuid uuid', prosrc => 'uuid_le' }, 8497{ oid => '2956', 8498 proname => 'uuid_eq', proleakproof => 't', prorettype => 'bool', 8499 proargtypes => 'uuid uuid', prosrc => 'uuid_eq' }, 8500{ oid => '2957', 8501 proname => 'uuid_ge', proleakproof => 't', prorettype => 'bool', 8502 proargtypes => 'uuid uuid', prosrc => 'uuid_ge' }, 8503{ oid => '2958', 8504 proname => 'uuid_gt', proleakproof => 't', prorettype => 'bool', 8505 proargtypes => 'uuid uuid', prosrc => 'uuid_gt' }, 8506{ oid => '2959', 8507 proname => 'uuid_ne', proleakproof => 't', prorettype => 'bool', 8508 proargtypes => 'uuid uuid', prosrc => 'uuid_ne' }, 8509{ oid => '2960', descr => 'less-equal-greater', 8510 proname => 'uuid_cmp', proleakproof => 't', prorettype => 'int4', 8511 proargtypes => 'uuid uuid', prosrc => 'uuid_cmp' }, 8512{ oid => '3300', descr => 'sort support', 8513 proname => 'uuid_sortsupport', prorettype => 'void', 8514 proargtypes => 'internal', prosrc => 'uuid_sortsupport' }, 8515{ oid => '2961', descr => 'I/O', 8516 proname => 'uuid_recv', prorettype => 'uuid', proargtypes => 'internal', 8517 prosrc => 'uuid_recv' }, 8518{ oid => '2962', descr => 'I/O', 8519 proname => 'uuid_send', prorettype => 'bytea', proargtypes => 'uuid', 8520 prosrc => 'uuid_send' }, 8521{ oid => '2963', descr => 'hash', 8522 proname => 'uuid_hash', prorettype => 'int4', proargtypes => 'uuid', 8523 prosrc => 'uuid_hash' }, 8524{ oid => '3412', descr => 'hash', 8525 proname => 'uuid_hash_extended', prorettype => 'int8', 8526 proargtypes => 'uuid int8', prosrc => 'uuid_hash_extended' }, 8527{ oid => '3432', descr => 'generate random UUID', 8528 proname => 'gen_random_uuid', proleakproof => 't', provolatile => 'v', 8529 prorettype => 'uuid', proargtypes => '', prosrc => 'gen_random_uuid' }, 8530 8531# pg_lsn 8532{ oid => '3229', descr => 'I/O', 8533 proname => 'pg_lsn_in', prorettype => 'pg_lsn', proargtypes => 'cstring', 8534 prosrc => 'pg_lsn_in' }, 8535{ oid => '3230', descr => 'I/O', 8536 proname => 'pg_lsn_out', prorettype => 'cstring', proargtypes => 'pg_lsn', 8537 prosrc => 'pg_lsn_out' }, 8538{ oid => '3231', 8539 proname => 'pg_lsn_lt', proleakproof => 't', prorettype => 'bool', 8540 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_lt' }, 8541{ oid => '3232', 8542 proname => 'pg_lsn_le', proleakproof => 't', prorettype => 'bool', 8543 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_le' }, 8544{ oid => '3233', 8545 proname => 'pg_lsn_eq', proleakproof => 't', prorettype => 'bool', 8546 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_eq' }, 8547{ oid => '3234', 8548 proname => 'pg_lsn_ge', proleakproof => 't', prorettype => 'bool', 8549 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_ge' }, 8550{ oid => '3235', 8551 proname => 'pg_lsn_gt', proleakproof => 't', prorettype => 'bool', 8552 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_gt' }, 8553{ oid => '3236', 8554 proname => 'pg_lsn_ne', proleakproof => 't', prorettype => 'bool', 8555 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_ne' }, 8556{ oid => '3237', 8557 proname => 'pg_lsn_mi', prorettype => 'numeric', 8558 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_mi' }, 8559{ oid => '3238', descr => 'I/O', 8560 proname => 'pg_lsn_recv', prorettype => 'pg_lsn', proargtypes => 'internal', 8561 prosrc => 'pg_lsn_recv' }, 8562{ oid => '3239', descr => 'I/O', 8563 proname => 'pg_lsn_send', prorettype => 'bytea', proargtypes => 'pg_lsn', 8564 prosrc => 'pg_lsn_send' }, 8565{ oid => '3251', descr => 'less-equal-greater', 8566 proname => 'pg_lsn_cmp', proleakproof => 't', prorettype => 'int4', 8567 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_cmp' }, 8568{ oid => '3252', descr => 'hash', 8569 proname => 'pg_lsn_hash', prorettype => 'int4', proargtypes => 'pg_lsn', 8570 prosrc => 'pg_lsn_hash' }, 8571{ oid => '3413', descr => 'hash', 8572 proname => 'pg_lsn_hash_extended', prorettype => 'int8', 8573 proargtypes => 'pg_lsn int8', prosrc => 'pg_lsn_hash_extended' }, 8574{ oid => '4187', descr => 'larger of two', 8575 proname => 'pg_lsn_larger', prorettype => 'pg_lsn', 8576 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_larger' }, 8577{ oid => '4188', descr => 'smaller of two', 8578 proname => 'pg_lsn_smaller', prorettype => 'pg_lsn', 8579 proargtypes => 'pg_lsn pg_lsn', prosrc => 'pg_lsn_smaller' }, 8580 8581# enum related procs 8582{ oid => '3504', descr => 'I/O', 8583 proname => 'anyenum_in', prorettype => 'anyenum', proargtypes => 'cstring', 8584 prosrc => 'anyenum_in' }, 8585{ oid => '3505', descr => 'I/O', 8586 proname => 'anyenum_out', provolatile => 's', prorettype => 'cstring', 8587 proargtypes => 'anyenum', prosrc => 'anyenum_out' }, 8588{ oid => '3506', descr => 'I/O', 8589 proname => 'enum_in', provolatile => 's', prorettype => 'anyenum', 8590 proargtypes => 'cstring oid', prosrc => 'enum_in' }, 8591{ oid => '3507', descr => 'I/O', 8592 proname => 'enum_out', provolatile => 's', prorettype => 'cstring', 8593 proargtypes => 'anyenum', prosrc => 'enum_out' }, 8594{ oid => '3508', 8595 proname => 'enum_eq', prorettype => 'bool', proargtypes => 'anyenum anyenum', 8596 prosrc => 'enum_eq' }, 8597{ oid => '3509', 8598 proname => 'enum_ne', prorettype => 'bool', proargtypes => 'anyenum anyenum', 8599 prosrc => 'enum_ne' }, 8600{ oid => '3510', 8601 proname => 'enum_lt', prorettype => 'bool', proargtypes => 'anyenum anyenum', 8602 prosrc => 'enum_lt' }, 8603{ oid => '3511', 8604 proname => 'enum_gt', prorettype => 'bool', proargtypes => 'anyenum anyenum', 8605 prosrc => 'enum_gt' }, 8606{ oid => '3512', 8607 proname => 'enum_le', prorettype => 'bool', proargtypes => 'anyenum anyenum', 8608 prosrc => 'enum_le' }, 8609{ oid => '3513', 8610 proname => 'enum_ge', prorettype => 'bool', proargtypes => 'anyenum anyenum', 8611 prosrc => 'enum_ge' }, 8612{ oid => '3514', descr => 'less-equal-greater', 8613 proname => 'enum_cmp', prorettype => 'int4', proargtypes => 'anyenum anyenum', 8614 prosrc => 'enum_cmp' }, 8615{ oid => '3515', descr => 'hash', 8616 proname => 'hashenum', prorettype => 'int4', proargtypes => 'anyenum', 8617 prosrc => 'hashenum' }, 8618{ oid => '3414', descr => 'hash', 8619 proname => 'hashenumextended', prorettype => 'int8', 8620 proargtypes => 'anyenum int8', prosrc => 'hashenumextended' }, 8621{ oid => '3524', descr => 'smaller of two', 8622 proname => 'enum_smaller', prorettype => 'anyenum', 8623 proargtypes => 'anyenum anyenum', prosrc => 'enum_smaller' }, 8624{ oid => '3525', descr => 'larger of two', 8625 proname => 'enum_larger', prorettype => 'anyenum', 8626 proargtypes => 'anyenum anyenum', prosrc => 'enum_larger' }, 8627{ oid => '3526', descr => 'maximum value of all enum input values', 8628 proname => 'max', prokind => 'a', proisstrict => 'f', prorettype => 'anyenum', 8629 proargtypes => 'anyenum', prosrc => 'aggregate_dummy' }, 8630{ oid => '3527', descr => 'minimum value of all enum input values', 8631 proname => 'min', prokind => 'a', proisstrict => 'f', prorettype => 'anyenum', 8632 proargtypes => 'anyenum', prosrc => 'aggregate_dummy' }, 8633{ oid => '3528', descr => 'first value of the input enum type', 8634 proname => 'enum_first', proisstrict => 'f', provolatile => 's', 8635 prorettype => 'anyenum', proargtypes => 'anyenum', prosrc => 'enum_first' }, 8636{ oid => '3529', descr => 'last value of the input enum type', 8637 proname => 'enum_last', proisstrict => 'f', provolatile => 's', 8638 prorettype => 'anyenum', proargtypes => 'anyenum', prosrc => 'enum_last' }, 8639{ oid => '3530', 8640 descr => 'range between the two given enum values, as an ordered array', 8641 proname => 'enum_range', proisstrict => 'f', provolatile => 's', 8642 prorettype => 'anyarray', proargtypes => 'anyenum anyenum', 8643 prosrc => 'enum_range_bounds' }, 8644{ oid => '3531', descr => 'range of the given enum type, as an ordered array', 8645 proname => 'enum_range', proisstrict => 'f', provolatile => 's', 8646 prorettype => 'anyarray', proargtypes => 'anyenum', 8647 prosrc => 'enum_range_all' }, 8648{ oid => '3532', descr => 'I/O', 8649 proname => 'enum_recv', provolatile => 's', prorettype => 'anyenum', 8650 proargtypes => 'internal oid', prosrc => 'enum_recv' }, 8651{ oid => '3533', descr => 'I/O', 8652 proname => 'enum_send', provolatile => 's', prorettype => 'bytea', 8653 proargtypes => 'anyenum', prosrc => 'enum_send' }, 8654 8655# text search stuff 8656{ oid => '3610', descr => 'I/O', 8657 proname => 'tsvectorin', prorettype => 'tsvector', proargtypes => 'cstring', 8658 prosrc => 'tsvectorin' }, 8659{ oid => '3639', descr => 'I/O', 8660 proname => 'tsvectorrecv', prorettype => 'tsvector', 8661 proargtypes => 'internal', prosrc => 'tsvectorrecv' }, 8662{ oid => '3611', descr => 'I/O', 8663 proname => 'tsvectorout', prorettype => 'cstring', proargtypes => 'tsvector', 8664 prosrc => 'tsvectorout' }, 8665{ oid => '3638', descr => 'I/O', 8666 proname => 'tsvectorsend', prorettype => 'bytea', proargtypes => 'tsvector', 8667 prosrc => 'tsvectorsend' }, 8668{ oid => '3612', descr => 'I/O', 8669 proname => 'tsqueryin', prorettype => 'tsquery', proargtypes => 'cstring', 8670 prosrc => 'tsqueryin' }, 8671{ oid => '3641', descr => 'I/O', 8672 proname => 'tsqueryrecv', prorettype => 'tsquery', proargtypes => 'internal', 8673 prosrc => 'tsqueryrecv' }, 8674{ oid => '3613', descr => 'I/O', 8675 proname => 'tsqueryout', prorettype => 'cstring', proargtypes => 'tsquery', 8676 prosrc => 'tsqueryout' }, 8677{ oid => '3640', descr => 'I/O', 8678 proname => 'tsquerysend', prorettype => 'bytea', proargtypes => 'tsquery', 8679 prosrc => 'tsquerysend' }, 8680{ oid => '3646', descr => 'I/O', 8681 proname => 'gtsvectorin', prorettype => 'gtsvector', proargtypes => 'cstring', 8682 prosrc => 'gtsvectorin' }, 8683{ oid => '3647', descr => 'I/O', 8684 proname => 'gtsvectorout', prorettype => 'cstring', 8685 proargtypes => 'gtsvector', prosrc => 'gtsvectorout' }, 8686 8687{ oid => '3616', 8688 proname => 'tsvector_lt', prorettype => 'bool', 8689 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_lt' }, 8690{ oid => '3617', 8691 proname => 'tsvector_le', prorettype => 'bool', 8692 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_le' }, 8693{ oid => '3618', 8694 proname => 'tsvector_eq', prorettype => 'bool', 8695 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_eq' }, 8696{ oid => '3619', 8697 proname => 'tsvector_ne', prorettype => 'bool', 8698 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_ne' }, 8699{ oid => '3620', 8700 proname => 'tsvector_ge', prorettype => 'bool', 8701 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_ge' }, 8702{ oid => '3621', 8703 proname => 'tsvector_gt', prorettype => 'bool', 8704 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_gt' }, 8705{ oid => '3622', descr => 'less-equal-greater', 8706 proname => 'tsvector_cmp', prorettype => 'int4', 8707 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_cmp' }, 8708 8709{ oid => '3711', descr => 'number of lexemes', 8710 proname => 'length', prorettype => 'int4', proargtypes => 'tsvector', 8711 prosrc => 'tsvector_length' }, 8712{ oid => '3623', descr => 'strip position information', 8713 proname => 'strip', prorettype => 'tsvector', proargtypes => 'tsvector', 8714 prosrc => 'tsvector_strip' }, 8715{ oid => '3624', descr => 'set given weight for whole tsvector', 8716 proname => 'setweight', prorettype => 'tsvector', 8717 proargtypes => 'tsvector char', prosrc => 'tsvector_setweight' }, 8718{ oid => '3320', descr => 'set given weight for given lexemes', 8719 proname => 'setweight', prorettype => 'tsvector', 8720 proargtypes => 'tsvector char _text', 8721 prosrc => 'tsvector_setweight_by_filter' }, 8722{ oid => '3625', 8723 proname => 'tsvector_concat', prorettype => 'tsvector', 8724 proargtypes => 'tsvector tsvector', prosrc => 'tsvector_concat' }, 8725{ oid => '3321', descr => 'delete lexeme', 8726 proname => 'ts_delete', prorettype => 'tsvector', 8727 proargtypes => 'tsvector text', prosrc => 'tsvector_delete_str' }, 8728{ oid => '3323', descr => 'delete given lexemes', 8729 proname => 'ts_delete', prorettype => 'tsvector', 8730 proargtypes => 'tsvector _text', prosrc => 'tsvector_delete_arr' }, 8731{ oid => '3322', descr => 'expand tsvector to set of rows', 8732 proname => 'unnest', prorows => '10', proretset => 't', 8733 prorettype => 'record', proargtypes => 'tsvector', 8734 proallargtypes => '{tsvector,text,_int2,_text}', proargmodes => '{i,o,o,o}', 8735 proargnames => '{tsvector,lexeme,positions,weights}', 8736 prosrc => 'tsvector_unnest' }, 8737{ oid => '3326', descr => 'convert tsvector to array of lexemes', 8738 proname => 'tsvector_to_array', prorettype => '_text', 8739 proargtypes => 'tsvector', prosrc => 'tsvector_to_array' }, 8740{ oid => '3327', descr => 'build tsvector from array of lexemes', 8741 proname => 'array_to_tsvector', prorettype => 'tsvector', 8742 proargtypes => '_text', prosrc => 'array_to_tsvector' }, 8743{ oid => '3319', 8744 descr => 'delete lexemes that do not have one of the given weights', 8745 proname => 'ts_filter', prorettype => 'tsvector', 8746 proargtypes => 'tsvector _char', prosrc => 'tsvector_filter' }, 8747 8748{ oid => '3634', 8749 proname => 'ts_match_vq', prorettype => 'bool', 8750 proargtypes => 'tsvector tsquery', prosrc => 'ts_match_vq' }, 8751{ oid => '3635', 8752 proname => 'ts_match_qv', prorettype => 'bool', 8753 proargtypes => 'tsquery tsvector', prosrc => 'ts_match_qv' }, 8754{ oid => '3760', 8755 proname => 'ts_match_tt', procost => '100', provolatile => 's', 8756 prorettype => 'bool', proargtypes => 'text text', prosrc => 'ts_match_tt' }, 8757{ oid => '3761', 8758 proname => 'ts_match_tq', procost => '100', provolatile => 's', 8759 prorettype => 'bool', proargtypes => 'text tsquery', 8760 prosrc => 'ts_match_tq' }, 8761 8762{ oid => '3648', descr => 'GiST tsvector support', 8763 proname => 'gtsvector_compress', prorettype => 'internal', 8764 proargtypes => 'internal', prosrc => 'gtsvector_compress' }, 8765{ oid => '3649', descr => 'GiST tsvector support', 8766 proname => 'gtsvector_decompress', prorettype => 'internal', 8767 proargtypes => 'internal', prosrc => 'gtsvector_decompress' }, 8768{ oid => '3650', descr => 'GiST tsvector support', 8769 proname => 'gtsvector_picksplit', prorettype => 'internal', 8770 proargtypes => 'internal internal', prosrc => 'gtsvector_picksplit' }, 8771{ oid => '3651', descr => 'GiST tsvector support', 8772 proname => 'gtsvector_union', prorettype => 'gtsvector', 8773 proargtypes => 'internal internal', prosrc => 'gtsvector_union' }, 8774{ oid => '3652', descr => 'GiST tsvector support', 8775 proname => 'gtsvector_same', prorettype => 'internal', 8776 proargtypes => 'gtsvector gtsvector internal', prosrc => 'gtsvector_same' }, 8777{ oid => '3653', descr => 'GiST tsvector support', 8778 proname => 'gtsvector_penalty', prorettype => 'internal', 8779 proargtypes => 'internal internal internal', prosrc => 'gtsvector_penalty' }, 8780{ oid => '3654', descr => 'GiST tsvector support', 8781 proname => 'gtsvector_consistent', prorettype => 'bool', 8782 proargtypes => 'internal tsvector int2 oid internal', 8783 prosrc => 'gtsvector_consistent' }, 8784{ oid => '3790', descr => 'GiST tsvector support (obsolete)', 8785 proname => 'gtsvector_consistent', prorettype => 'bool', 8786 proargtypes => 'internal gtsvector int4 oid internal', 8787 prosrc => 'gtsvector_consistent_oldsig' }, 8788{ oid => '3434', descr => 'GiST tsvector support', 8789 proname => 'gtsvector_options', proisstrict => 'f', prorettype => 'void', 8790 proargtypes => 'internal', prosrc => 'gtsvector_options' }, 8791 8792{ oid => '3656', descr => 'GIN tsvector support', 8793 proname => 'gin_extract_tsvector', prorettype => 'internal', 8794 proargtypes => 'tsvector internal internal', 8795 prosrc => 'gin_extract_tsvector' }, 8796{ oid => '3657', descr => 'GIN tsvector support', 8797 proname => 'gin_extract_tsquery', prorettype => 'internal', 8798 proargtypes => 'tsvector internal int2 internal internal internal internal', 8799 prosrc => 'gin_extract_tsquery' }, 8800{ oid => '3658', descr => 'GIN tsvector support', 8801 proname => 'gin_tsquery_consistent', prorettype => 'bool', 8802 proargtypes => 'internal int2 tsvector int4 internal internal internal internal', 8803 prosrc => 'gin_tsquery_consistent' }, 8804{ oid => '3921', descr => 'GIN tsvector support', 8805 proname => 'gin_tsquery_triconsistent', prorettype => 'char', 8806 proargtypes => 'internal int2 tsvector int4 internal internal internal', 8807 prosrc => 'gin_tsquery_triconsistent' }, 8808{ oid => '3724', descr => 'GIN tsvector support', 8809 proname => 'gin_cmp_tslexeme', prorettype => 'int4', 8810 proargtypes => 'text text', prosrc => 'gin_cmp_tslexeme' }, 8811{ oid => '2700', descr => 'GIN tsvector support', 8812 proname => 'gin_cmp_prefix', prorettype => 'int4', 8813 proargtypes => 'text text int2 internal', prosrc => 'gin_cmp_prefix' }, 8814{ oid => '3077', descr => 'GIN tsvector support (obsolete)', 8815 proname => 'gin_extract_tsvector', prorettype => 'internal', 8816 proargtypes => 'tsvector internal', prosrc => 'gin_extract_tsvector_2args' }, 8817{ oid => '3087', descr => 'GIN tsvector support (obsolete)', 8818 proname => 'gin_extract_tsquery', prorettype => 'internal', 8819 proargtypes => 'tsquery internal int2 internal internal', 8820 prosrc => 'gin_extract_tsquery_5args' }, 8821{ oid => '3088', descr => 'GIN tsvector support (obsolete)', 8822 proname => 'gin_tsquery_consistent', prorettype => 'bool', 8823 proargtypes => 'internal int2 tsquery int4 internal internal', 8824 prosrc => 'gin_tsquery_consistent_6args' }, 8825{ oid => '3791', descr => 'GIN tsvector support (obsolete)', 8826 proname => 'gin_extract_tsquery', prorettype => 'internal', 8827 proargtypes => 'tsquery internal int2 internal internal internal internal', 8828 prosrc => 'gin_extract_tsquery_oldsig' }, 8829{ oid => '3792', descr => 'GIN tsvector support (obsolete)', 8830 proname => 'gin_tsquery_consistent', prorettype => 'bool', 8831 proargtypes => 'internal int2 tsquery int4 internal internal internal internal', 8832 prosrc => 'gin_tsquery_consistent_oldsig' }, 8833 8834{ oid => '3789', descr => 'clean up GIN pending list', 8835 proname => 'gin_clean_pending_list', provolatile => 'v', proparallel => 'u', 8836 prorettype => 'int8', proargtypes => 'regclass', 8837 prosrc => 'gin_clean_pending_list' }, 8838 8839{ oid => '3662', 8840 proname => 'tsquery_lt', prorettype => 'bool', 8841 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_lt' }, 8842{ oid => '3663', 8843 proname => 'tsquery_le', prorettype => 'bool', 8844 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_le' }, 8845{ oid => '3664', 8846 proname => 'tsquery_eq', prorettype => 'bool', 8847 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_eq' }, 8848{ oid => '3665', 8849 proname => 'tsquery_ne', prorettype => 'bool', 8850 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_ne' }, 8851{ oid => '3666', 8852 proname => 'tsquery_ge', prorettype => 'bool', 8853 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_ge' }, 8854{ oid => '3667', 8855 proname => 'tsquery_gt', prorettype => 'bool', 8856 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_gt' }, 8857{ oid => '3668', descr => 'less-equal-greater', 8858 proname => 'tsquery_cmp', prorettype => 'int4', 8859 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_cmp' }, 8860 8861{ oid => '3669', 8862 proname => 'tsquery_and', prorettype => 'tsquery', 8863 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_and' }, 8864{ oid => '3670', 8865 proname => 'tsquery_or', prorettype => 'tsquery', 8866 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_or' }, 8867{ oid => '5003', 8868 proname => 'tsquery_phrase', prorettype => 'tsquery', 8869 proargtypes => 'tsquery tsquery', prosrc => 'tsquery_phrase' }, 8870{ oid => '5004', descr => 'phrase-concatenate with distance', 8871 proname => 'tsquery_phrase', prorettype => 'tsquery', 8872 proargtypes => 'tsquery tsquery int4', prosrc => 'tsquery_phrase_distance' }, 8873{ oid => '3671', 8874 proname => 'tsquery_not', prorettype => 'tsquery', proargtypes => 'tsquery', 8875 prosrc => 'tsquery_not' }, 8876 8877{ oid => '3691', 8878 proname => 'tsq_mcontains', prorettype => 'bool', 8879 proargtypes => 'tsquery tsquery', prosrc => 'tsq_mcontains' }, 8880{ oid => '3692', 8881 proname => 'tsq_mcontained', prorettype => 'bool', 8882 proargtypes => 'tsquery tsquery', prosrc => 'tsq_mcontained' }, 8883 8884{ oid => '3672', descr => 'number of nodes', 8885 proname => 'numnode', prorettype => 'int4', proargtypes => 'tsquery', 8886 prosrc => 'tsquery_numnode' }, 8887{ oid => '3673', descr => 'show real useful query for GiST index', 8888 proname => 'querytree', prorettype => 'text', proargtypes => 'tsquery', 8889 prosrc => 'tsquerytree' }, 8890 8891{ oid => '3684', descr => 'rewrite tsquery', 8892 proname => 'ts_rewrite', prorettype => 'tsquery', 8893 proargtypes => 'tsquery tsquery tsquery', prosrc => 'tsquery_rewrite' }, 8894{ oid => '3685', descr => 'rewrite tsquery', 8895 proname => 'ts_rewrite', procost => '100', provolatile => 'v', 8896 proparallel => 'u', prorettype => 'tsquery', proargtypes => 'tsquery text', 8897 prosrc => 'tsquery_rewrite_query' }, 8898 8899{ oid => '3695', descr => 'GiST tsquery support', 8900 proname => 'gtsquery_compress', prorettype => 'internal', 8901 proargtypes => 'internal', prosrc => 'gtsquery_compress' }, 8902{ oid => '3697', descr => 'GiST tsquery support', 8903 proname => 'gtsquery_picksplit', prorettype => 'internal', 8904 proargtypes => 'internal internal', prosrc => 'gtsquery_picksplit' }, 8905{ oid => '3698', descr => 'GiST tsquery support', 8906 proname => 'gtsquery_union', prorettype => 'int8', 8907 proargtypes => 'internal internal', prosrc => 'gtsquery_union' }, 8908{ oid => '3699', descr => 'GiST tsquery support', 8909 proname => 'gtsquery_same', prorettype => 'internal', 8910 proargtypes => 'int8 int8 internal', prosrc => 'gtsquery_same' }, 8911{ oid => '3700', descr => 'GiST tsquery support', 8912 proname => 'gtsquery_penalty', prorettype => 'internal', 8913 proargtypes => 'internal internal internal', prosrc => 'gtsquery_penalty' }, 8914{ oid => '3701', descr => 'GiST tsquery support', 8915 proname => 'gtsquery_consistent', prorettype => 'bool', 8916 proargtypes => 'internal tsquery int2 oid internal', 8917 prosrc => 'gtsquery_consistent' }, 8918{ oid => '3793', descr => 'GiST tsquery support (obsolete)', 8919 proname => 'gtsquery_consistent', prorettype => 'bool', 8920 proargtypes => 'internal internal int4 oid internal', 8921 prosrc => 'gtsquery_consistent_oldsig' }, 8922 8923{ oid => '3686', descr => 'restriction selectivity of tsvector @@ tsquery', 8924 proname => 'tsmatchsel', provolatile => 's', prorettype => 'float8', 8925 proargtypes => 'internal oid internal int4', prosrc => 'tsmatchsel' }, 8926{ oid => '3687', descr => 'join selectivity of tsvector @@ tsquery', 8927 proname => 'tsmatchjoinsel', provolatile => 's', prorettype => 'float8', 8928 proargtypes => 'internal oid internal int2 internal', 8929 prosrc => 'tsmatchjoinsel' }, 8930{ oid => '3688', descr => 'tsvector typanalyze', 8931 proname => 'ts_typanalyze', provolatile => 's', prorettype => 'bool', 8932 proargtypes => 'internal', prosrc => 'ts_typanalyze' }, 8933 8934{ oid => '3689', descr => 'statistics of tsvector column', 8935 proname => 'ts_stat', procost => '10', prorows => '10000', proretset => 't', 8936 provolatile => 'v', proparallel => 'u', prorettype => 'record', 8937 proargtypes => 'text', proallargtypes => '{text,text,int4,int4}', 8938 proargmodes => '{i,o,o,o}', proargnames => '{query,word,ndoc,nentry}', 8939 prosrc => 'ts_stat1' }, 8940{ oid => '3690', descr => 'statistics of tsvector column', 8941 proname => 'ts_stat', procost => '10', prorows => '10000', proretset => 't', 8942 provolatile => 'v', proparallel => 'u', prorettype => 'record', 8943 proargtypes => 'text text', proallargtypes => '{text,text,text,int4,int4}', 8944 proargmodes => '{i,i,o,o,o}', 8945 proargnames => '{query,weights,word,ndoc,nentry}', prosrc => 'ts_stat2' }, 8946 8947{ oid => '3703', descr => 'relevance', 8948 proname => 'ts_rank', prorettype => 'float4', 8949 proargtypes => '_float4 tsvector tsquery int4', prosrc => 'ts_rank_wttf' }, 8950{ oid => '3704', descr => 'relevance', 8951 proname => 'ts_rank', prorettype => 'float4', 8952 proargtypes => '_float4 tsvector tsquery', prosrc => 'ts_rank_wtt' }, 8953{ oid => '3705', descr => 'relevance', 8954 proname => 'ts_rank', prorettype => 'float4', 8955 proargtypes => 'tsvector tsquery int4', prosrc => 'ts_rank_ttf' }, 8956{ oid => '3706', descr => 'relevance', 8957 proname => 'ts_rank', prorettype => 'float4', 8958 proargtypes => 'tsvector tsquery', prosrc => 'ts_rank_tt' }, 8959{ oid => '3707', descr => 'relevance', 8960 proname => 'ts_rank_cd', prorettype => 'float4', 8961 proargtypes => '_float4 tsvector tsquery int4', prosrc => 'ts_rankcd_wttf' }, 8962{ oid => '3708', descr => 'relevance', 8963 proname => 'ts_rank_cd', prorettype => 'float4', 8964 proargtypes => '_float4 tsvector tsquery', prosrc => 'ts_rankcd_wtt' }, 8965{ oid => '3709', descr => 'relevance', 8966 proname => 'ts_rank_cd', prorettype => 'float4', 8967 proargtypes => 'tsvector tsquery int4', prosrc => 'ts_rankcd_ttf' }, 8968{ oid => '3710', descr => 'relevance', 8969 proname => 'ts_rank_cd', prorettype => 'float4', 8970 proargtypes => 'tsvector tsquery', prosrc => 'ts_rankcd_tt' }, 8971 8972{ oid => '3713', descr => 'get parser\'s token types', 8973 proname => 'ts_token_type', prorows => '16', proretset => 't', 8974 prorettype => 'record', proargtypes => 'oid', 8975 proallargtypes => '{oid,int4,text,text}', proargmodes => '{i,o,o,o}', 8976 proargnames => '{parser_oid,tokid,alias,description}', 8977 prosrc => 'ts_token_type_byid' }, 8978{ oid => '3714', descr => 'get parser\'s token types', 8979 proname => 'ts_token_type', prorows => '16', proretset => 't', 8980 provolatile => 's', prorettype => 'record', proargtypes => 'text', 8981 proallargtypes => '{text,int4,text,text}', proargmodes => '{i,o,o,o}', 8982 proargnames => '{parser_name,tokid,alias,description}', 8983 prosrc => 'ts_token_type_byname' }, 8984{ oid => '3715', descr => 'parse text to tokens', 8985 proname => 'ts_parse', prorows => '1000', proretset => 't', 8986 prorettype => 'record', proargtypes => 'oid text', 8987 proallargtypes => '{oid,text,int4,text}', proargmodes => '{i,i,o,o}', 8988 proargnames => '{parser_oid,txt,tokid,token}', prosrc => 'ts_parse_byid' }, 8989{ oid => '3716', descr => 'parse text to tokens', 8990 proname => 'ts_parse', prorows => '1000', proretset => 't', 8991 provolatile => 's', prorettype => 'record', proargtypes => 'text text', 8992 proallargtypes => '{text,text,int4,text}', proargmodes => '{i,i,o,o}', 8993 proargnames => '{parser_name,txt,tokid,token}', prosrc => 'ts_parse_byname' }, 8994 8995{ oid => '3717', descr => '(internal)', 8996 proname => 'prsd_start', prorettype => 'internal', 8997 proargtypes => 'internal int4', prosrc => 'prsd_start' }, 8998{ oid => '3718', descr => '(internal)', 8999 proname => 'prsd_nexttoken', prorettype => 'internal', 9000 proargtypes => 'internal internal internal', prosrc => 'prsd_nexttoken' }, 9001{ oid => '3719', descr => '(internal)', 9002 proname => 'prsd_end', prorettype => 'void', proargtypes => 'internal', 9003 prosrc => 'prsd_end' }, 9004{ oid => '3720', descr => '(internal)', 9005 proname => 'prsd_headline', prorettype => 'internal', 9006 proargtypes => 'internal internal tsquery', prosrc => 'prsd_headline' }, 9007{ oid => '3721', descr => '(internal)', 9008 proname => 'prsd_lextype', prorettype => 'internal', 9009 proargtypes => 'internal', prosrc => 'prsd_lextype' }, 9010 9011{ oid => '3723', descr => 'normalize one word by dictionary', 9012 proname => 'ts_lexize', prorettype => '_text', 9013 proargtypes => 'regdictionary text', prosrc => 'ts_lexize' }, 9014 9015{ oid => '3725', descr => '(internal)', 9016 proname => 'dsimple_init', prorettype => 'internal', 9017 proargtypes => 'internal', prosrc => 'dsimple_init' }, 9018{ oid => '3726', descr => '(internal)', 9019 proname => 'dsimple_lexize', prorettype => 'internal', 9020 proargtypes => 'internal internal internal internal', 9021 prosrc => 'dsimple_lexize' }, 9022 9023{ oid => '3728', descr => '(internal)', 9024 proname => 'dsynonym_init', prorettype => 'internal', 9025 proargtypes => 'internal', prosrc => 'dsynonym_init' }, 9026{ oid => '3729', descr => '(internal)', 9027 proname => 'dsynonym_lexize', prorettype => 'internal', 9028 proargtypes => 'internal internal internal internal', 9029 prosrc => 'dsynonym_lexize' }, 9030 9031{ oid => '3731', descr => '(internal)', 9032 proname => 'dispell_init', prorettype => 'internal', 9033 proargtypes => 'internal', prosrc => 'dispell_init' }, 9034{ oid => '3732', descr => '(internal)', 9035 proname => 'dispell_lexize', prorettype => 'internal', 9036 proargtypes => 'internal internal internal internal', 9037 prosrc => 'dispell_lexize' }, 9038 9039{ oid => '3740', descr => '(internal)', 9040 proname => 'thesaurus_init', prorettype => 'internal', 9041 proargtypes => 'internal', prosrc => 'thesaurus_init' }, 9042{ oid => '3741', descr => '(internal)', 9043 proname => 'thesaurus_lexize', prorettype => 'internal', 9044 proargtypes => 'internal internal internal internal', 9045 prosrc => 'thesaurus_lexize' }, 9046 9047{ oid => '3743', descr => 'generate headline', 9048 proname => 'ts_headline', procost => '100', prorettype => 'text', 9049 proargtypes => 'regconfig text tsquery text', 9050 prosrc => 'ts_headline_byid_opt' }, 9051{ oid => '3744', descr => 'generate headline', 9052 proname => 'ts_headline', procost => '100', prorettype => 'text', 9053 proargtypes => 'regconfig text tsquery', prosrc => 'ts_headline_byid' }, 9054{ oid => '3754', descr => 'generate headline', 9055 proname => 'ts_headline', procost => '100', provolatile => 's', 9056 prorettype => 'text', proargtypes => 'text tsquery text', 9057 prosrc => 'ts_headline_opt' }, 9058{ oid => '3755', descr => 'generate headline', 9059 proname => 'ts_headline', procost => '100', provolatile => 's', 9060 prorettype => 'text', proargtypes => 'text tsquery', 9061 prosrc => 'ts_headline' }, 9062 9063{ oid => '4201', descr => 'generate headline from jsonb', 9064 proname => 'ts_headline', procost => '100', prorettype => 'jsonb', 9065 proargtypes => 'regconfig jsonb tsquery text', 9066 prosrc => 'ts_headline_jsonb_byid_opt' }, 9067{ oid => '4202', descr => 'generate headline from jsonb', 9068 proname => 'ts_headline', procost => '100', prorettype => 'jsonb', 9069 proargtypes => 'regconfig jsonb tsquery', 9070 prosrc => 'ts_headline_jsonb_byid' }, 9071{ oid => '4203', descr => 'generate headline from jsonb', 9072 proname => 'ts_headline', procost => '100', provolatile => 's', 9073 prorettype => 'jsonb', proargtypes => 'jsonb tsquery text', 9074 prosrc => 'ts_headline_jsonb_opt' }, 9075{ oid => '4204', descr => 'generate headline from jsonb', 9076 proname => 'ts_headline', procost => '100', provolatile => 's', 9077 prorettype => 'jsonb', proargtypes => 'jsonb tsquery', 9078 prosrc => 'ts_headline_jsonb' }, 9079 9080{ oid => '4205', descr => 'generate headline from json', 9081 proname => 'ts_headline', procost => '100', prorettype => 'json', 9082 proargtypes => 'regconfig json tsquery text', 9083 prosrc => 'ts_headline_json_byid_opt' }, 9084{ oid => '4206', descr => 'generate headline from json', 9085 proname => 'ts_headline', procost => '100', prorettype => 'json', 9086 proargtypes => 'regconfig json tsquery', prosrc => 'ts_headline_json_byid' }, 9087{ oid => '4207', descr => 'generate headline from json', 9088 proname => 'ts_headline', procost => '100', provolatile => 's', 9089 prorettype => 'json', proargtypes => 'json tsquery text', 9090 prosrc => 'ts_headline_json_opt' }, 9091{ oid => '4208', descr => 'generate headline from json', 9092 proname => 'ts_headline', procost => '100', provolatile => 's', 9093 prorettype => 'json', proargtypes => 'json tsquery', 9094 prosrc => 'ts_headline_json' }, 9095 9096{ oid => '3745', descr => 'transform to tsvector', 9097 proname => 'to_tsvector', procost => '100', prorettype => 'tsvector', 9098 proargtypes => 'regconfig text', prosrc => 'to_tsvector_byid' }, 9099{ oid => '3746', descr => 'make tsquery', 9100 proname => 'to_tsquery', procost => '100', prorettype => 'tsquery', 9101 proargtypes => 'regconfig text', prosrc => 'to_tsquery_byid' }, 9102{ oid => '3747', descr => 'transform to tsquery', 9103 proname => 'plainto_tsquery', procost => '100', prorettype => 'tsquery', 9104 proargtypes => 'regconfig text', prosrc => 'plainto_tsquery_byid' }, 9105{ oid => '5006', descr => 'transform to tsquery', 9106 proname => 'phraseto_tsquery', procost => '100', prorettype => 'tsquery', 9107 proargtypes => 'regconfig text', prosrc => 'phraseto_tsquery_byid' }, 9108{ oid => '5007', descr => 'transform to tsquery', 9109 proname => 'websearch_to_tsquery', procost => '100', prorettype => 'tsquery', 9110 proargtypes => 'regconfig text', prosrc => 'websearch_to_tsquery_byid' }, 9111{ oid => '3749', descr => 'transform to tsvector', 9112 proname => 'to_tsvector', procost => '100', provolatile => 's', 9113 prorettype => 'tsvector', proargtypes => 'text', prosrc => 'to_tsvector' }, 9114{ oid => '3750', descr => 'make tsquery', 9115 proname => 'to_tsquery', procost => '100', provolatile => 's', 9116 prorettype => 'tsquery', proargtypes => 'text', prosrc => 'to_tsquery' }, 9117{ oid => '3751', descr => 'transform to tsquery', 9118 proname => 'plainto_tsquery', procost => '100', provolatile => 's', 9119 prorettype => 'tsquery', proargtypes => 'text', prosrc => 'plainto_tsquery' }, 9120{ oid => '5001', descr => 'transform to tsquery', 9121 proname => 'phraseto_tsquery', procost => '100', provolatile => 's', 9122 prorettype => 'tsquery', proargtypes => 'text', 9123 prosrc => 'phraseto_tsquery' }, 9124{ oid => '5009', descr => 'transform to tsquery', 9125 proname => 'websearch_to_tsquery', procost => '100', provolatile => 's', 9126 prorettype => 'tsquery', proargtypes => 'text', 9127 prosrc => 'websearch_to_tsquery' }, 9128{ oid => '4209', descr => 'transform string values from jsonb to tsvector', 9129 proname => 'to_tsvector', procost => '100', provolatile => 's', 9130 prorettype => 'tsvector', proargtypes => 'jsonb', 9131 prosrc => 'jsonb_string_to_tsvector' }, 9132{ oid => '4213', descr => 'transform specified values from jsonb to tsvector', 9133 proname => 'jsonb_to_tsvector', procost => '100', provolatile => 's', 9134 prorettype => 'tsvector', proargtypes => 'jsonb jsonb', 9135 prosrc => 'jsonb_to_tsvector' }, 9136{ oid => '4210', descr => 'transform string values from json to tsvector', 9137 proname => 'to_tsvector', procost => '100', provolatile => 's', 9138 prorettype => 'tsvector', proargtypes => 'json', 9139 prosrc => 'json_string_to_tsvector' }, 9140{ oid => '4215', descr => 'transform specified values from json to tsvector', 9141 proname => 'json_to_tsvector', procost => '100', provolatile => 's', 9142 prorettype => 'tsvector', proargtypes => 'json jsonb', 9143 prosrc => 'json_to_tsvector' }, 9144{ oid => '4211', descr => 'transform string values from jsonb to tsvector', 9145 proname => 'to_tsvector', procost => '100', prorettype => 'tsvector', 9146 proargtypes => 'regconfig jsonb', prosrc => 'jsonb_string_to_tsvector_byid' }, 9147{ oid => '4214', descr => 'transform specified values from jsonb to tsvector', 9148 proname => 'jsonb_to_tsvector', procost => '100', prorettype => 'tsvector', 9149 proargtypes => 'regconfig jsonb jsonb', prosrc => 'jsonb_to_tsvector_byid' }, 9150{ oid => '4212', descr => 'transform string values from json to tsvector', 9151 proname => 'to_tsvector', procost => '100', prorettype => 'tsvector', 9152 proargtypes => 'regconfig json', prosrc => 'json_string_to_tsvector_byid' }, 9153{ oid => '4216', descr => 'transform specified values from json to tsvector', 9154 proname => 'json_to_tsvector', procost => '100', prorettype => 'tsvector', 9155 proargtypes => 'regconfig json jsonb', prosrc => 'json_to_tsvector_byid' }, 9156 9157{ oid => '3752', descr => 'trigger for automatic update of tsvector column', 9158 proname => 'tsvector_update_trigger', proisstrict => 'f', provolatile => 'v', 9159 prorettype => 'trigger', proargtypes => '', 9160 prosrc => 'tsvector_update_trigger_byid' }, 9161{ oid => '3753', descr => 'trigger for automatic update of tsvector column', 9162 proname => 'tsvector_update_trigger_column', proisstrict => 'f', 9163 provolatile => 'v', prorettype => 'trigger', proargtypes => '', 9164 prosrc => 'tsvector_update_trigger_bycolumn' }, 9165 9166{ oid => '3759', descr => 'get current tsearch configuration', 9167 proname => 'get_current_ts_config', provolatile => 's', 9168 prorettype => 'regconfig', proargtypes => '', 9169 prosrc => 'get_current_ts_config' }, 9170 9171{ oid => '3736', descr => 'I/O', 9172 proname => 'regconfigin', provolatile => 's', prorettype => 'regconfig', 9173 proargtypes => 'cstring', prosrc => 'regconfigin' }, 9174{ oid => '3737', descr => 'I/O', 9175 proname => 'regconfigout', provolatile => 's', prorettype => 'cstring', 9176 proargtypes => 'regconfig', prosrc => 'regconfigout' }, 9177{ oid => '3738', descr => 'I/O', 9178 proname => 'regconfigrecv', prorettype => 'regconfig', 9179 proargtypes => 'internal', prosrc => 'regconfigrecv' }, 9180{ oid => '3739', descr => 'I/O', 9181 proname => 'regconfigsend', prorettype => 'bytea', proargtypes => 'regconfig', 9182 prosrc => 'regconfigsend' }, 9183 9184{ oid => '3771', descr => 'I/O', 9185 proname => 'regdictionaryin', provolatile => 's', 9186 prorettype => 'regdictionary', proargtypes => 'cstring', 9187 prosrc => 'regdictionaryin' }, 9188{ oid => '3772', descr => 'I/O', 9189 proname => 'regdictionaryout', provolatile => 's', prorettype => 'cstring', 9190 proargtypes => 'regdictionary', prosrc => 'regdictionaryout' }, 9191{ oid => '3773', descr => 'I/O', 9192 proname => 'regdictionaryrecv', prorettype => 'regdictionary', 9193 proargtypes => 'internal', prosrc => 'regdictionaryrecv' }, 9194{ oid => '3774', descr => 'I/O', 9195 proname => 'regdictionarysend', prorettype => 'bytea', 9196 proargtypes => 'regdictionary', prosrc => 'regdictionarysend' }, 9197 9198# jsonb 9199{ oid => '3806', descr => 'I/O', 9200 proname => 'jsonb_in', prorettype => 'jsonb', proargtypes => 'cstring', 9201 prosrc => 'jsonb_in' }, 9202{ oid => '3805', descr => 'I/O', 9203 proname => 'jsonb_recv', prorettype => 'jsonb', proargtypes => 'internal', 9204 prosrc => 'jsonb_recv' }, 9205{ oid => '3804', descr => 'I/O', 9206 proname => 'jsonb_out', prorettype => 'cstring', proargtypes => 'jsonb', 9207 prosrc => 'jsonb_out' }, 9208{ oid => '3803', descr => 'I/O', 9209 proname => 'jsonb_send', prorettype => 'bytea', proargtypes => 'jsonb', 9210 prosrc => 'jsonb_send' }, 9211 9212{ oid => '3263', descr => 'map text array of key value pairs to jsonb object', 9213 proname => 'jsonb_object', prorettype => 'jsonb', proargtypes => '_text', 9214 prosrc => 'jsonb_object' }, 9215{ oid => '3264', descr => 'map text array of key value pairs to jsonb object', 9216 proname => 'jsonb_object', prorettype => 'jsonb', 9217 proargtypes => '_text _text', prosrc => 'jsonb_object_two_arg' }, 9218{ oid => '3787', descr => 'map input to jsonb', 9219 proname => 'to_jsonb', provolatile => 's', prorettype => 'jsonb', 9220 proargtypes => 'anyelement', prosrc => 'to_jsonb' }, 9221{ oid => '3265', descr => 'jsonb aggregate transition function', 9222 proname => 'jsonb_agg_transfn', proisstrict => 'f', provolatile => 's', 9223 prorettype => 'internal', proargtypes => 'internal anyelement', 9224 prosrc => 'jsonb_agg_transfn' }, 9225{ oid => '3266', descr => 'jsonb aggregate final function', 9226 proname => 'jsonb_agg_finalfn', proisstrict => 'f', provolatile => 's', 9227 prorettype => 'jsonb', proargtypes => 'internal', 9228 prosrc => 'jsonb_agg_finalfn' }, 9229{ oid => '3267', descr => 'aggregate input into jsonb', 9230 proname => 'jsonb_agg', prokind => 'a', proisstrict => 'f', 9231 provolatile => 's', prorettype => 'jsonb', proargtypes => 'anyelement', 9232 prosrc => 'aggregate_dummy' }, 9233{ oid => '3268', descr => 'jsonb object aggregate transition function', 9234 proname => 'jsonb_object_agg_transfn', proisstrict => 'f', provolatile => 's', 9235 prorettype => 'internal', proargtypes => 'internal any any', 9236 prosrc => 'jsonb_object_agg_transfn' }, 9237{ oid => '3269', descr => 'jsonb object aggregate final function', 9238 proname => 'jsonb_object_agg_finalfn', proisstrict => 'f', provolatile => 's', 9239 prorettype => 'jsonb', proargtypes => 'internal', 9240 prosrc => 'jsonb_object_agg_finalfn' }, 9241{ oid => '3270', descr => 'aggregate inputs into jsonb object', 9242 proname => 'jsonb_object_agg', prokind => 'a', proisstrict => 'f', 9243 prorettype => 'jsonb', proargtypes => 'any any', 9244 prosrc => 'aggregate_dummy' }, 9245{ oid => '3271', descr => 'build a jsonb array from any inputs', 9246 proname => 'jsonb_build_array', provariadic => 'any', proisstrict => 'f', 9247 provolatile => 's', prorettype => 'jsonb', proargtypes => 'any', 9248 proallargtypes => '{any}', proargmodes => '{v}', 9249 prosrc => 'jsonb_build_array' }, 9250{ oid => '3272', descr => 'build an empty jsonb array', 9251 proname => 'jsonb_build_array', proisstrict => 'f', provolatile => 's', 9252 prorettype => 'jsonb', proargtypes => '', 9253 prosrc => 'jsonb_build_array_noargs' }, 9254{ oid => '3273', 9255 descr => 'build a jsonb object from pairwise key/value inputs', 9256 proname => 'jsonb_build_object', provariadic => 'any', proisstrict => 'f', 9257 provolatile => 's', prorettype => 'jsonb', proargtypes => 'any', 9258 proallargtypes => '{any}', proargmodes => '{v}', 9259 prosrc => 'jsonb_build_object' }, 9260{ oid => '3274', descr => 'build an empty jsonb object', 9261 proname => 'jsonb_build_object', proisstrict => 'f', provolatile => 's', 9262 prorettype => 'jsonb', proargtypes => '', 9263 prosrc => 'jsonb_build_object_noargs' }, 9264{ oid => '3262', descr => 'remove object fields with null values from jsonb', 9265 proname => 'jsonb_strip_nulls', prorettype => 'jsonb', proargtypes => 'jsonb', 9266 prosrc => 'jsonb_strip_nulls' }, 9267 9268{ oid => '3478', 9269 proname => 'jsonb_object_field', prorettype => 'jsonb', 9270 proargtypes => 'jsonb text', proargnames => '{from_json, field_name}', 9271 prosrc => 'jsonb_object_field' }, 9272{ oid => '3214', 9273 proname => 'jsonb_object_field_text', prorettype => 'text', 9274 proargtypes => 'jsonb text', proargnames => '{from_json, field_name}', 9275 prosrc => 'jsonb_object_field_text' }, 9276{ oid => '3215', 9277 proname => 'jsonb_array_element', prorettype => 'jsonb', 9278 proargtypes => 'jsonb int4', proargnames => '{from_json, element_index}', 9279 prosrc => 'jsonb_array_element' }, 9280{ oid => '3216', 9281 proname => 'jsonb_array_element_text', prorettype => 'text', 9282 proargtypes => 'jsonb int4', proargnames => '{from_json, element_index}', 9283 prosrc => 'jsonb_array_element_text' }, 9284{ oid => '3217', descr => 'get value from jsonb with path elements', 9285 proname => 'jsonb_extract_path', provariadic => 'text', prorettype => 'jsonb', 9286 proargtypes => 'jsonb _text', proallargtypes => '{jsonb,_text}', 9287 proargmodes => '{i,v}', proargnames => '{from_json,path_elems}', 9288 prosrc => 'jsonb_extract_path' }, 9289{ oid => '3940', descr => 'get value from jsonb as text with path elements', 9290 proname => 'jsonb_extract_path_text', provariadic => 'text', 9291 prorettype => 'text', proargtypes => 'jsonb _text', 9292 proallargtypes => '{jsonb,_text}', proargmodes => '{i,v}', 9293 proargnames => '{from_json,path_elems}', 9294 prosrc => 'jsonb_extract_path_text' }, 9295{ oid => '3219', descr => 'elements of a jsonb array', 9296 proname => 'jsonb_array_elements', prorows => '100', proretset => 't', 9297 prorettype => 'jsonb', proargtypes => 'jsonb', 9298 proallargtypes => '{jsonb,jsonb}', proargmodes => '{i,o}', 9299 proargnames => '{from_json,value}', prosrc => 'jsonb_array_elements' }, 9300{ oid => '3465', descr => 'elements of jsonb array', 9301 proname => 'jsonb_array_elements_text', prorows => '100', proretset => 't', 9302 prorettype => 'text', proargtypes => 'jsonb', 9303 proallargtypes => '{jsonb,text}', proargmodes => '{i,o}', 9304 proargnames => '{from_json,value}', prosrc => 'jsonb_array_elements_text' }, 9305{ oid => '3207', descr => 'length of jsonb array', 9306 proname => 'jsonb_array_length', prorettype => 'int4', proargtypes => 'jsonb', 9307 prosrc => 'jsonb_array_length' }, 9308{ oid => '3931', descr => 'get jsonb object keys', 9309 proname => 'jsonb_object_keys', prorows => '100', proretset => 't', 9310 prorettype => 'text', proargtypes => 'jsonb', prosrc => 'jsonb_object_keys' }, 9311{ oid => '3208', descr => 'key value pairs of a jsonb object', 9312 proname => 'jsonb_each', prorows => '100', proretset => 't', 9313 prorettype => 'record', proargtypes => 'jsonb', 9314 proallargtypes => '{jsonb,text,jsonb}', proargmodes => '{i,o,o}', 9315 proargnames => '{from_json,key,value}', prosrc => 'jsonb_each' }, 9316{ oid => '3932', descr => 'key value pairs of a jsonb object', 9317 proname => 'jsonb_each_text', prorows => '100', proretset => 't', 9318 prorettype => 'record', proargtypes => 'jsonb', 9319 proallargtypes => '{jsonb,text,text}', proargmodes => '{i,o,o}', 9320 proargnames => '{from_json,key,value}', prosrc => 'jsonb_each_text' }, 9321{ oid => '3209', descr => 'get record fields from a jsonb object', 9322 proname => 'jsonb_populate_record', proisstrict => 'f', provolatile => 's', 9323 prorettype => 'anyelement', proargtypes => 'anyelement jsonb', 9324 prosrc => 'jsonb_populate_record' }, 9325{ oid => '3475', 9326 descr => 'get set of records with fields from a jsonb array of objects', 9327 proname => 'jsonb_populate_recordset', prorows => '100', proisstrict => 'f', 9328 proretset => 't', provolatile => 's', prorettype => 'anyelement', 9329 proargtypes => 'anyelement jsonb', prosrc => 'jsonb_populate_recordset' }, 9330{ oid => '3490', descr => 'get record fields from a jsonb object', 9331 proname => 'jsonb_to_record', provolatile => 's', prorettype => 'record', 9332 proargtypes => 'jsonb', prosrc => 'jsonb_to_record' }, 9333{ oid => '3491', 9334 descr => 'get set of records with fields from a jsonb array of objects', 9335 proname => 'jsonb_to_recordset', prorows => '100', proisstrict => 'f', 9336 proretset => 't', provolatile => 's', prorettype => 'record', 9337 proargtypes => 'jsonb', prosrc => 'jsonb_to_recordset' }, 9338{ oid => '3210', descr => 'get the type of a jsonb value', 9339 proname => 'jsonb_typeof', prorettype => 'text', proargtypes => 'jsonb', 9340 prosrc => 'jsonb_typeof' }, 9341{ oid => '4038', 9342 proname => 'jsonb_ne', prorettype => 'bool', proargtypes => 'jsonb jsonb', 9343 prosrc => 'jsonb_ne' }, 9344{ oid => '4039', 9345 proname => 'jsonb_lt', prorettype => 'bool', proargtypes => 'jsonb jsonb', 9346 prosrc => 'jsonb_lt' }, 9347{ oid => '4040', 9348 proname => 'jsonb_gt', prorettype => 'bool', proargtypes => 'jsonb jsonb', 9349 prosrc => 'jsonb_gt' }, 9350{ oid => '4041', 9351 proname => 'jsonb_le', prorettype => 'bool', proargtypes => 'jsonb jsonb', 9352 prosrc => 'jsonb_le' }, 9353{ oid => '4042', 9354 proname => 'jsonb_ge', prorettype => 'bool', proargtypes => 'jsonb jsonb', 9355 prosrc => 'jsonb_ge' }, 9356{ oid => '4043', 9357 proname => 'jsonb_eq', prorettype => 'bool', proargtypes => 'jsonb jsonb', 9358 prosrc => 'jsonb_eq' }, 9359{ oid => '4044', descr => 'less-equal-greater', 9360 proname => 'jsonb_cmp', prorettype => 'int4', proargtypes => 'jsonb jsonb', 9361 prosrc => 'jsonb_cmp' }, 9362{ oid => '4045', descr => 'hash', 9363 proname => 'jsonb_hash', prorettype => 'int4', proargtypes => 'jsonb', 9364 prosrc => 'jsonb_hash' }, 9365{ oid => '3416', descr => 'hash', 9366 proname => 'jsonb_hash_extended', prorettype => 'int8', 9367 proargtypes => 'jsonb int8', prosrc => 'jsonb_hash_extended' }, 9368{ oid => '4046', 9369 proname => 'jsonb_contains', prorettype => 'bool', 9370 proargtypes => 'jsonb jsonb', prosrc => 'jsonb_contains' }, 9371{ oid => '4047', 9372 proname => 'jsonb_exists', prorettype => 'bool', proargtypes => 'jsonb text', 9373 prosrc => 'jsonb_exists' }, 9374{ oid => '4048', 9375 proname => 'jsonb_exists_any', prorettype => 'bool', 9376 proargtypes => 'jsonb _text', prosrc => 'jsonb_exists_any' }, 9377{ oid => '4049', 9378 proname => 'jsonb_exists_all', prorettype => 'bool', 9379 proargtypes => 'jsonb _text', prosrc => 'jsonb_exists_all' }, 9380{ oid => '4050', 9381 proname => 'jsonb_contained', prorettype => 'bool', 9382 proargtypes => 'jsonb jsonb', prosrc => 'jsonb_contained' }, 9383{ oid => '3480', descr => 'GIN support', 9384 proname => 'gin_compare_jsonb', prorettype => 'int4', 9385 proargtypes => 'text text', prosrc => 'gin_compare_jsonb' }, 9386{ oid => '3482', descr => 'GIN support', 9387 proname => 'gin_extract_jsonb', prorettype => 'internal', 9388 proargtypes => 'jsonb internal internal', prosrc => 'gin_extract_jsonb' }, 9389{ oid => '3483', descr => 'GIN support', 9390 proname => 'gin_extract_jsonb_query', prorettype => 'internal', 9391 proargtypes => 'jsonb internal int2 internal internal internal internal', 9392 prosrc => 'gin_extract_jsonb_query' }, 9393{ oid => '3484', descr => 'GIN support', 9394 proname => 'gin_consistent_jsonb', prorettype => 'bool', 9395 proargtypes => 'internal int2 jsonb int4 internal internal internal internal', 9396 prosrc => 'gin_consistent_jsonb' }, 9397{ oid => '3488', descr => 'GIN support', 9398 proname => 'gin_triconsistent_jsonb', prorettype => 'char', 9399 proargtypes => 'internal int2 jsonb int4 internal internal internal', 9400 prosrc => 'gin_triconsistent_jsonb' }, 9401{ oid => '3485', descr => 'GIN support', 9402 proname => 'gin_extract_jsonb_path', prorettype => 'internal', 9403 proargtypes => 'jsonb internal internal', 9404 prosrc => 'gin_extract_jsonb_path' }, 9405{ oid => '3486', descr => 'GIN support', 9406 proname => 'gin_extract_jsonb_query_path', prorettype => 'internal', 9407 proargtypes => 'jsonb internal int2 internal internal internal internal', 9408 prosrc => 'gin_extract_jsonb_query_path' }, 9409{ oid => '3487', descr => 'GIN support', 9410 proname => 'gin_consistent_jsonb_path', prorettype => 'bool', 9411 proargtypes => 'internal int2 jsonb int4 internal internal internal internal', 9412 prosrc => 'gin_consistent_jsonb_path' }, 9413{ oid => '3489', descr => 'GIN support', 9414 proname => 'gin_triconsistent_jsonb_path', prorettype => 'char', 9415 proargtypes => 'internal int2 jsonb int4 internal internal internal', 9416 prosrc => 'gin_triconsistent_jsonb_path' }, 9417{ oid => '3301', 9418 proname => 'jsonb_concat', prorettype => 'jsonb', 9419 proargtypes => 'jsonb jsonb', prosrc => 'jsonb_concat' }, 9420{ oid => '3302', 9421 proname => 'jsonb_delete', prorettype => 'jsonb', proargtypes => 'jsonb text', 9422 prosrc => 'jsonb_delete' }, 9423{ oid => '3303', 9424 proname => 'jsonb_delete', prorettype => 'jsonb', proargtypes => 'jsonb int4', 9425 prosrc => 'jsonb_delete_idx' }, 9426{ oid => '3343', 9427 proname => 'jsonb_delete', provariadic => 'text', prorettype => 'jsonb', 9428 proargtypes => 'jsonb _text', proallargtypes => '{jsonb,_text}', 9429 proargmodes => '{i,v}', proargnames => '{from_json,path_elems}', 9430 prosrc => 'jsonb_delete_array' }, 9431{ oid => '3304', 9432 proname => 'jsonb_delete_path', prorettype => 'jsonb', 9433 proargtypes => 'jsonb _text', prosrc => 'jsonb_delete_path' }, 9434{ oid => '5054', descr => 'Set part of a jsonb, handle NULL value', 9435 proname => 'jsonb_set_lax', proisstrict => 'f', prorettype => 'jsonb', 9436 proargtypes => 'jsonb _text jsonb bool text', prosrc => 'jsonb_set_lax' }, 9437{ oid => '3305', descr => 'Set part of a jsonb', 9438 proname => 'jsonb_set', prorettype => 'jsonb', 9439 proargtypes => 'jsonb _text jsonb bool', prosrc => 'jsonb_set' }, 9440{ oid => '3306', descr => 'Indented text from jsonb', 9441 proname => 'jsonb_pretty', prorettype => 'text', proargtypes => 'jsonb', 9442 prosrc => 'jsonb_pretty' }, 9443{ oid => '3579', descr => 'Insert value into a jsonb', 9444 proname => 'jsonb_insert', prorettype => 'jsonb', 9445 proargtypes => 'jsonb _text jsonb bool', prosrc => 'jsonb_insert' }, 9446 9447# jsonpath 9448{ oid => '4001', descr => 'I/O', 9449 proname => 'jsonpath_in', prorettype => 'jsonpath', proargtypes => 'cstring', 9450 prosrc => 'jsonpath_in' }, 9451{ oid => '4002', descr => 'I/O', 9452 proname => 'jsonpath_recv', prorettype => 'jsonpath', 9453 proargtypes => 'internal', prosrc => 'jsonpath_recv' }, 9454{ oid => '4003', descr => 'I/O', 9455 proname => 'jsonpath_out', prorettype => 'cstring', proargtypes => 'jsonpath', 9456 prosrc => 'jsonpath_out' }, 9457{ oid => '4004', descr => 'I/O', 9458 proname => 'jsonpath_send', prorettype => 'bytea', proargtypes => 'jsonpath', 9459 prosrc => 'jsonpath_send' }, 9460 9461{ oid => '4005', descr => 'jsonpath exists test', 9462 proname => 'jsonb_path_exists', prorettype => 'bool', 9463 proargtypes => 'jsonb jsonpath jsonb bool', prosrc => 'jsonb_path_exists' }, 9464{ oid => '4006', descr => 'jsonpath query', 9465 proname => 'jsonb_path_query', prorows => '1000', proretset => 't', 9466 prorettype => 'jsonb', proargtypes => 'jsonb jsonpath jsonb bool', 9467 prosrc => 'jsonb_path_query' }, 9468{ oid => '4007', descr => 'jsonpath query wrapped into array', 9469 proname => 'jsonb_path_query_array', prorettype => 'jsonb', 9470 proargtypes => 'jsonb jsonpath jsonb bool', 9471 prosrc => 'jsonb_path_query_array' }, 9472{ oid => '4008', descr => 'jsonpath query first item', 9473 proname => 'jsonb_path_query_first', prorettype => 'jsonb', 9474 proargtypes => 'jsonb jsonpath jsonb bool', 9475 prosrc => 'jsonb_path_query_first' }, 9476{ oid => '4009', descr => 'jsonpath match', 9477 proname => 'jsonb_path_match', prorettype => 'bool', 9478 proargtypes => 'jsonb jsonpath jsonb bool', prosrc => 'jsonb_path_match' }, 9479 9480{ oid => '1177', descr => 'jsonpath exists test with timezone', 9481 proname => 'jsonb_path_exists_tz', provolatile => 's', prorettype => 'bool', 9482 proargtypes => 'jsonb jsonpath jsonb bool', 9483 prosrc => 'jsonb_path_exists_tz' }, 9484{ oid => '1179', descr => 'jsonpath query with timezone', 9485 proname => 'jsonb_path_query_tz', prorows => '1000', proretset => 't', 9486 provolatile => 's', prorettype => 'jsonb', 9487 proargtypes => 'jsonb jsonpath jsonb bool', prosrc => 'jsonb_path_query_tz' }, 9488{ oid => '1180', descr => 'jsonpath query wrapped into array with timezone', 9489 proname => 'jsonb_path_query_array_tz', provolatile => 's', 9490 prorettype => 'jsonb', proargtypes => 'jsonb jsonpath jsonb bool', 9491 prosrc => 'jsonb_path_query_array_tz' }, 9492{ oid => '2023', descr => 'jsonpath query first item with timezone', 9493 proname => 'jsonb_path_query_first_tz', provolatile => 's', 9494 prorettype => 'jsonb', proargtypes => 'jsonb jsonpath jsonb bool', 9495 prosrc => 'jsonb_path_query_first_tz' }, 9496{ oid => '2030', descr => 'jsonpath match with timezone', 9497 proname => 'jsonb_path_match_tz', provolatile => 's', prorettype => 'bool', 9498 proargtypes => 'jsonb jsonpath jsonb bool', prosrc => 'jsonb_path_match_tz' }, 9499 9500{ oid => '4010', descr => 'implementation of @? operator', 9501 proname => 'jsonb_path_exists_opr', prorettype => 'bool', 9502 proargtypes => 'jsonb jsonpath', prosrc => 'jsonb_path_exists_opr' }, 9503{ oid => '4011', descr => 'implementation of @@ operator', 9504 proname => 'jsonb_path_match_opr', prorettype => 'bool', 9505 proargtypes => 'jsonb jsonpath', prosrc => 'jsonb_path_match_opr' }, 9506 9507# historical int8/txid_snapshot variants of xid8 functions 9508{ oid => '2939', descr => 'I/O', 9509 proname => 'txid_snapshot_in', prorettype => 'txid_snapshot', 9510 proargtypes => 'cstring', prosrc => 'pg_snapshot_in' }, 9511{ oid => '2940', descr => 'I/O', 9512 proname => 'txid_snapshot_out', prorettype => 'cstring', 9513 proargtypes => 'txid_snapshot', prosrc => 'pg_snapshot_out' }, 9514{ oid => '2941', descr => 'I/O', 9515 proname => 'txid_snapshot_recv', prorettype => 'txid_snapshot', 9516 proargtypes => 'internal', prosrc => 'pg_snapshot_recv' }, 9517{ oid => '2942', descr => 'I/O', 9518 proname => 'txid_snapshot_send', prorettype => 'bytea', 9519 proargtypes => 'txid_snapshot', prosrc => 'pg_snapshot_send' }, 9520{ oid => '2943', descr => 'get current transaction ID', 9521 proname => 'txid_current', provolatile => 's', proparallel => 'u', 9522 prorettype => 'int8', proargtypes => '', prosrc => 'pg_current_xact_id' }, 9523{ oid => '3348', descr => 'get current transaction ID', 9524 proname => 'txid_current_if_assigned', provolatile => 's', proparallel => 'u', 9525 prorettype => 'int8', proargtypes => '', 9526 prosrc => 'pg_current_xact_id_if_assigned' }, 9527{ oid => '2944', descr => 'get current snapshot', 9528 proname => 'txid_current_snapshot', provolatile => 's', 9529 prorettype => 'txid_snapshot', proargtypes => '', 9530 prosrc => 'pg_current_snapshot' }, 9531{ oid => '2945', descr => 'get xmin of snapshot', 9532 proname => 'txid_snapshot_xmin', prorettype => 'int8', 9533 proargtypes => 'txid_snapshot', prosrc => 'pg_snapshot_xmin' }, 9534{ oid => '2946', descr => 'get xmax of snapshot', 9535 proname => 'txid_snapshot_xmax', prorettype => 'int8', 9536 proargtypes => 'txid_snapshot', prosrc => 'pg_snapshot_xmax' }, 9537{ oid => '2947', descr => 'get set of in-progress txids in snapshot', 9538 proname => 'txid_snapshot_xip', prorows => '50', proretset => 't', 9539 prorettype => 'int8', proargtypes => 'txid_snapshot', 9540 prosrc => 'pg_snapshot_xip' }, 9541{ oid => '2948', descr => 'is txid visible in snapshot?', 9542 proname => 'txid_visible_in_snapshot', prorettype => 'bool', 9543 proargtypes => 'int8 txid_snapshot', prosrc => 'pg_visible_in_snapshot' }, 9544{ oid => '3360', descr => 'commit status of transaction', 9545 proname => 'txid_status', provolatile => 'v', prorettype => 'text', 9546 proargtypes => 'int8', prosrc => 'pg_xact_status' }, 9547 9548# pg_snapshot functions 9549{ oid => '5055', descr => 'I/O', 9550 proname => 'pg_snapshot_in', prorettype => 'pg_snapshot', 9551 proargtypes => 'cstring', prosrc => 'pg_snapshot_in' }, 9552{ oid => '5056', descr => 'I/O', 9553 proname => 'pg_snapshot_out', prorettype => 'cstring', 9554 proargtypes => 'pg_snapshot', prosrc => 'pg_snapshot_out' }, 9555{ oid => '5057', descr => 'I/O', 9556 proname => 'pg_snapshot_recv', prorettype => 'pg_snapshot', 9557 proargtypes => 'internal', prosrc => 'pg_snapshot_recv' }, 9558{ oid => '5058', descr => 'I/O', 9559 proname => 'pg_snapshot_send', prorettype => 'bytea', 9560 proargtypes => 'pg_snapshot', prosrc => 'pg_snapshot_send' }, 9561{ oid => '5061', descr => 'get current snapshot', 9562 proname => 'pg_current_snapshot', provolatile => 's', 9563 prorettype => 'pg_snapshot', proargtypes => '', 9564 prosrc => 'pg_current_snapshot' }, 9565{ oid => '5062', descr => 'get xmin of snapshot', 9566 proname => 'pg_snapshot_xmin', prorettype => 'xid8', 9567 proargtypes => 'pg_snapshot', prosrc => 'pg_snapshot_xmin' }, 9568{ oid => '5063', descr => 'get xmax of snapshot', 9569 proname => 'pg_snapshot_xmax', prorettype => 'xid8', 9570 proargtypes => 'pg_snapshot', prosrc => 'pg_snapshot_xmax' }, 9571{ oid => '5064', descr => 'get set of in-progress transactions in snapshot', 9572 proname => 'pg_snapshot_xip', prorows => '50', proretset => 't', 9573 prorettype => 'xid8', proargtypes => 'pg_snapshot', 9574 prosrc => 'pg_snapshot_xip' }, 9575{ oid => '5065', descr => 'is xid8 visible in snapshot?', 9576 proname => 'pg_visible_in_snapshot', prorettype => 'bool', 9577 proargtypes => 'xid8 pg_snapshot', prosrc => 'pg_visible_in_snapshot' }, 9578 9579# transaction ID and status functions 9580{ oid => '5059', descr => 'get current transaction ID', 9581 proname => 'pg_current_xact_id', provolatile => 's', proparallel => 'u', 9582 prorettype => 'xid8', proargtypes => '', prosrc => 'pg_current_xact_id' }, 9583{ oid => '5060', descr => 'get current transaction ID', 9584 proname => 'pg_current_xact_id_if_assigned', provolatile => 's', 9585 proparallel => 'u', prorettype => 'xid8', proargtypes => '', 9586 prosrc => 'pg_current_xact_id_if_assigned' }, 9587{ oid => '5066', descr => 'commit status of transaction', 9588 proname => 'pg_xact_status', provolatile => 'v', prorettype => 'text', 9589 proargtypes => 'xid8', prosrc => 'pg_xact_status' }, 9590 9591# record comparison using normal comparison rules 9592{ oid => '2981', 9593 proname => 'record_eq', prorettype => 'bool', proargtypes => 'record record', 9594 prosrc => 'record_eq' }, 9595{ oid => '2982', 9596 proname => 'record_ne', prorettype => 'bool', proargtypes => 'record record', 9597 prosrc => 'record_ne' }, 9598{ oid => '2983', 9599 proname => 'record_lt', prorettype => 'bool', proargtypes => 'record record', 9600 prosrc => 'record_lt' }, 9601{ oid => '2984', 9602 proname => 'record_gt', prorettype => 'bool', proargtypes => 'record record', 9603 prosrc => 'record_gt' }, 9604{ oid => '2985', 9605 proname => 'record_le', prorettype => 'bool', proargtypes => 'record record', 9606 prosrc => 'record_le' }, 9607{ oid => '2986', 9608 proname => 'record_ge', prorettype => 'bool', proargtypes => 'record record', 9609 prosrc => 'record_ge' }, 9610{ oid => '2987', descr => 'less-equal-greater', 9611 proname => 'btrecordcmp', prorettype => 'int4', 9612 proargtypes => 'record record', prosrc => 'btrecordcmp' }, 9613 9614# record comparison using raw byte images 9615{ oid => '3181', 9616 proname => 'record_image_eq', prorettype => 'bool', 9617 proargtypes => 'record record', prosrc => 'record_image_eq' }, 9618{ oid => '3182', 9619 proname => 'record_image_ne', prorettype => 'bool', 9620 proargtypes => 'record record', prosrc => 'record_image_ne' }, 9621{ oid => '3183', 9622 proname => 'record_image_lt', prorettype => 'bool', 9623 proargtypes => 'record record', prosrc => 'record_image_lt' }, 9624{ oid => '3184', 9625 proname => 'record_image_gt', prorettype => 'bool', 9626 proargtypes => 'record record', prosrc => 'record_image_gt' }, 9627{ oid => '3185', 9628 proname => 'record_image_le', prorettype => 'bool', 9629 proargtypes => 'record record', prosrc => 'record_image_le' }, 9630{ oid => '3186', 9631 proname => 'record_image_ge', prorettype => 'bool', 9632 proargtypes => 'record record', prosrc => 'record_image_ge' }, 9633{ oid => '3187', descr => 'less-equal-greater based on byte images', 9634 proname => 'btrecordimagecmp', prorettype => 'int4', 9635 proargtypes => 'record record', prosrc => 'btrecordimagecmp' }, 9636{ oid => '5051', descr => 'equal image', 9637 proname => 'btequalimage', prorettype => 'bool', proargtypes => 'oid', 9638 prosrc => 'btequalimage' }, 9639 9640# Extensions 9641{ oid => '3082', descr => 'list available extensions', 9642 proname => 'pg_available_extensions', procost => '10', prorows => '100', 9643 proretset => 't', provolatile => 's', prorettype => 'record', 9644 proargtypes => '', proallargtypes => '{name,text,text}', 9645 proargmodes => '{o,o,o}', proargnames => '{name,default_version,comment}', 9646 prosrc => 'pg_available_extensions' }, 9647{ oid => '3083', descr => 'list available extension versions', 9648 proname => 'pg_available_extension_versions', procost => '10', 9649 prorows => '100', proretset => 't', provolatile => 's', 9650 prorettype => 'record', proargtypes => '', 9651 proallargtypes => '{name,text,bool,bool,bool,name,_name,text}', 9652 proargmodes => '{o,o,o,o,o,o,o,o}', 9653 proargnames => '{name,version,superuser,trusted,relocatable,schema,requires,comment}', 9654 prosrc => 'pg_available_extension_versions' }, 9655{ oid => '3084', descr => 'list an extension\'s version update paths', 9656 proname => 'pg_extension_update_paths', procost => '10', prorows => '100', 9657 proretset => 't', provolatile => 's', prorettype => 'record', 9658 proargtypes => 'name', proallargtypes => '{name,text,text,text}', 9659 proargmodes => '{i,o,o,o}', proargnames => '{name,source,target,path}', 9660 prosrc => 'pg_extension_update_paths' }, 9661{ oid => '3086', 9662 descr => 'flag an extension\'s table contents to be emitted by pg_dump', 9663 proname => 'pg_extension_config_dump', provolatile => 'v', proparallel => 'u', 9664 prorettype => 'void', proargtypes => 'regclass text', 9665 prosrc => 'pg_extension_config_dump' }, 9666 9667# SQL-spec window functions 9668{ oid => '3100', descr => 'row number within partition', 9669 proname => 'row_number', prokind => 'w', proisstrict => 'f', 9670 prorettype => 'int8', proargtypes => '', prosrc => 'window_row_number' }, 9671{ oid => '3101', descr => 'integer rank with gaps', 9672 proname => 'rank', prokind => 'w', proisstrict => 'f', prorettype => 'int8', 9673 proargtypes => '', prosrc => 'window_rank' }, 9674{ oid => '3102', descr => 'integer rank without gaps', 9675 proname => 'dense_rank', prokind => 'w', proisstrict => 'f', 9676 prorettype => 'int8', proargtypes => '', prosrc => 'window_dense_rank' }, 9677{ oid => '3103', descr => 'fractional rank within partition', 9678 proname => 'percent_rank', prokind => 'w', proisstrict => 'f', 9679 prorettype => 'float8', proargtypes => '', prosrc => 'window_percent_rank' }, 9680{ oid => '3104', descr => 'fractional row number within partition', 9681 proname => 'cume_dist', prokind => 'w', proisstrict => 'f', 9682 prorettype => 'float8', proargtypes => '', prosrc => 'window_cume_dist' }, 9683{ oid => '3105', descr => 'split rows into N groups', 9684 proname => 'ntile', prokind => 'w', prorettype => 'int4', 9685 proargtypes => 'int4', prosrc => 'window_ntile' }, 9686{ oid => '3106', descr => 'fetch the preceding row value', 9687 proname => 'lag', prokind => 'w', prorettype => 'anyelement', 9688 proargtypes => 'anyelement', prosrc => 'window_lag' }, 9689{ oid => '3107', descr => 'fetch the Nth preceding row value', 9690 proname => 'lag', prokind => 'w', prorettype => 'anyelement', 9691 proargtypes => 'anyelement int4', prosrc => 'window_lag_with_offset' }, 9692{ oid => '3108', descr => 'fetch the Nth preceding row value with default', 9693 proname => 'lag', prokind => 'w', prorettype => 'anyelement', 9694 proargtypes => 'anyelement int4 anyelement', 9695 prosrc => 'window_lag_with_offset_and_default' }, 9696{ oid => '3109', descr => 'fetch the following row value', 9697 proname => 'lead', prokind => 'w', prorettype => 'anyelement', 9698 proargtypes => 'anyelement', prosrc => 'window_lead' }, 9699{ oid => '3110', descr => 'fetch the Nth following row value', 9700 proname => 'lead', prokind => 'w', prorettype => 'anyelement', 9701 proargtypes => 'anyelement int4', prosrc => 'window_lead_with_offset' }, 9702{ oid => '3111', descr => 'fetch the Nth following row value with default', 9703 proname => 'lead', prokind => 'w', prorettype => 'anyelement', 9704 proargtypes => 'anyelement int4 anyelement', 9705 prosrc => 'window_lead_with_offset_and_default' }, 9706{ oid => '3112', descr => 'fetch the first row value', 9707 proname => 'first_value', prokind => 'w', prorettype => 'anyelement', 9708 proargtypes => 'anyelement', prosrc => 'window_first_value' }, 9709{ oid => '3113', descr => 'fetch the last row value', 9710 proname => 'last_value', prokind => 'w', prorettype => 'anyelement', 9711 proargtypes => 'anyelement', prosrc => 'window_last_value' }, 9712{ oid => '3114', descr => 'fetch the Nth row value', 9713 proname => 'nth_value', prokind => 'w', prorettype => 'anyelement', 9714 proargtypes => 'anyelement int4', prosrc => 'window_nth_value' }, 9715 9716# functions for range types 9717{ oid => '3832', descr => 'I/O', 9718 proname => 'anyrange_in', provolatile => 's', prorettype => 'anyrange', 9719 proargtypes => 'cstring oid int4', prosrc => 'anyrange_in' }, 9720{ oid => '3833', descr => 'I/O', 9721 proname => 'anyrange_out', provolatile => 's', prorettype => 'cstring', 9722 proargtypes => 'anyrange', prosrc => 'anyrange_out' }, 9723{ oid => '3834', descr => 'I/O', 9724 proname => 'range_in', provolatile => 's', prorettype => 'anyrange', 9725 proargtypes => 'cstring oid int4', prosrc => 'range_in' }, 9726{ oid => '3835', descr => 'I/O', 9727 proname => 'range_out', provolatile => 's', prorettype => 'cstring', 9728 proargtypes => 'anyrange', prosrc => 'range_out' }, 9729{ oid => '3836', descr => 'I/O', 9730 proname => 'range_recv', provolatile => 's', prorettype => 'anyrange', 9731 proargtypes => 'internal oid int4', prosrc => 'range_recv' }, 9732{ oid => '3837', descr => 'I/O', 9733 proname => 'range_send', provolatile => 's', prorettype => 'bytea', 9734 proargtypes => 'anyrange', prosrc => 'range_send' }, 9735{ oid => '3848', descr => 'lower bound of range', 9736 proname => 'lower', prorettype => 'anyelement', proargtypes => 'anyrange', 9737 prosrc => 'range_lower' }, 9738{ oid => '3849', descr => 'upper bound of range', 9739 proname => 'upper', prorettype => 'anyelement', proargtypes => 'anyrange', 9740 prosrc => 'range_upper' }, 9741{ oid => '3850', descr => 'is the range empty?', 9742 proname => 'isempty', prorettype => 'bool', proargtypes => 'anyrange', 9743 prosrc => 'range_empty' }, 9744{ oid => '3851', descr => 'is the range\'s lower bound inclusive?', 9745 proname => 'lower_inc', prorettype => 'bool', proargtypes => 'anyrange', 9746 prosrc => 'range_lower_inc' }, 9747{ oid => '3852', descr => 'is the range\'s upper bound inclusive?', 9748 proname => 'upper_inc', prorettype => 'bool', proargtypes => 'anyrange', 9749 prosrc => 'range_upper_inc' }, 9750{ oid => '3853', descr => 'is the range\'s lower bound infinite?', 9751 proname => 'lower_inf', prorettype => 'bool', proargtypes => 'anyrange', 9752 prosrc => 'range_lower_inf' }, 9753{ oid => '3854', descr => 'is the range\'s upper bound infinite?', 9754 proname => 'upper_inf', prorettype => 'bool', proargtypes => 'anyrange', 9755 prosrc => 'range_upper_inf' }, 9756{ oid => '3855', 9757 proname => 'range_eq', prorettype => 'bool', 9758 proargtypes => 'anyrange anyrange', prosrc => 'range_eq' }, 9759{ oid => '3856', 9760 proname => 'range_ne', prorettype => 'bool', 9761 proargtypes => 'anyrange anyrange', prosrc => 'range_ne' }, 9762{ oid => '3857', 9763 proname => 'range_overlaps', prorettype => 'bool', 9764 proargtypes => 'anyrange anyrange', prosrc => 'range_overlaps' }, 9765{ oid => '3858', 9766 proname => 'range_contains_elem', prorettype => 'bool', 9767 proargtypes => 'anyrange anyelement', prosrc => 'range_contains_elem' }, 9768{ oid => '3859', 9769 proname => 'range_contains', prorettype => 'bool', 9770 proargtypes => 'anyrange anyrange', prosrc => 'range_contains' }, 9771{ oid => '3860', 9772 proname => 'elem_contained_by_range', prorettype => 'bool', 9773 proargtypes => 'anyelement anyrange', prosrc => 'elem_contained_by_range' }, 9774{ oid => '3861', 9775 proname => 'range_contained_by', prorettype => 'bool', 9776 proargtypes => 'anyrange anyrange', prosrc => 'range_contained_by' }, 9777{ oid => '3862', 9778 proname => 'range_adjacent', prorettype => 'bool', 9779 proargtypes => 'anyrange anyrange', prosrc => 'range_adjacent' }, 9780{ oid => '3863', 9781 proname => 'range_before', prorettype => 'bool', 9782 proargtypes => 'anyrange anyrange', prosrc => 'range_before' }, 9783{ oid => '3864', 9784 proname => 'range_after', prorettype => 'bool', 9785 proargtypes => 'anyrange anyrange', prosrc => 'range_after' }, 9786{ oid => '3865', 9787 proname => 'range_overleft', prorettype => 'bool', 9788 proargtypes => 'anyrange anyrange', prosrc => 'range_overleft' }, 9789{ oid => '3866', 9790 proname => 'range_overright', prorettype => 'bool', 9791 proargtypes => 'anyrange anyrange', prosrc => 'range_overright' }, 9792{ oid => '3867', 9793 proname => 'range_union', prorettype => 'anyrange', 9794 proargtypes => 'anyrange anyrange', prosrc => 'range_union' }, 9795{ oid => '4057', 9796 descr => 'the smallest range which includes both of the given ranges', 9797 proname => 'range_merge', prorettype => 'anyrange', 9798 proargtypes => 'anyrange anyrange', prosrc => 'range_merge' }, 9799{ oid => '3868', 9800 proname => 'range_intersect', prorettype => 'anyrange', 9801 proargtypes => 'anyrange anyrange', prosrc => 'range_intersect' }, 9802{ oid => '3869', 9803 proname => 'range_minus', prorettype => 'anyrange', 9804 proargtypes => 'anyrange anyrange', prosrc => 'range_minus' }, 9805{ oid => '3870', descr => 'less-equal-greater', 9806 proname => 'range_cmp', prorettype => 'int4', 9807 proargtypes => 'anyrange anyrange', prosrc => 'range_cmp' }, 9808{ oid => '3871', 9809 proname => 'range_lt', prorettype => 'bool', 9810 proargtypes => 'anyrange anyrange', prosrc => 'range_lt' }, 9811{ oid => '3872', 9812 proname => 'range_le', prorettype => 'bool', 9813 proargtypes => 'anyrange anyrange', prosrc => 'range_le' }, 9814{ oid => '3873', 9815 proname => 'range_ge', prorettype => 'bool', 9816 proargtypes => 'anyrange anyrange', prosrc => 'range_ge' }, 9817{ oid => '3874', 9818 proname => 'range_gt', prorettype => 'bool', 9819 proargtypes => 'anyrange anyrange', prosrc => 'range_gt' }, 9820{ oid => '3875', descr => 'GiST support', 9821 proname => 'range_gist_consistent', prorettype => 'bool', 9822 proargtypes => 'internal anyrange int2 oid internal', 9823 prosrc => 'range_gist_consistent' }, 9824{ oid => '3876', descr => 'GiST support', 9825 proname => 'range_gist_union', prorettype => 'anyrange', 9826 proargtypes => 'internal internal', prosrc => 'range_gist_union' }, 9827{ oid => '3879', descr => 'GiST support', 9828 proname => 'range_gist_penalty', prorettype => 'internal', 9829 proargtypes => 'internal internal internal', prosrc => 'range_gist_penalty' }, 9830{ oid => '3880', descr => 'GiST support', 9831 proname => 'range_gist_picksplit', prorettype => 'internal', 9832 proargtypes => 'internal internal', prosrc => 'range_gist_picksplit' }, 9833{ oid => '3881', descr => 'GiST support', 9834 proname => 'range_gist_same', prorettype => 'internal', 9835 proargtypes => 'anyrange anyrange internal', prosrc => 'range_gist_same' }, 9836{ oid => '3902', descr => 'hash a range', 9837 proname => 'hash_range', prorettype => 'int4', proargtypes => 'anyrange', 9838 prosrc => 'hash_range' }, 9839{ oid => '3417', descr => 'hash a range', 9840 proname => 'hash_range_extended', prorettype => 'int8', 9841 proargtypes => 'anyrange int8', prosrc => 'hash_range_extended' }, 9842{ oid => '3916', descr => 'range typanalyze', 9843 proname => 'range_typanalyze', provolatile => 's', prorettype => 'bool', 9844 proargtypes => 'internal', prosrc => 'range_typanalyze' }, 9845{ oid => '3169', descr => 'restriction selectivity for range operators', 9846 proname => 'rangesel', provolatile => 's', prorettype => 'float8', 9847 proargtypes => 'internal oid internal int4', prosrc => 'rangesel' }, 9848 9849{ oid => '3914', descr => 'convert an int4 range to canonical form', 9850 proname => 'int4range_canonical', prorettype => 'int4range', 9851 proargtypes => 'int4range', prosrc => 'int4range_canonical' }, 9852{ oid => '3928', descr => 'convert an int8 range to canonical form', 9853 proname => 'int8range_canonical', prorettype => 'int8range', 9854 proargtypes => 'int8range', prosrc => 'int8range_canonical' }, 9855{ oid => '3915', descr => 'convert a date range to canonical form', 9856 proname => 'daterange_canonical', prorettype => 'daterange', 9857 proargtypes => 'daterange', prosrc => 'daterange_canonical' }, 9858{ oid => '3922', descr => 'float8 difference of two int4 values', 9859 proname => 'int4range_subdiff', prorettype => 'float8', 9860 proargtypes => 'int4 int4', prosrc => 'int4range_subdiff' }, 9861{ oid => '3923', descr => 'float8 difference of two int8 values', 9862 proname => 'int8range_subdiff', prorettype => 'float8', 9863 proargtypes => 'int8 int8', prosrc => 'int8range_subdiff' }, 9864{ oid => '3924', descr => 'float8 difference of two numeric values', 9865 proname => 'numrange_subdiff', prorettype => 'float8', 9866 proargtypes => 'numeric numeric', prosrc => 'numrange_subdiff' }, 9867{ oid => '3925', descr => 'float8 difference of two date values', 9868 proname => 'daterange_subdiff', prorettype => 'float8', 9869 proargtypes => 'date date', prosrc => 'daterange_subdiff' }, 9870{ oid => '3929', descr => 'float8 difference of two timestamp values', 9871 proname => 'tsrange_subdiff', prorettype => 'float8', 9872 proargtypes => 'timestamp timestamp', prosrc => 'tsrange_subdiff' }, 9873{ oid => '3930', 9874 descr => 'float8 difference of two timestamp with time zone values', 9875 proname => 'tstzrange_subdiff', prorettype => 'float8', 9876 proargtypes => 'timestamptz timestamptz', prosrc => 'tstzrange_subdiff' }, 9877 9878{ oid => '3840', descr => 'int4range constructor', 9879 proname => 'int4range', proisstrict => 'f', prorettype => 'int4range', 9880 proargtypes => 'int4 int4', prosrc => 'range_constructor2' }, 9881{ oid => '3841', descr => 'int4range constructor', 9882 proname => 'int4range', proisstrict => 'f', prorettype => 'int4range', 9883 proargtypes => 'int4 int4 text', prosrc => 'range_constructor3' }, 9884{ oid => '3844', descr => 'numrange constructor', 9885 proname => 'numrange', proisstrict => 'f', prorettype => 'numrange', 9886 proargtypes => 'numeric numeric', prosrc => 'range_constructor2' }, 9887{ oid => '3845', descr => 'numrange constructor', 9888 proname => 'numrange', proisstrict => 'f', prorettype => 'numrange', 9889 proargtypes => 'numeric numeric text', prosrc => 'range_constructor3' }, 9890{ oid => '3933', descr => 'tsrange constructor', 9891 proname => 'tsrange', proisstrict => 'f', prorettype => 'tsrange', 9892 proargtypes => 'timestamp timestamp', prosrc => 'range_constructor2' }, 9893{ oid => '3934', descr => 'tsrange constructor', 9894 proname => 'tsrange', proisstrict => 'f', prorettype => 'tsrange', 9895 proargtypes => 'timestamp timestamp text', prosrc => 'range_constructor3' }, 9896{ oid => '3937', descr => 'tstzrange constructor', 9897 proname => 'tstzrange', proisstrict => 'f', prorettype => 'tstzrange', 9898 proargtypes => 'timestamptz timestamptz', prosrc => 'range_constructor2' }, 9899{ oid => '3938', descr => 'tstzrange constructor', 9900 proname => 'tstzrange', proisstrict => 'f', prorettype => 'tstzrange', 9901 proargtypes => 'timestamptz timestamptz text', 9902 prosrc => 'range_constructor3' }, 9903{ oid => '3941', descr => 'daterange constructor', 9904 proname => 'daterange', proisstrict => 'f', prorettype => 'daterange', 9905 proargtypes => 'date date', prosrc => 'range_constructor2' }, 9906{ oid => '3942', descr => 'daterange constructor', 9907 proname => 'daterange', proisstrict => 'f', prorettype => 'daterange', 9908 proargtypes => 'date date text', prosrc => 'range_constructor3' }, 9909{ oid => '3945', descr => 'int8range constructor', 9910 proname => 'int8range', proisstrict => 'f', prorettype => 'int8range', 9911 proargtypes => 'int8 int8', prosrc => 'range_constructor2' }, 9912{ oid => '3946', descr => 'int8range constructor', 9913 proname => 'int8range', proisstrict => 'f', prorettype => 'int8range', 9914 proargtypes => 'int8 int8 text', prosrc => 'range_constructor3' }, 9915 9916# date, time, timestamp constructors 9917{ oid => '3846', descr => 'construct date', 9918 proname => 'make_date', prorettype => 'date', proargtypes => 'int4 int4 int4', 9919 proargnames => '{year,month,day}', prosrc => 'make_date' }, 9920{ oid => '3847', descr => 'construct time', 9921 proname => 'make_time', prorettype => 'time', 9922 proargtypes => 'int4 int4 float8', proargnames => '{hour,min,sec}', 9923 prosrc => 'make_time' }, 9924{ oid => '3461', descr => 'construct timestamp', 9925 proname => 'make_timestamp', prorettype => 'timestamp', 9926 proargtypes => 'int4 int4 int4 int4 int4 float8', 9927 proargnames => '{year,month,mday,hour,min,sec}', prosrc => 'make_timestamp' }, 9928{ oid => '3462', descr => 'construct timestamp with time zone', 9929 proname => 'make_timestamptz', provolatile => 's', 9930 prorettype => 'timestamptz', proargtypes => 'int4 int4 int4 int4 int4 float8', 9931 proargnames => '{year,month,mday,hour,min,sec}', 9932 prosrc => 'make_timestamptz' }, 9933{ oid => '3463', descr => 'construct timestamp with time zone', 9934 proname => 'make_timestamptz', provolatile => 's', 9935 prorettype => 'timestamptz', 9936 proargtypes => 'int4 int4 int4 int4 int4 float8 text', 9937 proargnames => '{year,month,mday,hour,min,sec,timezone}', 9938 prosrc => 'make_timestamptz_at_timezone' }, 9939{ oid => '3464', descr => 'construct interval', 9940 proname => 'make_interval', prorettype => 'interval', 9941 proargtypes => 'int4 int4 int4 int4 int4 int4 float8', 9942 proargnames => '{years,months,weeks,days,hours,mins,secs}', 9943 prosrc => 'make_interval' }, 9944 9945# spgist opclasses 9946{ oid => '4018', descr => 'SP-GiST support for quad tree over point', 9947 proname => 'spg_quad_config', prorettype => 'void', 9948 proargtypes => 'internal internal', prosrc => 'spg_quad_config' }, 9949{ oid => '4019', descr => 'SP-GiST support for quad tree over point', 9950 proname => 'spg_quad_choose', prorettype => 'void', 9951 proargtypes => 'internal internal', prosrc => 'spg_quad_choose' }, 9952{ oid => '4020', descr => 'SP-GiST support for quad tree over point', 9953 proname => 'spg_quad_picksplit', prorettype => 'void', 9954 proargtypes => 'internal internal', prosrc => 'spg_quad_picksplit' }, 9955{ oid => '4021', descr => 'SP-GiST support for quad tree over point', 9956 proname => 'spg_quad_inner_consistent', prorettype => 'void', 9957 proargtypes => 'internal internal', prosrc => 'spg_quad_inner_consistent' }, 9958{ oid => '4022', 9959 descr => 'SP-GiST support for quad tree and k-d tree over point', 9960 proname => 'spg_quad_leaf_consistent', prorettype => 'bool', 9961 proargtypes => 'internal internal', prosrc => 'spg_quad_leaf_consistent' }, 9962 9963{ oid => '4023', descr => 'SP-GiST support for k-d tree over point', 9964 proname => 'spg_kd_config', prorettype => 'void', 9965 proargtypes => 'internal internal', prosrc => 'spg_kd_config' }, 9966{ oid => '4024', descr => 'SP-GiST support for k-d tree over point', 9967 proname => 'spg_kd_choose', prorettype => 'void', 9968 proargtypes => 'internal internal', prosrc => 'spg_kd_choose' }, 9969{ oid => '4025', descr => 'SP-GiST support for k-d tree over point', 9970 proname => 'spg_kd_picksplit', prorettype => 'void', 9971 proargtypes => 'internal internal', prosrc => 'spg_kd_picksplit' }, 9972{ oid => '4026', descr => 'SP-GiST support for k-d tree over point', 9973 proname => 'spg_kd_inner_consistent', prorettype => 'void', 9974 proargtypes => 'internal internal', prosrc => 'spg_kd_inner_consistent' }, 9975 9976{ oid => '4027', descr => 'SP-GiST support for radix tree over text', 9977 proname => 'spg_text_config', prorettype => 'void', 9978 proargtypes => 'internal internal', prosrc => 'spg_text_config' }, 9979{ oid => '4028', descr => 'SP-GiST support for radix tree over text', 9980 proname => 'spg_text_choose', prorettype => 'void', 9981 proargtypes => 'internal internal', prosrc => 'spg_text_choose' }, 9982{ oid => '4029', descr => 'SP-GiST support for radix tree over text', 9983 proname => 'spg_text_picksplit', prorettype => 'void', 9984 proargtypes => 'internal internal', prosrc => 'spg_text_picksplit' }, 9985{ oid => '4030', descr => 'SP-GiST support for radix tree over text', 9986 proname => 'spg_text_inner_consistent', prorettype => 'void', 9987 proargtypes => 'internal internal', prosrc => 'spg_text_inner_consistent' }, 9988{ oid => '4031', descr => 'SP-GiST support for radix tree over text', 9989 proname => 'spg_text_leaf_consistent', prorettype => 'bool', 9990 proargtypes => 'internal internal', prosrc => 'spg_text_leaf_consistent' }, 9991 9992{ oid => '3469', descr => 'SP-GiST support for quad tree over range', 9993 proname => 'spg_range_quad_config', prorettype => 'void', 9994 proargtypes => 'internal internal', prosrc => 'spg_range_quad_config' }, 9995{ oid => '3470', descr => 'SP-GiST support for quad tree over range', 9996 proname => 'spg_range_quad_choose', prorettype => 'void', 9997 proargtypes => 'internal internal', prosrc => 'spg_range_quad_choose' }, 9998{ oid => '3471', descr => 'SP-GiST support for quad tree over range', 9999 proname => 'spg_range_quad_picksplit', prorettype => 'void', 10000 proargtypes => 'internal internal', prosrc => 'spg_range_quad_picksplit' }, 10001{ oid => '3472', descr => 'SP-GiST support for quad tree over range', 10002 proname => 'spg_range_quad_inner_consistent', prorettype => 'void', 10003 proargtypes => 'internal internal', 10004 prosrc => 'spg_range_quad_inner_consistent' }, 10005{ oid => '3473', descr => 'SP-GiST support for quad tree over range', 10006 proname => 'spg_range_quad_leaf_consistent', prorettype => 'bool', 10007 proargtypes => 'internal internal', 10008 prosrc => 'spg_range_quad_leaf_consistent' }, 10009 10010{ oid => '5012', descr => 'SP-GiST support for quad tree over box', 10011 proname => 'spg_box_quad_config', prorettype => 'void', 10012 proargtypes => 'internal internal', prosrc => 'spg_box_quad_config' }, 10013{ oid => '5013', descr => 'SP-GiST support for quad tree over box', 10014 proname => 'spg_box_quad_choose', prorettype => 'void', 10015 proargtypes => 'internal internal', prosrc => 'spg_box_quad_choose' }, 10016{ oid => '5014', descr => 'SP-GiST support for quad tree over box', 10017 proname => 'spg_box_quad_picksplit', prorettype => 'void', 10018 proargtypes => 'internal internal', prosrc => 'spg_box_quad_picksplit' }, 10019{ oid => '5015', descr => 'SP-GiST support for quad tree over box', 10020 proname => 'spg_box_quad_inner_consistent', prorettype => 'void', 10021 proargtypes => 'internal internal', 10022 prosrc => 'spg_box_quad_inner_consistent' }, 10023{ oid => '5016', descr => 'SP-GiST support for quad tree over box', 10024 proname => 'spg_box_quad_leaf_consistent', prorettype => 'bool', 10025 proargtypes => 'internal internal', 10026 prosrc => 'spg_box_quad_leaf_consistent' }, 10027 10028{ oid => '5010', 10029 descr => 'SP-GiST support for quad tree over 2-D types represented by their bounding boxes', 10030 proname => 'spg_bbox_quad_config', prorettype => 'void', 10031 proargtypes => 'internal internal', prosrc => 'spg_bbox_quad_config' }, 10032{ oid => '5011', descr => 'SP-GiST support for quad tree over polygons', 10033 proname => 'spg_poly_quad_compress', prorettype => 'box', 10034 proargtypes => 'polygon', prosrc => 'spg_poly_quad_compress' }, 10035 10036# replication slots 10037{ oid => '3779', descr => 'create a physical replication slot', 10038 proname => 'pg_create_physical_replication_slot', provolatile => 'v', 10039 proparallel => 'u', prorettype => 'record', proargtypes => 'name bool bool', 10040 proallargtypes => '{name,bool,bool,name,pg_lsn}', 10041 proargmodes => '{i,i,i,o,o}', 10042 proargnames => '{slot_name,immediately_reserve,temporary,slot_name,lsn}', 10043 prosrc => 'pg_create_physical_replication_slot' }, 10044{ oid => '4220', 10045 descr => 'copy a physical replication slot, changing temporality', 10046 proname => 'pg_copy_physical_replication_slot', provolatile => 'v', 10047 proparallel => 'u', prorettype => 'record', proargtypes => 'name name bool', 10048 proallargtypes => '{name,name,bool,name,pg_lsn}', 10049 proargmodes => '{i,i,i,o,o}', 10050 proargnames => '{src_slot_name,dst_slot_name,temporary,slot_name,lsn}', 10051 prosrc => 'pg_copy_physical_replication_slot_a' }, 10052{ oid => '4221', descr => 'copy a physical replication slot', 10053 proname => 'pg_copy_physical_replication_slot', provolatile => 'v', 10054 proparallel => 'u', prorettype => 'record', proargtypes => 'name name', 10055 proallargtypes => '{name,name,name,pg_lsn}', proargmodes => '{i,i,o,o}', 10056 proargnames => '{src_slot_name,dst_slot_name,slot_name,lsn}', 10057 prosrc => 'pg_copy_physical_replication_slot_b' }, 10058{ oid => '3780', descr => 'drop a replication slot', 10059 proname => 'pg_drop_replication_slot', provolatile => 'v', proparallel => 'u', 10060 prorettype => 'void', proargtypes => 'name', 10061 prosrc => 'pg_drop_replication_slot' }, 10062{ oid => '3781', 10063 descr => 'information about replication slots currently in use', 10064 proname => 'pg_get_replication_slots', prorows => '10', proisstrict => 'f', 10065 proretset => 't', provolatile => 's', prorettype => 'record', 10066 proargtypes => '', 10067 proallargtypes => '{name,name,text,oid,bool,bool,int4,xid,xid,pg_lsn,pg_lsn,text,int8}', 10068 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o,o}', 10069 proargnames => '{slot_name,plugin,slot_type,datoid,temporary,active,active_pid,xmin,catalog_xmin,restart_lsn,confirmed_flush_lsn,wal_status,safe_wal_size}', 10070 prosrc => 'pg_get_replication_slots' }, 10071{ oid => '3786', descr => 'set up a logical replication slot', 10072 proname => 'pg_create_logical_replication_slot', provolatile => 'v', 10073 proparallel => 'u', prorettype => 'record', proargtypes => 'name name bool', 10074 proallargtypes => '{name,name,bool,name,pg_lsn}', 10075 proargmodes => '{i,i,i,o,o}', 10076 proargnames => '{slot_name,plugin,temporary,slot_name,lsn}', 10077 prosrc => 'pg_create_logical_replication_slot' }, 10078{ oid => '4222', 10079 descr => 'copy a logical replication slot, changing temporality and plugin', 10080 proname => 'pg_copy_logical_replication_slot', provolatile => 'v', 10081 proparallel => 'u', prorettype => 'record', 10082 proargtypes => 'name name bool name', 10083 proallargtypes => '{name,name,bool,name,name,pg_lsn}', 10084 proargmodes => '{i,i,i,i,o,o}', 10085 proargnames => '{src_slot_name,dst_slot_name,temporary,plugin,slot_name,lsn}', 10086 prosrc => 'pg_copy_logical_replication_slot_a' }, 10087{ oid => '4223', 10088 descr => 'copy a logical replication slot, changing temporality', 10089 proname => 'pg_copy_logical_replication_slot', provolatile => 'v', 10090 proparallel => 'u', prorettype => 'record', proargtypes => 'name name bool', 10091 proallargtypes => '{name,name,bool,name,pg_lsn}', 10092 proargmodes => '{i,i,i,o,o}', 10093 proargnames => '{src_slot_name,dst_slot_name,temporary,slot_name,lsn}', 10094 prosrc => 'pg_copy_logical_replication_slot_b' }, 10095{ oid => '4224', descr => 'copy a logical replication slot', 10096 proname => 'pg_copy_logical_replication_slot', provolatile => 'v', 10097 proparallel => 'u', prorettype => 'record', proargtypes => 'name name', 10098 proallargtypes => '{name,name,name,pg_lsn}', proargmodes => '{i,i,o,o}', 10099 proargnames => '{src_slot_name,dst_slot_name,slot_name,lsn}', 10100 prosrc => 'pg_copy_logical_replication_slot_c' }, 10101{ oid => '3782', descr => 'get changes from replication slot', 10102 proname => 'pg_logical_slot_get_changes', procost => '1000', 10103 prorows => '1000', provariadic => 'text', proisstrict => 'f', 10104 proretset => 't', provolatile => 'v', proparallel => 'u', 10105 prorettype => 'record', proargtypes => 'name pg_lsn int4 _text', 10106 proallargtypes => '{name,pg_lsn,int4,_text,pg_lsn,xid,text}', 10107 proargmodes => '{i,i,i,v,o,o,o}', 10108 proargnames => '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}', 10109 prosrc => 'pg_logical_slot_get_changes' }, 10110{ oid => '3783', descr => 'get binary changes from replication slot', 10111 proname => 'pg_logical_slot_get_binary_changes', procost => '1000', 10112 prorows => '1000', provariadic => 'text', proisstrict => 'f', 10113 proretset => 't', provolatile => 'v', proparallel => 'u', 10114 prorettype => 'record', proargtypes => 'name pg_lsn int4 _text', 10115 proallargtypes => '{name,pg_lsn,int4,_text,pg_lsn,xid,bytea}', 10116 proargmodes => '{i,i,i,v,o,o,o}', 10117 proargnames => '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}', 10118 prosrc => 'pg_logical_slot_get_binary_changes' }, 10119{ oid => '3784', descr => 'peek at changes from replication slot', 10120 proname => 'pg_logical_slot_peek_changes', procost => '1000', 10121 prorows => '1000', provariadic => 'text', proisstrict => 'f', 10122 proretset => 't', provolatile => 'v', proparallel => 'u', 10123 prorettype => 'record', proargtypes => 'name pg_lsn int4 _text', 10124 proallargtypes => '{name,pg_lsn,int4,_text,pg_lsn,xid,text}', 10125 proargmodes => '{i,i,i,v,o,o,o}', 10126 proargnames => '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}', 10127 prosrc => 'pg_logical_slot_peek_changes' }, 10128{ oid => '3785', descr => 'peek at binary changes from replication slot', 10129 proname => 'pg_logical_slot_peek_binary_changes', procost => '1000', 10130 prorows => '1000', provariadic => 'text', proisstrict => 'f', 10131 proretset => 't', provolatile => 'v', proparallel => 'u', 10132 prorettype => 'record', proargtypes => 'name pg_lsn int4 _text', 10133 proallargtypes => '{name,pg_lsn,int4,_text,pg_lsn,xid,bytea}', 10134 proargmodes => '{i,i,i,v,o,o,o}', 10135 proargnames => '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}', 10136 prosrc => 'pg_logical_slot_peek_binary_changes' }, 10137{ oid => '3878', descr => 'advance logical replication slot', 10138 proname => 'pg_replication_slot_advance', provolatile => 'v', 10139 proparallel => 'u', prorettype => 'record', proargtypes => 'name pg_lsn', 10140 proallargtypes => '{name,pg_lsn,name,pg_lsn}', proargmodes => '{i,i,o,o}', 10141 proargnames => '{slot_name,upto_lsn,slot_name,end_lsn}', 10142 prosrc => 'pg_replication_slot_advance' }, 10143{ oid => '3577', descr => 'emit a textual logical decoding message', 10144 proname => 'pg_logical_emit_message', provolatile => 'v', proparallel => 'u', 10145 prorettype => 'pg_lsn', proargtypes => 'bool text text', 10146 prosrc => 'pg_logical_emit_message_text' }, 10147{ oid => '3578', descr => 'emit a binary logical decoding message', 10148 proname => 'pg_logical_emit_message', provolatile => 'v', proparallel => 'u', 10149 prorettype => 'pg_lsn', proargtypes => 'bool text bytea', 10150 prosrc => 'pg_logical_emit_message_bytea' }, 10151 10152# event triggers 10153{ oid => '3566', descr => 'list objects dropped by the current command', 10154 proname => 'pg_event_trigger_dropped_objects', procost => '10', 10155 prorows => '100', proretset => 't', provolatile => 's', proparallel => 'r', 10156 prorettype => 'record', proargtypes => '', 10157 proallargtypes => '{oid,oid,int4,bool,bool,bool,text,text,text,text,_text,_text}', 10158 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o}', 10159 proargnames => '{classid, objid, objsubid, original, normal, is_temporary, object_type, schema_name, object_name, object_identity, address_names, address_args}', 10160 prosrc => 'pg_event_trigger_dropped_objects' }, 10161{ oid => '4566', descr => 'return Oid of the table getting rewritten', 10162 proname => 'pg_event_trigger_table_rewrite_oid', provolatile => 's', 10163 proparallel => 'r', prorettype => 'oid', proargtypes => '', 10164 proallargtypes => '{oid}', proargmodes => '{o}', proargnames => '{oid}', 10165 prosrc => 'pg_event_trigger_table_rewrite_oid' }, 10166{ oid => '4567', descr => 'return reason code for table getting rewritten', 10167 proname => 'pg_event_trigger_table_rewrite_reason', provolatile => 's', 10168 proparallel => 'r', prorettype => 'int4', proargtypes => '', 10169 prosrc => 'pg_event_trigger_table_rewrite_reason' }, 10170{ oid => '4568', 10171 descr => 'list DDL actions being executed by the current command', 10172 proname => 'pg_event_trigger_ddl_commands', procost => '10', prorows => '100', 10173 proretset => 't', provolatile => 's', proparallel => 'r', 10174 prorettype => 'record', proargtypes => '', 10175 proallargtypes => '{oid,oid,int4,text,text,text,text,bool,pg_ddl_command}', 10176 proargmodes => '{o,o,o,o,o,o,o,o,o}', 10177 proargnames => '{classid, objid, objsubid, command_tag, object_type, schema_name, object_identity, in_extension, command}', 10178 prosrc => 'pg_event_trigger_ddl_commands' }, 10179 10180# generic transition functions for ordered-set aggregates 10181{ oid => '3970', descr => 'aggregate transition function', 10182 proname => 'ordered_set_transition', proisstrict => 'f', 10183 prorettype => 'internal', proargtypes => 'internal any', 10184 prosrc => 'ordered_set_transition' }, 10185{ oid => '3971', descr => 'aggregate transition function', 10186 proname => 'ordered_set_transition_multi', provariadic => 'any', 10187 proisstrict => 'f', prorettype => 'internal', proargtypes => 'internal any', 10188 proallargtypes => '{internal,any}', proargmodes => '{i,v}', 10189 prosrc => 'ordered_set_transition_multi' }, 10190 10191# inverse distribution aggregates (and their support functions) 10192{ oid => '3972', descr => 'discrete percentile', 10193 proname => 'percentile_disc', prokind => 'a', proisstrict => 'f', 10194 prorettype => 'anyelement', proargtypes => 'float8 anyelement', 10195 prosrc => 'aggregate_dummy' }, 10196{ oid => '3973', descr => 'aggregate final function', 10197 proname => 'percentile_disc_final', proisstrict => 'f', 10198 prorettype => 'anyelement', proargtypes => 'internal float8 anyelement', 10199 prosrc => 'percentile_disc_final' }, 10200{ oid => '3974', descr => 'continuous distribution percentile', 10201 proname => 'percentile_cont', prokind => 'a', proisstrict => 'f', 10202 prorettype => 'float8', proargtypes => 'float8 float8', 10203 prosrc => 'aggregate_dummy' }, 10204{ oid => '3975', descr => 'aggregate final function', 10205 proname => 'percentile_cont_float8_final', proisstrict => 'f', 10206 prorettype => 'float8', proargtypes => 'internal float8', 10207 prosrc => 'percentile_cont_float8_final' }, 10208{ oid => '3976', descr => 'continuous distribution percentile', 10209 proname => 'percentile_cont', prokind => 'a', proisstrict => 'f', 10210 prorettype => 'interval', proargtypes => 'float8 interval', 10211 prosrc => 'aggregate_dummy' }, 10212{ oid => '3977', descr => 'aggregate final function', 10213 proname => 'percentile_cont_interval_final', proisstrict => 'f', 10214 prorettype => 'interval', proargtypes => 'internal float8', 10215 prosrc => 'percentile_cont_interval_final' }, 10216{ oid => '3978', descr => 'multiple discrete percentiles', 10217 proname => 'percentile_disc', prokind => 'a', proisstrict => 'f', 10218 prorettype => 'anyarray', proargtypes => '_float8 anyelement', 10219 prosrc => 'aggregate_dummy' }, 10220{ oid => '3979', descr => 'aggregate final function', 10221 proname => 'percentile_disc_multi_final', proisstrict => 'f', 10222 prorettype => 'anyarray', proargtypes => 'internal _float8 anyelement', 10223 prosrc => 'percentile_disc_multi_final' }, 10224{ oid => '3980', descr => 'multiple continuous percentiles', 10225 proname => 'percentile_cont', prokind => 'a', proisstrict => 'f', 10226 prorettype => '_float8', proargtypes => '_float8 float8', 10227 prosrc => 'aggregate_dummy' }, 10228{ oid => '3981', descr => 'aggregate final function', 10229 proname => 'percentile_cont_float8_multi_final', proisstrict => 'f', 10230 prorettype => '_float8', proargtypes => 'internal _float8', 10231 prosrc => 'percentile_cont_float8_multi_final' }, 10232{ oid => '3982', descr => 'multiple continuous percentiles', 10233 proname => 'percentile_cont', prokind => 'a', proisstrict => 'f', 10234 prorettype => '_interval', proargtypes => '_float8 interval', 10235 prosrc => 'aggregate_dummy' }, 10236{ oid => '3983', descr => 'aggregate final function', 10237 proname => 'percentile_cont_interval_multi_final', proisstrict => 'f', 10238 prorettype => '_interval', proargtypes => 'internal _float8', 10239 prosrc => 'percentile_cont_interval_multi_final' }, 10240{ oid => '3984', descr => 'most common value', 10241 proname => 'mode', prokind => 'a', proisstrict => 'f', 10242 prorettype => 'anyelement', proargtypes => 'anyelement', 10243 prosrc => 'aggregate_dummy' }, 10244{ oid => '3985', descr => 'aggregate final function', 10245 proname => 'mode_final', proisstrict => 'f', prorettype => 'anyelement', 10246 proargtypes => 'internal anyelement', prosrc => 'mode_final' }, 10247 10248# hypothetical-set aggregates (and their support functions) 10249{ oid => '3986', descr => 'rank of hypothetical row', 10250 proname => 'rank', provariadic => 'any', prokind => 'a', proisstrict => 'f', 10251 prorettype => 'int8', proargtypes => 'any', proallargtypes => '{any}', 10252 proargmodes => '{v}', prosrc => 'aggregate_dummy' }, 10253{ oid => '3987', descr => 'aggregate final function', 10254 proname => 'rank_final', provariadic => 'any', proisstrict => 'f', 10255 prorettype => 'int8', proargtypes => 'internal any', 10256 proallargtypes => '{internal,any}', proargmodes => '{i,v}', 10257 prosrc => 'hypothetical_rank_final' }, 10258{ oid => '3988', descr => 'fractional rank of hypothetical row', 10259 proname => 'percent_rank', provariadic => 'any', prokind => 'a', 10260 proisstrict => 'f', prorettype => 'float8', proargtypes => 'any', 10261 proallargtypes => '{any}', proargmodes => '{v}', 10262 prosrc => 'aggregate_dummy' }, 10263{ oid => '3989', descr => 'aggregate final function', 10264 proname => 'percent_rank_final', provariadic => 'any', proisstrict => 'f', 10265 prorettype => 'float8', proargtypes => 'internal any', 10266 proallargtypes => '{internal,any}', proargmodes => '{i,v}', 10267 prosrc => 'hypothetical_percent_rank_final' }, 10268{ oid => '3990', descr => 'cumulative distribution of hypothetical row', 10269 proname => 'cume_dist', provariadic => 'any', prokind => 'a', 10270 proisstrict => 'f', prorettype => 'float8', proargtypes => 'any', 10271 proallargtypes => '{any}', proargmodes => '{v}', 10272 prosrc => 'aggregate_dummy' }, 10273{ oid => '3991', descr => 'aggregate final function', 10274 proname => 'cume_dist_final', provariadic => 'any', proisstrict => 'f', 10275 prorettype => 'float8', proargtypes => 'internal any', 10276 proallargtypes => '{internal,any}', proargmodes => '{i,v}', 10277 prosrc => 'hypothetical_cume_dist_final' }, 10278{ oid => '3992', descr => 'rank of hypothetical row without gaps', 10279 proname => 'dense_rank', provariadic => 'any', prokind => 'a', 10280 proisstrict => 'f', prorettype => 'int8', proargtypes => 'any', 10281 proallargtypes => '{any}', proargmodes => '{v}', 10282 prosrc => 'aggregate_dummy' }, 10283{ oid => '3993', descr => 'aggregate final function', 10284 proname => 'dense_rank_final', provariadic => 'any', proisstrict => 'f', 10285 prorettype => 'int8', proargtypes => 'internal any', 10286 proallargtypes => '{internal,any}', proargmodes => '{i,v}', 10287 prosrc => 'hypothetical_dense_rank_final' }, 10288 10289# pg_upgrade support 10290{ oid => '3582', descr => 'for use by pg_upgrade', 10291 proname => 'binary_upgrade_set_next_pg_type_oid', provolatile => 'v', 10292 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10293 prosrc => 'binary_upgrade_set_next_pg_type_oid' }, 10294{ oid => '3584', descr => 'for use by pg_upgrade', 10295 proname => 'binary_upgrade_set_next_array_pg_type_oid', provolatile => 'v', 10296 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10297 prosrc => 'binary_upgrade_set_next_array_pg_type_oid' }, 10298{ oid => '3585', descr => 'for use by pg_upgrade', 10299 proname => 'binary_upgrade_set_next_toast_pg_type_oid', provolatile => 'v', 10300 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10301 prosrc => 'binary_upgrade_set_next_toast_pg_type_oid' }, 10302{ oid => '3586', descr => 'for use by pg_upgrade', 10303 proname => 'binary_upgrade_set_next_heap_pg_class_oid', provolatile => 'v', 10304 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10305 prosrc => 'binary_upgrade_set_next_heap_pg_class_oid' }, 10306{ oid => '3587', descr => 'for use by pg_upgrade', 10307 proname => 'binary_upgrade_set_next_index_pg_class_oid', provolatile => 'v', 10308 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10309 prosrc => 'binary_upgrade_set_next_index_pg_class_oid' }, 10310{ oid => '3588', descr => 'for use by pg_upgrade', 10311 proname => 'binary_upgrade_set_next_toast_pg_class_oid', provolatile => 'v', 10312 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10313 prosrc => 'binary_upgrade_set_next_toast_pg_class_oid' }, 10314{ oid => '3589', descr => 'for use by pg_upgrade', 10315 proname => 'binary_upgrade_set_next_pg_enum_oid', provolatile => 'v', 10316 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10317 prosrc => 'binary_upgrade_set_next_pg_enum_oid' }, 10318{ oid => '3590', descr => 'for use by pg_upgrade', 10319 proname => 'binary_upgrade_set_next_pg_authid_oid', provolatile => 'v', 10320 proparallel => 'r', prorettype => 'void', proargtypes => 'oid', 10321 prosrc => 'binary_upgrade_set_next_pg_authid_oid' }, 10322{ oid => '3591', descr => 'for use by pg_upgrade', 10323 proname => 'binary_upgrade_create_empty_extension', proisstrict => 'f', 10324 provolatile => 'v', proparallel => 'u', prorettype => 'void', 10325 proargtypes => 'text text bool text _oid _text _text', 10326 prosrc => 'binary_upgrade_create_empty_extension' }, 10327{ oid => '4083', descr => 'for use by pg_upgrade', 10328 proname => 'binary_upgrade_set_record_init_privs', provolatile => 'v', 10329 proparallel => 'r', prorettype => 'void', proargtypes => 'bool', 10330 prosrc => 'binary_upgrade_set_record_init_privs' }, 10331{ oid => '4101', descr => 'for use by pg_upgrade', 10332 proname => 'binary_upgrade_set_missing_value', provolatile => 'v', 10333 proparallel => 'u', prorettype => 'void', proargtypes => 'oid text text', 10334 prosrc => 'binary_upgrade_set_missing_value' }, 10335 10336# conversion functions 10337{ oid => '4302', 10338 descr => 'internal conversion function for KOI8R to MULE_INTERNAL', 10339 proname => 'koi8r_to_mic', prolang => 'c', prorettype => 'void', 10340 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'koi8r_to_mic', 10341 probin => '$libdir/cyrillic_and_mic' }, 10342{ oid => '4303', 10343 descr => 'internal conversion function for MULE_INTERNAL to KOI8R', 10344 proname => 'mic_to_koi8r', prolang => 'c', prorettype => 'void', 10345 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_koi8r', 10346 probin => '$libdir/cyrillic_and_mic' }, 10347{ oid => '4304', 10348 descr => 'internal conversion function for ISO-8859-5 to MULE_INTERNAL', 10349 proname => 'iso_to_mic', prolang => 'c', prorettype => 'void', 10350 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'iso_to_mic', 10351 probin => '$libdir/cyrillic_and_mic' }, 10352{ oid => '4305', 10353 descr => 'internal conversion function for MULE_INTERNAL to ISO-8859-5', 10354 proname => 'mic_to_iso', prolang => 'c', prorettype => 'void', 10355 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_iso', 10356 probin => '$libdir/cyrillic_and_mic' }, 10357{ oid => '4306', 10358 descr => 'internal conversion function for WIN1251 to MULE_INTERNAL', 10359 proname => 'win1251_to_mic', prolang => 'c', prorettype => 'void', 10360 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win1251_to_mic', 10361 probin => '$libdir/cyrillic_and_mic' }, 10362{ oid => '4307', 10363 descr => 'internal conversion function for MULE_INTERNAL to WIN1251', 10364 proname => 'mic_to_win1251', prolang => 'c', prorettype => 'void', 10365 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_win1251', 10366 probin => '$libdir/cyrillic_and_mic' }, 10367{ oid => '4308', 10368 descr => 'internal conversion function for WIN866 to MULE_INTERNAL', 10369 proname => 'win866_to_mic', prolang => 'c', prorettype => 'void', 10370 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win866_to_mic', 10371 probin => '$libdir/cyrillic_and_mic' }, 10372{ oid => '4309', 10373 descr => 'internal conversion function for MULE_INTERNAL to WIN866', 10374 proname => 'mic_to_win866', prolang => 'c', prorettype => 'void', 10375 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_win866', 10376 probin => '$libdir/cyrillic_and_mic' }, 10377{ oid => '4310', descr => 'internal conversion function for KOI8R to WIN1251', 10378 proname => 'koi8r_to_win1251', prolang => 'c', prorettype => 'void', 10379 proargtypes => 'int4 int4 cstring internal int4', 10380 prosrc => 'koi8r_to_win1251', probin => '$libdir/cyrillic_and_mic' }, 10381{ oid => '4311', descr => 'internal conversion function for WIN1251 to KOI8R', 10382 proname => 'win1251_to_koi8r', prolang => 'c', prorettype => 'void', 10383 proargtypes => 'int4 int4 cstring internal int4', 10384 prosrc => 'win1251_to_koi8r', probin => '$libdir/cyrillic_and_mic' }, 10385{ oid => '4312', descr => 'internal conversion function for KOI8R to WIN866', 10386 proname => 'koi8r_to_win866', prolang => 'c', prorettype => 'void', 10387 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'koi8r_to_win866', 10388 probin => '$libdir/cyrillic_and_mic' }, 10389{ oid => '4313', descr => 'internal conversion function for WIN866 to KOI8R', 10390 proname => 'win866_to_koi8r', prolang => 'c', prorettype => 'void', 10391 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win866_to_koi8r', 10392 probin => '$libdir/cyrillic_and_mic' }, 10393{ oid => '4314', 10394 descr => 'internal conversion function for WIN866 to WIN1251', 10395 proname => 'win866_to_win1251', prolang => 'c', prorettype => 'void', 10396 proargtypes => 'int4 int4 cstring internal int4', 10397 prosrc => 'win866_to_win1251', probin => '$libdir/cyrillic_and_mic' }, 10398{ oid => '4315', 10399 descr => 'internal conversion function for WIN1251 to WIN866', 10400 proname => 'win1251_to_win866', prolang => 'c', prorettype => 'void', 10401 proargtypes => 'int4 int4 cstring internal int4', 10402 prosrc => 'win1251_to_win866', probin => '$libdir/cyrillic_and_mic' }, 10403{ oid => '4316', 10404 descr => 'internal conversion function for ISO-8859-5 to KOI8R', 10405 proname => 'iso_to_koi8r', prolang => 'c', prorettype => 'void', 10406 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'iso_to_koi8r', 10407 probin => '$libdir/cyrillic_and_mic' }, 10408{ oid => '4317', 10409 descr => 'internal conversion function for KOI8R to ISO-8859-5', 10410 proname => 'koi8r_to_iso', prolang => 'c', prorettype => 'void', 10411 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'koi8r_to_iso', 10412 probin => '$libdir/cyrillic_and_mic' }, 10413{ oid => '4318', 10414 descr => 'internal conversion function for ISO-8859-5 to WIN1251', 10415 proname => 'iso_to_win1251', prolang => 'c', prorettype => 'void', 10416 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'iso_to_win1251', 10417 probin => '$libdir/cyrillic_and_mic' }, 10418{ oid => '4319', 10419 descr => 'internal conversion function for WIN1251 to ISO-8859-5', 10420 proname => 'win1251_to_iso', prolang => 'c', prorettype => 'void', 10421 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win1251_to_iso', 10422 probin => '$libdir/cyrillic_and_mic' }, 10423{ oid => '4320', 10424 descr => 'internal conversion function for ISO-8859-5 to WIN866', 10425 proname => 'iso_to_win866', prolang => 'c', prorettype => 'void', 10426 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'iso_to_win866', 10427 probin => '$libdir/cyrillic_and_mic' }, 10428{ oid => '4321', 10429 descr => 'internal conversion function for WIN866 to ISO-8859-5', 10430 proname => 'win866_to_iso', prolang => 'c', prorettype => 'void', 10431 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win866_to_iso', 10432 probin => '$libdir/cyrillic_and_mic' }, 10433{ oid => '4322', 10434 descr => 'internal conversion function for EUC_CN to MULE_INTERNAL', 10435 proname => 'euc_cn_to_mic', prolang => 'c', prorettype => 'void', 10436 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_cn_to_mic', 10437 probin => '$libdir/euc_cn_and_mic' }, 10438{ oid => '4323', 10439 descr => 'internal conversion function for MULE_INTERNAL to EUC_CN', 10440 proname => 'mic_to_euc_cn', prolang => 'c', prorettype => 'void', 10441 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_euc_cn', 10442 probin => '$libdir/euc_cn_and_mic' }, 10443{ oid => '4324', descr => 'internal conversion function for EUC_JP to SJIS', 10444 proname => 'euc_jp_to_sjis', prolang => 'c', prorettype => 'void', 10445 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_jp_to_sjis', 10446 probin => '$libdir/euc_jp_and_sjis' }, 10447{ oid => '4325', descr => 'internal conversion function for SJIS to EUC_JP', 10448 proname => 'sjis_to_euc_jp', prolang => 'c', prorettype => 'void', 10449 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'sjis_to_euc_jp', 10450 probin => '$libdir/euc_jp_and_sjis' }, 10451{ oid => '4326', 10452 descr => 'internal conversion function for EUC_JP to MULE_INTERNAL', 10453 proname => 'euc_jp_to_mic', prolang => 'c', prorettype => 'void', 10454 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_jp_to_mic', 10455 probin => '$libdir/euc_jp_and_sjis' }, 10456{ oid => '4327', 10457 descr => 'internal conversion function for SJIS to MULE_INTERNAL', 10458 proname => 'sjis_to_mic', prolang => 'c', prorettype => 'void', 10459 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'sjis_to_mic', 10460 probin => '$libdir/euc_jp_and_sjis' }, 10461{ oid => '4328', 10462 descr => 'internal conversion function for MULE_INTERNAL to EUC_JP', 10463 proname => 'mic_to_euc_jp', prolang => 'c', prorettype => 'void', 10464 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_euc_jp', 10465 probin => '$libdir/euc_jp_and_sjis' }, 10466{ oid => '4329', 10467 descr => 'internal conversion function for MULE_INTERNAL to SJIS', 10468 proname => 'mic_to_sjis', prolang => 'c', prorettype => 'void', 10469 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_sjis', 10470 probin => '$libdir/euc_jp_and_sjis' }, 10471{ oid => '4330', 10472 descr => 'internal conversion function for EUC_KR to MULE_INTERNAL', 10473 proname => 'euc_kr_to_mic', prolang => 'c', prorettype => 'void', 10474 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_kr_to_mic', 10475 probin => '$libdir/euc_kr_and_mic' }, 10476{ oid => '4331', 10477 descr => 'internal conversion function for MULE_INTERNAL to EUC_KR', 10478 proname => 'mic_to_euc_kr', prolang => 'c', prorettype => 'void', 10479 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_euc_kr', 10480 probin => '$libdir/euc_kr_and_mic' }, 10481{ oid => '4332', descr => 'internal conversion function for EUC_TW to BIG5', 10482 proname => 'euc_tw_to_big5', prolang => 'c', prorettype => 'void', 10483 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_tw_to_big5', 10484 probin => '$libdir/euc_tw_and_big5' }, 10485{ oid => '4333', descr => 'internal conversion function for BIG5 to EUC_TW', 10486 proname => 'big5_to_euc_tw', prolang => 'c', prorettype => 'void', 10487 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'big5_to_euc_tw', 10488 probin => '$libdir/euc_tw_and_big5' }, 10489{ oid => '4334', 10490 descr => 'internal conversion function for EUC_TW to MULE_INTERNAL', 10491 proname => 'euc_tw_to_mic', prolang => 'c', prorettype => 'void', 10492 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_tw_to_mic', 10493 probin => '$libdir/euc_tw_and_big5' }, 10494{ oid => '4335', 10495 descr => 'internal conversion function for BIG5 to MULE_INTERNAL', 10496 proname => 'big5_to_mic', prolang => 'c', prorettype => 'void', 10497 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'big5_to_mic', 10498 probin => '$libdir/euc_tw_and_big5' }, 10499{ oid => '4336', 10500 descr => 'internal conversion function for MULE_INTERNAL to EUC_TW', 10501 proname => 'mic_to_euc_tw', prolang => 'c', prorettype => 'void', 10502 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_euc_tw', 10503 probin => '$libdir/euc_tw_and_big5' }, 10504{ oid => '4337', 10505 descr => 'internal conversion function for MULE_INTERNAL to BIG5', 10506 proname => 'mic_to_big5', prolang => 'c', prorettype => 'void', 10507 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_big5', 10508 probin => '$libdir/euc_tw_and_big5' }, 10509{ oid => '4338', 10510 descr => 'internal conversion function for LATIN2 to MULE_INTERNAL', 10511 proname => 'latin2_to_mic', prolang => 'c', prorettype => 'void', 10512 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'latin2_to_mic', 10513 probin => '$libdir/latin2_and_win1250' }, 10514{ oid => '4339', 10515 descr => 'internal conversion function for MULE_INTERNAL to LATIN2', 10516 proname => 'mic_to_latin2', prolang => 'c', prorettype => 'void', 10517 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_latin2', 10518 probin => '$libdir/latin2_and_win1250' }, 10519{ oid => '4340', 10520 descr => 'internal conversion function for WIN1250 to MULE_INTERNAL', 10521 proname => 'win1250_to_mic', prolang => 'c', prorettype => 'void', 10522 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win1250_to_mic', 10523 probin => '$libdir/latin2_and_win1250' }, 10524{ oid => '4341', 10525 descr => 'internal conversion function for MULE_INTERNAL to WIN1250', 10526 proname => 'mic_to_win1250', prolang => 'c', prorettype => 'void', 10527 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_win1250', 10528 probin => '$libdir/latin2_and_win1250' }, 10529{ oid => '4342', 10530 descr => 'internal conversion function for LATIN2 to WIN1250', 10531 proname => 'latin2_to_win1250', prolang => 'c', prorettype => 'void', 10532 proargtypes => 'int4 int4 cstring internal int4', 10533 prosrc => 'latin2_to_win1250', probin => '$libdir/latin2_and_win1250' }, 10534{ oid => '4343', 10535 descr => 'internal conversion function for WIN1250 to LATIN2', 10536 proname => 'win1250_to_latin2', prolang => 'c', prorettype => 'void', 10537 proargtypes => 'int4 int4 cstring internal int4', 10538 prosrc => 'win1250_to_latin2', probin => '$libdir/latin2_and_win1250' }, 10539{ oid => '4344', 10540 descr => 'internal conversion function for LATIN1 to MULE_INTERNAL', 10541 proname => 'latin1_to_mic', prolang => 'c', prorettype => 'void', 10542 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'latin1_to_mic', 10543 probin => '$libdir/latin_and_mic' }, 10544{ oid => '4345', 10545 descr => 'internal conversion function for MULE_INTERNAL to LATIN1', 10546 proname => 'mic_to_latin1', prolang => 'c', prorettype => 'void', 10547 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_latin1', 10548 probin => '$libdir/latin_and_mic' }, 10549{ oid => '4346', 10550 descr => 'internal conversion function for LATIN3 to MULE_INTERNAL', 10551 proname => 'latin3_to_mic', prolang => 'c', prorettype => 'void', 10552 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'latin3_to_mic', 10553 probin => '$libdir/latin_and_mic' }, 10554{ oid => '4347', 10555 descr => 'internal conversion function for MULE_INTERNAL to LATIN3', 10556 proname => 'mic_to_latin3', prolang => 'c', prorettype => 'void', 10557 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_latin3', 10558 probin => '$libdir/latin_and_mic' }, 10559{ oid => '4348', 10560 descr => 'internal conversion function for LATIN4 to MULE_INTERNAL', 10561 proname => 'latin4_to_mic', prolang => 'c', prorettype => 'void', 10562 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'latin4_to_mic', 10563 probin => '$libdir/latin_and_mic' }, 10564{ oid => '4349', 10565 descr => 'internal conversion function for MULE_INTERNAL to LATIN4', 10566 proname => 'mic_to_latin4', prolang => 'c', prorettype => 'void', 10567 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'mic_to_latin4', 10568 probin => '$libdir/latin_and_mic' }, 10569{ oid => '4352', descr => 'internal conversion function for BIG5 to UTF8', 10570 proname => 'big5_to_utf8', prolang => 'c', prorettype => 'void', 10571 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'big5_to_utf8', 10572 probin => '$libdir/utf8_and_big5' }, 10573{ oid => '4353', descr => 'internal conversion function for UTF8 to BIG5', 10574 proname => 'utf8_to_big5', prolang => 'c', prorettype => 'void', 10575 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_big5', 10576 probin => '$libdir/utf8_and_big5' }, 10577{ oid => '4354', descr => 'internal conversion function for UTF8 to KOI8R', 10578 proname => 'utf8_to_koi8r', prolang => 'c', prorettype => 'void', 10579 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_koi8r', 10580 probin => '$libdir/utf8_and_cyrillic' }, 10581{ oid => '4355', descr => 'internal conversion function for KOI8R to UTF8', 10582 proname => 'koi8r_to_utf8', prolang => 'c', prorettype => 'void', 10583 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'koi8r_to_utf8', 10584 probin => '$libdir/utf8_and_cyrillic' }, 10585{ oid => '4356', descr => 'internal conversion function for UTF8 to KOI8U', 10586 proname => 'utf8_to_koi8u', prolang => 'c', prorettype => 'void', 10587 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_koi8u', 10588 probin => '$libdir/utf8_and_cyrillic' }, 10589{ oid => '4357', descr => 'internal conversion function for KOI8U to UTF8', 10590 proname => 'koi8u_to_utf8', prolang => 'c', prorettype => 'void', 10591 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'koi8u_to_utf8', 10592 probin => '$libdir/utf8_and_cyrillic' }, 10593{ oid => '4358', descr => 'internal conversion function for UTF8 to WIN', 10594 proname => 'utf8_to_win', prolang => 'c', prorettype => 'void', 10595 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_win', 10596 probin => '$libdir/utf8_and_win' }, 10597{ oid => '4359', descr => 'internal conversion function for WIN to UTF8', 10598 proname => 'win_to_utf8', prolang => 'c', prorettype => 'void', 10599 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'win_to_utf8', 10600 probin => '$libdir/utf8_and_win' }, 10601{ oid => '4360', descr => 'internal conversion function for EUC_CN to UTF8', 10602 proname => 'euc_cn_to_utf8', prolang => 'c', prorettype => 'void', 10603 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_cn_to_utf8', 10604 probin => '$libdir/utf8_and_euc_cn' }, 10605{ oid => '4361', descr => 'internal conversion function for UTF8 to EUC_CN', 10606 proname => 'utf8_to_euc_cn', prolang => 'c', prorettype => 'void', 10607 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_euc_cn', 10608 probin => '$libdir/utf8_and_euc_cn' }, 10609{ oid => '4362', descr => 'internal conversion function for EUC_JP to UTF8', 10610 proname => 'euc_jp_to_utf8', prolang => 'c', prorettype => 'void', 10611 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_jp_to_utf8', 10612 probin => '$libdir/utf8_and_euc_jp' }, 10613{ oid => '4363', descr => 'internal conversion function for UTF8 to EUC_JP', 10614 proname => 'utf8_to_euc_jp', prolang => 'c', prorettype => 'void', 10615 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_euc_jp', 10616 probin => '$libdir/utf8_and_euc_jp' }, 10617{ oid => '4364', descr => 'internal conversion function for EUC_KR to UTF8', 10618 proname => 'euc_kr_to_utf8', prolang => 'c', prorettype => 'void', 10619 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_kr_to_utf8', 10620 probin => '$libdir/utf8_and_euc_kr' }, 10621{ oid => '4365', descr => 'internal conversion function for UTF8 to EUC_KR', 10622 proname => 'utf8_to_euc_kr', prolang => 'c', prorettype => 'void', 10623 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_euc_kr', 10624 probin => '$libdir/utf8_and_euc_kr' }, 10625{ oid => '4366', descr => 'internal conversion function for EUC_TW to UTF8', 10626 proname => 'euc_tw_to_utf8', prolang => 'c', prorettype => 'void', 10627 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'euc_tw_to_utf8', 10628 probin => '$libdir/utf8_and_euc_tw' }, 10629{ oid => '4367', descr => 'internal conversion function for UTF8 to EUC_TW', 10630 proname => 'utf8_to_euc_tw', prolang => 'c', prorettype => 'void', 10631 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_euc_tw', 10632 probin => '$libdir/utf8_and_euc_tw' }, 10633{ oid => '4368', descr => 'internal conversion function for GB18030 to UTF8', 10634 proname => 'gb18030_to_utf8', prolang => 'c', prorettype => 'void', 10635 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'gb18030_to_utf8', 10636 probin => '$libdir/utf8_and_gb18030' }, 10637{ oid => '4369', descr => 'internal conversion function for UTF8 to GB18030', 10638 proname => 'utf8_to_gb18030', prolang => 'c', prorettype => 'void', 10639 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_gb18030', 10640 probin => '$libdir/utf8_and_gb18030' }, 10641{ oid => '4370', descr => 'internal conversion function for GBK to UTF8', 10642 proname => 'gbk_to_utf8', prolang => 'c', prorettype => 'void', 10643 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'gbk_to_utf8', 10644 probin => '$libdir/utf8_and_gbk' }, 10645{ oid => '4371', descr => 'internal conversion function for UTF8 to GBK', 10646 proname => 'utf8_to_gbk', prolang => 'c', prorettype => 'void', 10647 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_gbk', 10648 probin => '$libdir/utf8_and_gbk' }, 10649{ oid => '4372', 10650 descr => 'internal conversion function for UTF8 to ISO-8859 2-16', 10651 proname => 'utf8_to_iso8859', prolang => 'c', prorettype => 'void', 10652 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_iso8859', 10653 probin => '$libdir/utf8_and_iso8859' }, 10654{ oid => '4373', 10655 descr => 'internal conversion function for ISO-8859 2-16 to UTF8', 10656 proname => 'iso8859_to_utf8', prolang => 'c', prorettype => 'void', 10657 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'iso8859_to_utf8', 10658 probin => '$libdir/utf8_and_iso8859' }, 10659{ oid => '4374', descr => 'internal conversion function for LATIN1 to UTF8', 10660 proname => 'iso8859_1_to_utf8', prolang => 'c', prorettype => 'void', 10661 proargtypes => 'int4 int4 cstring internal int4', 10662 prosrc => 'iso8859_1_to_utf8', probin => '$libdir/utf8_and_iso8859_1' }, 10663{ oid => '4375', descr => 'internal conversion function for UTF8 to LATIN1', 10664 proname => 'utf8_to_iso8859_1', prolang => 'c', prorettype => 'void', 10665 proargtypes => 'int4 int4 cstring internal int4', 10666 prosrc => 'utf8_to_iso8859_1', probin => '$libdir/utf8_and_iso8859_1' }, 10667{ oid => '4376', descr => 'internal conversion function for JOHAB to UTF8', 10668 proname => 'johab_to_utf8', prolang => 'c', prorettype => 'void', 10669 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'johab_to_utf8', 10670 probin => '$libdir/utf8_and_johab' }, 10671{ oid => '4377', descr => 'internal conversion function for UTF8 to JOHAB', 10672 proname => 'utf8_to_johab', prolang => 'c', prorettype => 'void', 10673 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_johab', 10674 probin => '$libdir/utf8_and_johab' }, 10675{ oid => '4378', descr => 'internal conversion function for SJIS to UTF8', 10676 proname => 'sjis_to_utf8', prolang => 'c', prorettype => 'void', 10677 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'sjis_to_utf8', 10678 probin => '$libdir/utf8_and_sjis' }, 10679{ oid => '4379', descr => 'internal conversion function for UTF8 to SJIS', 10680 proname => 'utf8_to_sjis', prolang => 'c', prorettype => 'void', 10681 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_sjis', 10682 probin => '$libdir/utf8_and_sjis' }, 10683{ oid => '4380', descr => 'internal conversion function for UHC to UTF8', 10684 proname => 'uhc_to_utf8', prolang => 'c', prorettype => 'void', 10685 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'uhc_to_utf8', 10686 probin => '$libdir/utf8_and_uhc' }, 10687{ oid => '4381', descr => 'internal conversion function for UTF8 to UHC', 10688 proname => 'utf8_to_uhc', prolang => 'c', prorettype => 'void', 10689 proargtypes => 'int4 int4 cstring internal int4', prosrc => 'utf8_to_uhc', 10690 probin => '$libdir/utf8_and_uhc' }, 10691{ oid => '4382', 10692 descr => 'internal conversion function for EUC_JIS_2004 to UTF8', 10693 proname => 'euc_jis_2004_to_utf8', prolang => 'c', prorettype => 'void', 10694 proargtypes => 'int4 int4 cstring internal int4', 10695 prosrc => 'euc_jis_2004_to_utf8', probin => '$libdir/utf8_and_euc2004' }, 10696{ oid => '4383', 10697 descr => 'internal conversion function for UTF8 to EUC_JIS_2004', 10698 proname => 'utf8_to_euc_jis_2004', prolang => 'c', prorettype => 'void', 10699 proargtypes => 'int4 int4 cstring internal int4', 10700 prosrc => 'utf8_to_euc_jis_2004', probin => '$libdir/utf8_and_euc2004' }, 10701{ oid => '4384', 10702 descr => 'internal conversion function for SHIFT_JIS_2004 to UTF8', 10703 proname => 'shift_jis_2004_to_utf8', prolang => 'c', prorettype => 'void', 10704 proargtypes => 'int4 int4 cstring internal int4', 10705 prosrc => 'shift_jis_2004_to_utf8', probin => '$libdir/utf8_and_sjis2004' }, 10706{ oid => '4385', 10707 descr => 'internal conversion function for UTF8 to SHIFT_JIS_2004', 10708 proname => 'utf8_to_shift_jis_2004', prolang => 'c', prorettype => 'void', 10709 proargtypes => 'int4 int4 cstring internal int4', 10710 prosrc => 'utf8_to_shift_jis_2004', probin => '$libdir/utf8_and_sjis2004' }, 10711{ oid => '4386', 10712 descr => 'internal conversion function for EUC_JIS_2004 to SHIFT_JIS_2004', 10713 proname => 'euc_jis_2004_to_shift_jis_2004', prolang => 'c', 10714 prorettype => 'void', proargtypes => 'int4 int4 cstring internal int4', 10715 prosrc => 'euc_jis_2004_to_shift_jis_2004', 10716 probin => '$libdir/euc2004_sjis2004' }, 10717{ oid => '4387', 10718 descr => 'internal conversion function for SHIFT_JIS_2004 to EUC_JIS_2004', 10719 proname => 'shift_jis_2004_to_euc_jis_2004', prolang => 'c', 10720 prorettype => 'void', proargtypes => 'int4 int4 cstring internal int4', 10721 prosrc => 'shift_jis_2004_to_euc_jis_2004', 10722 probin => '$libdir/euc2004_sjis2004' }, 10723 10724{ oid => '5040', 10725 descr => 'restriction selectivity for generic matching operators', 10726 proname => 'matchingsel', provolatile => 's', prorettype => 'float8', 10727 proargtypes => 'internal oid internal int4', prosrc => 'matchingsel' }, 10728{ oid => '5041', descr => 'join selectivity for generic matching operators', 10729 proname => 'matchingjoinsel', provolatile => 's', prorettype => 'float8', 10730 proargtypes => 'internal oid internal int2 internal', 10731 prosrc => 'matchingjoinsel' }, 10732 10733# replication/origin.h 10734{ oid => '6003', descr => 'create a replication origin', 10735 proname => 'pg_replication_origin_create', provolatile => 'v', 10736 proparallel => 'u', prorettype => 'oid', proargtypes => 'text', 10737 prosrc => 'pg_replication_origin_create' }, 10738 10739{ oid => '6004', descr => 'drop replication origin identified by its name', 10740 proname => 'pg_replication_origin_drop', provolatile => 'v', 10741 proparallel => 'u', prorettype => 'void', proargtypes => 'text', 10742 prosrc => 'pg_replication_origin_drop' }, 10743 10744{ oid => '6005', 10745 descr => 'translate the replication origin\'s name to its id', 10746 proname => 'pg_replication_origin_oid', provolatile => 's', 10747 prorettype => 'oid', proargtypes => 'text', 10748 prosrc => 'pg_replication_origin_oid' }, 10749 10750{ oid => '6006', 10751 descr => 'configure session to maintain replication progress tracking for the passed in origin', 10752 proname => 'pg_replication_origin_session_setup', provolatile => 'v', 10753 proparallel => 'u', prorettype => 'void', proargtypes => 'text', 10754 prosrc => 'pg_replication_origin_session_setup' }, 10755 10756{ oid => '6007', descr => 'teardown configured replication progress tracking', 10757 proname => 'pg_replication_origin_session_reset', provolatile => 'v', 10758 proparallel => 'u', prorettype => 'void', proargtypes => '', 10759 prosrc => 'pg_replication_origin_session_reset' }, 10760 10761{ oid => '6008', 10762 descr => 'is a replication origin configured in this session', 10763 proname => 'pg_replication_origin_session_is_setup', provolatile => 'v', 10764 proparallel => 'r', prorettype => 'bool', proargtypes => '', 10765 prosrc => 'pg_replication_origin_session_is_setup' }, 10766 10767{ oid => '6009', 10768 descr => 'get the replication progress of the current session', 10769 proname => 'pg_replication_origin_session_progress', provolatile => 'v', 10770 proparallel => 'u', prorettype => 'pg_lsn', proargtypes => 'bool', 10771 prosrc => 'pg_replication_origin_session_progress' }, 10772 10773{ oid => '6010', descr => 'setup the transaction\'s origin lsn and timestamp', 10774 proname => 'pg_replication_origin_xact_setup', provolatile => 'v', 10775 proparallel => 'r', prorettype => 'void', proargtypes => 'pg_lsn timestamptz', 10776 prosrc => 'pg_replication_origin_xact_setup' }, 10777 10778{ oid => '6011', descr => 'reset the transaction\'s origin lsn and timestamp', 10779 proname => 'pg_replication_origin_xact_reset', provolatile => 'v', 10780 proparallel => 'r', prorettype => 'void', proargtypes => '', 10781 prosrc => 'pg_replication_origin_xact_reset' }, 10782 10783{ oid => '6012', descr => 'advance replication origin to specific location', 10784 proname => 'pg_replication_origin_advance', provolatile => 'v', 10785 proparallel => 'u', prorettype => 'void', proargtypes => 'text pg_lsn', 10786 prosrc => 'pg_replication_origin_advance' }, 10787 10788{ oid => '6013', 10789 descr => 'get an individual replication origin\'s replication progress', 10790 proname => 'pg_replication_origin_progress', provolatile => 'v', 10791 proparallel => 'u', prorettype => 'pg_lsn', proargtypes => 'text bool', 10792 prosrc => 'pg_replication_origin_progress' }, 10793 10794{ oid => '6014', descr => 'get progress for all replication origins', 10795 proname => 'pg_show_replication_origin_status', prorows => '100', 10796 proisstrict => 'f', proretset => 't', provolatile => 'v', proparallel => 'r', 10797 prorettype => 'record', proargtypes => '', 10798 proallargtypes => '{oid,text,pg_lsn,pg_lsn}', proargmodes => '{o,o,o,o}', 10799 proargnames => '{local_id, external_id, remote_lsn, local_lsn}', 10800 prosrc => 'pg_show_replication_origin_status' }, 10801 10802# publications 10803{ oid => '6119', descr => 'get OIDs of tables in a publication', 10804 proname => 'pg_get_publication_tables', prorows => '1000', proretset => 't', 10805 provolatile => 's', prorettype => 'oid', proargtypes => 'text', 10806 proallargtypes => '{text,oid}', proargmodes => '{i,o}', 10807 proargnames => '{pubname,relid}', prosrc => 'pg_get_publication_tables' }, 10808{ oid => '6121', 10809 descr => 'returns whether a relation can be part of a publication', 10810 proname => 'pg_relation_is_publishable', provolatile => 's', 10811 prorettype => 'bool', proargtypes => 'regclass', 10812 prosrc => 'pg_relation_is_publishable' }, 10813 10814# rls 10815{ oid => '3298', 10816 descr => 'row security for current context active on table by table oid', 10817 proname => 'row_security_active', provolatile => 's', prorettype => 'bool', 10818 proargtypes => 'oid', prosrc => 'row_security_active' }, 10819{ oid => '3299', 10820 descr => 'row security for current context active on table by table name', 10821 proname => 'row_security_active', provolatile => 's', prorettype => 'bool', 10822 proargtypes => 'text', prosrc => 'row_security_active_name' }, 10823 10824# pg_config 10825{ oid => '3400', descr => 'pg_config binary as a function', 10826 proname => 'pg_config', prorows => '23', proretset => 't', provolatile => 's', 10827 proparallel => 'r', prorettype => 'record', proargtypes => '', 10828 proallargtypes => '{text,text}', proargmodes => '{o,o}', 10829 proargnames => '{name,setting}', prosrc => 'pg_config' }, 10830 10831# pg_controldata related functions 10832{ oid => '3441', 10833 descr => 'pg_controldata general state information as a function', 10834 proname => 'pg_control_system', provolatile => 'v', prorettype => 'record', 10835 proargtypes => '', proallargtypes => '{int4,int4,int8,timestamptz}', 10836 proargmodes => '{o,o,o,o}', 10837 proargnames => '{pg_control_version,catalog_version_no,system_identifier,pg_control_last_modified}', 10838 prosrc => 'pg_control_system' }, 10839 10840{ oid => '3442', 10841 descr => 'pg_controldata checkpoint state information as a function', 10842 proname => 'pg_control_checkpoint', provolatile => 'v', 10843 prorettype => 'record', proargtypes => '', 10844 proallargtypes => '{pg_lsn,pg_lsn,text,int4,int4,bool,text,oid,xid,xid,xid,oid,xid,xid,oid,xid,xid,timestamptz}', 10845 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}', 10846 proargnames => '{checkpoint_lsn,redo_lsn,redo_wal_file,timeline_id,prev_timeline_id,full_page_writes,next_xid,next_oid,next_multixact_id,next_multi_offset,oldest_xid,oldest_xid_dbid,oldest_active_xid,oldest_multi_xid,oldest_multi_dbid,oldest_commit_ts_xid,newest_commit_ts_xid,checkpoint_time}', 10847 prosrc => 'pg_control_checkpoint' }, 10848 10849{ oid => '3443', 10850 descr => 'pg_controldata recovery state information as a function', 10851 proname => 'pg_control_recovery', provolatile => 'v', prorettype => 'record', 10852 proargtypes => '', proallargtypes => '{pg_lsn,int4,pg_lsn,pg_lsn,bool}', 10853 proargmodes => '{o,o,o,o,o}', 10854 proargnames => '{min_recovery_end_lsn,min_recovery_end_timeline,backup_start_lsn,backup_end_lsn,end_of_backup_record_required}', 10855 prosrc => 'pg_control_recovery' }, 10856 10857{ oid => '3444', 10858 descr => 'pg_controldata init state information as a function', 10859 proname => 'pg_control_init', provolatile => 'v', prorettype => 'record', 10860 proargtypes => '', 10861 proallargtypes => '{int4,int4,int4,int4,int4,int4,int4,int4,int4,bool,int4}', 10862 proargmodes => '{o,o,o,o,o,o,o,o,o,o,o}', 10863 proargnames => '{max_data_alignment,database_block_size,blocks_per_segment,wal_block_size,bytes_per_wal_segment,max_identifier_length,max_index_columns,max_toast_chunk_size,large_object_chunk_size,float8_pass_by_value,data_page_checksum_version}', 10864 prosrc => 'pg_control_init' }, 10865 10866# collation management functions 10867{ oid => '3445', descr => 'import collations from operating system', 10868 proname => 'pg_import_system_collations', procost => '100', 10869 provolatile => 'v', proparallel => 'u', prorettype => 'int4', 10870 proargtypes => 'regnamespace', prosrc => 'pg_import_system_collations' }, 10871 10872{ oid => '3448', 10873 descr => 'get actual version of collation from operating system', 10874 proname => 'pg_collation_actual_version', procost => '100', 10875 provolatile => 'v', prorettype => 'text', proargtypes => 'oid', 10876 prosrc => 'pg_collation_actual_version' }, 10877 10878# system management/monitoring related functions 10879{ oid => '3353', descr => 'list files in the log directory', 10880 proname => 'pg_ls_logdir', procost => '10', prorows => '20', proretset => 't', 10881 provolatile => 'v', prorettype => 'record', proargtypes => '', 10882 proallargtypes => '{text,int8,timestamptz}', proargmodes => '{o,o,o}', 10883 proargnames => '{name,size,modification}', prosrc => 'pg_ls_logdir' }, 10884{ oid => '3354', descr => 'list of files in the WAL directory', 10885 proname => 'pg_ls_waldir', procost => '10', prorows => '20', proretset => 't', 10886 provolatile => 'v', prorettype => 'record', proargtypes => '', 10887 proallargtypes => '{text,int8,timestamptz}', proargmodes => '{o,o,o}', 10888 proargnames => '{name,size,modification}', prosrc => 'pg_ls_waldir' }, 10889{ oid => '5031', descr => 'list of files in the archive_status directory', 10890 proname => 'pg_ls_archive_statusdir', procost => '10', prorows => '20', 10891 proretset => 't', provolatile => 'v', prorettype => 'record', 10892 proargtypes => '', proallargtypes => '{text,int8,timestamptz}', 10893 proargmodes => '{o,o,o}', proargnames => '{name,size,modification}', 10894 prosrc => 'pg_ls_archive_statusdir' }, 10895{ oid => '5029', descr => 'list files in the pgsql_tmp directory', 10896 proname => 'pg_ls_tmpdir', procost => '10', prorows => '20', proretset => 't', 10897 provolatile => 'v', prorettype => 'record', proargtypes => '', 10898 proallargtypes => '{text,int8,timestamptz}', proargmodes => '{o,o,o}', 10899 proargnames => '{name,size,modification}', prosrc => 'pg_ls_tmpdir_noargs' }, 10900{ oid => '5030', descr => 'list files in the pgsql_tmp directory', 10901 proname => 'pg_ls_tmpdir', procost => '10', prorows => '20', proretset => 't', 10902 provolatile => 'v', prorettype => 'record', proargtypes => 'oid', 10903 proallargtypes => '{oid,text,int8,timestamptz}', proargmodes => '{i,o,o,o}', 10904 proargnames => '{tablespace,name,size,modification}', 10905 prosrc => 'pg_ls_tmpdir_1arg' }, 10906 10907# hash partitioning constraint function 10908{ oid => '5028', descr => 'hash partition CHECK constraint', 10909 proname => 'satisfies_hash_partition', provariadic => 'any', 10910 proisstrict => 'f', prorettype => 'bool', proargtypes => 'oid int4 int4 any', 10911 proargmodes => '{i,i,i,v}', prosrc => 'satisfies_hash_partition' }, 10912 10913# information about a partition tree 10914{ oid => '3423', descr => 'view partition tree tables', 10915 proname => 'pg_partition_tree', prorows => '1000', proretset => 't', 10916 provolatile => 'v', prorettype => 'record', proargtypes => 'regclass', 10917 proallargtypes => '{regclass,regclass,regclass,bool,int4}', 10918 proargmodes => '{i,o,o,o,o}', 10919 proargnames => '{rootrelid,relid,parentrelid,isleaf,level}', 10920 prosrc => 'pg_partition_tree' }, 10921{ oid => '3425', descr => 'view ancestors of the partition', 10922 proname => 'pg_partition_ancestors', prorows => '10', proretset => 't', 10923 provolatile => 'v', prorettype => 'regclass', proargtypes => 'regclass', 10924 proallargtypes => '{regclass,regclass}', proargmodes => '{i,o}', 10925 proargnames => '{partitionid,relid}', prosrc => 'pg_partition_ancestors' }, 10926 10927# function to get the top-most partition root parent 10928{ oid => '3424', descr => 'get top-most partition root parent', 10929 proname => 'pg_partition_root', prorettype => 'regclass', 10930 proargtypes => 'regclass', prosrc => 'pg_partition_root' }, 10931 10932{ oid => '4350', descr => 'Unicode normalization', 10933 proname => 'normalize', prorettype => 'text', proargtypes => 'text text', 10934 prosrc => 'unicode_normalize_func' }, 10935 10936{ oid => '4351', descr => 'check Unicode normalization', 10937 proname => 'is_normalized', prorettype => 'bool', proargtypes => 'text text', 10938 prosrc => 'unicode_is_normalized' }, 10939 10940] 10941