pg_query 2.2.0 → 4.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +25 -0
- data/README.md +59 -31
- data/Rakefile +2 -2
- data/ext/pg_query/include/access/amapi.h +45 -1
- data/ext/pg_query/include/access/attmap.h +1 -1
- data/ext/pg_query/include/access/attnum.h +2 -2
- data/ext/pg_query/include/access/clog.h +4 -2
- data/ext/pg_query/include/access/commit_ts.h +6 -9
- data/ext/pg_query/include/access/detoast.h +1 -11
- data/ext/pg_query/include/access/genam.h +15 -12
- data/ext/pg_query/include/access/gin.h +2 -2
- data/ext/pg_query/include/access/htup.h +1 -1
- data/ext/pg_query/include/access/htup_details.h +75 -87
- data/ext/pg_query/include/access/itup.h +7 -1
- data/ext/pg_query/include/access/parallel.h +2 -2
- data/ext/pg_query/include/access/printtup.h +1 -1
- data/ext/pg_query/include/access/relation.h +1 -1
- data/ext/pg_query/include/access/relscan.h +17 -2
- data/ext/pg_query/include/access/rmgr.h +30 -3
- data/ext/pg_query/include/access/rmgrlist.h +23 -23
- data/ext/pg_query/include/access/sdir.h +1 -1
- data/ext/pg_query/include/access/skey.h +1 -1
- data/ext/pg_query/include/access/stratnum.h +4 -2
- data/ext/pg_query/include/access/sysattr.h +1 -1
- data/ext/pg_query/include/access/table.h +2 -1
- data/ext/pg_query/include/access/tableam.h +272 -20
- data/ext/pg_query/include/access/toast_compression.h +73 -0
- data/ext/pg_query/include/access/transam.h +123 -13
- data/ext/pg_query/include/access/tupconvert.h +1 -1
- data/ext/pg_query/include/access/tupdesc.h +1 -1
- data/ext/pg_query/include/access/tupmacs.h +3 -3
- data/ext/pg_query/include/access/twophase.h +3 -1
- data/ext/pg_query/include/access/xact.h +73 -19
- data/ext/pg_query/include/access/xlog.h +60 -155
- data/ext/pg_query/include/access/xlog_internal.h +40 -13
- data/ext/pg_query/include/access/xlogdefs.h +8 -16
- data/ext/pg_query/include/access/xlogprefetcher.h +55 -0
- data/ext/pg_query/include/access/xlogreader.h +145 -39
- data/ext/pg_query/include/access/xlogrecord.h +18 -9
- data/ext/pg_query/include/access/xlogrecovery.h +157 -0
- data/ext/pg_query/include/c.h +101 -44
- data/ext/pg_query/include/catalog/catalog.h +3 -1
- data/ext/pg_query/include/catalog/catversion.h +2 -2
- data/ext/pg_query/include/catalog/dependency.h +8 -16
- data/ext/pg_query/include/catalog/genbki.h +83 -5
- data/ext/pg_query/include/catalog/index.h +18 -3
- data/ext/pg_query/include/catalog/indexing.h +12 -324
- data/ext/pg_query/include/catalog/namespace.h +4 -2
- data/ext/pg_query/include/catalog/objectaccess.h +70 -2
- data/ext/pg_query/include/catalog/objectaddress.h +11 -6
- data/ext/pg_query/include/catalog/pg_aggregate.h +14 -10
- data/ext/pg_query/include/catalog/pg_aggregate_d.h +2 -1
- data/ext/pg_query/include/catalog/pg_am.h +4 -1
- data/ext/pg_query/include/catalog/pg_am_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_attribute.h +27 -10
- data/ext/pg_query/include/catalog/pg_attribute_d.h +21 -18
- data/ext/pg_query/include/catalog/pg_authid.h +7 -2
- data/ext/pg_query/include/catalog/pg_authid_d.h +17 -9
- data/ext/pg_query/include/catalog/pg_class.h +44 -14
- data/ext/pg_query/include/catalog/pg_class_d.h +30 -1
- data/ext/pg_query/include/catalog/pg_collation.h +33 -8
- data/ext/pg_query/include/catalog/pg_collation_d.h +20 -3
- data/ext/pg_query/include/catalog/pg_constraint.h +38 -12
- data/ext/pg_query/include/catalog/pg_constraint_d.h +10 -4
- data/ext/pg_query/include/catalog/pg_control.h +3 -5
- data/ext/pg_query/include/catalog/pg_conversion.h +7 -4
- data/ext/pg_query/include/catalog/pg_conversion_d.h +4 -1
- data/ext/pg_query/include/catalog/pg_depend.h +11 -7
- data/ext/pg_query/include/catalog/pg_depend_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_event_trigger.h +9 -3
- data/ext/pg_query/include/catalog/pg_event_trigger_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_index.h +17 -7
- data/ext/pg_query/include/catalog/pg_index_d.h +20 -17
- data/ext/pg_query/include/catalog/pg_language.h +10 -5
- data/ext/pg_query/include/catalog/pg_language_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_namespace.h +7 -2
- data/ext/pg_query/include/catalog/pg_namespace_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_opclass.h +8 -5
- data/ext/pg_query/include/catalog/pg_opclass_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_operator.h +18 -15
- data/ext/pg_query/include/catalog/pg_operator_d.h +37 -1
- data/ext/pg_query/include/catalog/pg_opfamily.h +6 -3
- data/ext/pg_query/include/catalog/pg_opfamily_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_parameter_acl.h +60 -0
- data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +34 -0
- data/ext/pg_query/include/catalog/pg_partitioned_table.h +20 -9
- data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +2 -1
- data/ext/pg_query/include/catalog/pg_proc.h +20 -11
- data/ext/pg_query/include/catalog/pg_proc_d.h +10 -8
- data/ext/pg_query/include/catalog/pg_publication.h +50 -7
- data/ext/pg_query/include/catalog/pg_publication_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_replication_origin.h +6 -1
- data/ext/pg_query/include/catalog/pg_replication_origin_d.h +5 -1
- data/ext/pg_query/include/catalog/pg_statistic.h +19 -12
- data/ext/pg_query/include/catalog/pg_statistic_d.h +2 -1
- data/ext/pg_query/include/catalog/pg_statistic_ext.h +19 -5
- data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +7 -2
- data/ext/pg_query/include/catalog/pg_transform.h +8 -5
- data/ext/pg_query/include/catalog/pg_transform_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_trigger.h +24 -8
- data/ext/pg_query/include/catalog/pg_trigger_d.h +4 -1
- data/ext/pg_query/include/catalog/pg_ts_config.h +6 -3
- data/ext/pg_query/include/catalog/pg_ts_config_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_ts_dict.h +8 -3
- data/ext/pg_query/include/catalog/pg_ts_dict_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_ts_parser.h +6 -3
- data/ext/pg_query/include/catalog/pg_ts_parser_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_ts_template.h +6 -3
- data/ext/pg_query/include/catalog/pg_ts_template_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_type.h +55 -24
- data/ext/pg_query/include/catalog/pg_type_d.h +70 -31
- data/ext/pg_query/include/catalog/storage.h +5 -3
- data/ext/pg_query/include/commands/async.h +3 -4
- data/ext/pg_query/include/commands/dbcommands.h +2 -1
- data/ext/pg_query/include/commands/defrem.h +11 -24
- data/ext/pg_query/include/commands/event_trigger.h +2 -2
- data/ext/pg_query/include/commands/explain.h +1 -1
- data/ext/pg_query/include/commands/prepare.h +1 -1
- data/ext/pg_query/include/commands/tablespace.h +2 -2
- data/ext/pg_query/include/commands/trigger.h +18 -16
- data/ext/pg_query/include/commands/user.h +2 -2
- data/ext/pg_query/include/commands/vacuum.h +88 -41
- data/ext/pg_query/include/commands/variable.h +1 -1
- data/ext/pg_query/include/common/file_perm.h +4 -4
- data/ext/pg_query/include/common/hashfn.h +1 -1
- data/ext/pg_query/include/common/ip.h +1 -7
- data/ext/pg_query/include/common/keywords.h +2 -6
- data/ext/pg_query/include/common/kwlookup.h +1 -1
- data/ext/pg_query/include/common/pg_prng.h +60 -0
- data/ext/pg_query/include/common/relpath.h +2 -2
- data/ext/pg_query/include/common/string.h +24 -1
- data/ext/pg_query/include/common/unicode_combining_table.h +114 -2
- data/ext/pg_query/include/common/unicode_east_asian_fw_table.h +125 -0
- data/ext/pg_query/include/datatype/timestamp.h +40 -1
- data/ext/pg_query/include/executor/execdesc.h +1 -1
- data/ext/pg_query/include/executor/executor.h +65 -22
- data/ext/pg_query/include/executor/functions.h +17 -3
- data/ext/pg_query/include/executor/instrument.h +33 -16
- data/ext/pg_query/include/executor/spi.h +41 -3
- data/ext/pg_query/include/executor/tablefunc.h +1 -1
- data/ext/pg_query/include/executor/tuptable.h +1 -1
- data/ext/pg_query/include/fmgr.h +13 -7
- data/ext/pg_query/include/funcapi.h +16 -4
- data/ext/pg_query/include/getaddrinfo.h +1 -1
- data/ext/pg_query/include/jit/jit.h +11 -11
- data/ext/pg_query/include/kwlist_d.h +517 -494
- data/ext/pg_query/include/lib/dshash.h +112 -0
- data/ext/pg_query/include/lib/ilist.h +20 -1
- data/ext/pg_query/include/lib/pairingheap.h +1 -1
- data/ext/pg_query/include/lib/simplehash.h +140 -15
- data/ext/pg_query/include/lib/sort_template.h +432 -0
- data/ext/pg_query/include/lib/stringinfo.h +1 -1
- data/ext/pg_query/include/libpq/auth.h +6 -4
- data/ext/pg_query/include/libpq/crypt.h +5 -4
- data/ext/pg_query/include/libpq/hba.h +43 -4
- data/ext/pg_query/include/libpq/libpq-be.h +23 -6
- data/ext/pg_query/include/libpq/libpq.h +30 -20
- data/ext/pg_query/include/libpq/pqcomm.h +17 -31
- data/ext/pg_query/include/libpq/pqformat.h +1 -1
- data/ext/pg_query/include/libpq/pqsignal.h +4 -4
- data/ext/pg_query/include/mb/pg_wchar.h +105 -23
- data/ext/pg_query/include/mb/stringinfo_mb.h +1 -1
- data/ext/pg_query/include/miscadmin.h +47 -41
- data/ext/pg_query/include/nodes/bitmapset.h +1 -1
- data/ext/pg_query/include/nodes/execnodes.h +270 -78
- data/ext/pg_query/include/nodes/extensible.h +4 -2
- data/ext/pg_query/include/nodes/lockoptions.h +1 -1
- data/ext/pg_query/include/nodes/makefuncs.h +7 -6
- data/ext/pg_query/include/nodes/memnodes.h +5 -3
- data/ext/pg_query/include/nodes/nodeFuncs.h +1 -1
- data/ext/pg_query/include/nodes/nodes.h +30 -11
- data/ext/pg_query/include/nodes/params.h +1 -1
- data/ext/pg_query/include/nodes/parsenodes.h +322 -90
- data/ext/pg_query/include/nodes/pathnodes.h +243 -66
- data/ext/pg_query/include/nodes/pg_list.h +75 -69
- data/ext/pg_query/include/nodes/plannodes.h +111 -28
- data/ext/pg_query/include/nodes/primnodes.h +99 -47
- data/ext/pg_query/include/nodes/print.h +1 -1
- data/ext/pg_query/include/nodes/tidbitmap.h +1 -1
- data/ext/pg_query/include/nodes/value.h +58 -39
- data/ext/pg_query/include/optimizer/cost.h +9 -2
- data/ext/pg_query/include/optimizer/geqo.h +9 -7
- data/ext/pg_query/include/optimizer/geqo_gene.h +1 -1
- data/ext/pg_query/include/optimizer/optimizer.h +25 -17
- data/ext/pg_query/include/optimizer/paths.h +6 -6
- data/ext/pg_query/include/optimizer/planmain.h +15 -14
- data/ext/pg_query/include/parser/analyze.h +19 -5
- data/ext/pg_query/include/parser/gram.h +947 -913
- data/ext/pg_query/include/parser/gramparse.h +1 -1
- data/ext/pg_query/include/parser/kwlist.h +463 -453
- data/ext/pg_query/include/parser/parse_agg.h +2 -7
- data/ext/pg_query/include/parser/parse_coerce.h +3 -1
- data/ext/pg_query/include/parser/parse_expr.h +2 -3
- data/ext/pg_query/include/parser/parse_func.h +2 -1
- data/ext/pg_query/include/parser/parse_node.h +21 -9
- data/ext/pg_query/include/parser/parse_oper.h +1 -3
- data/ext/pg_query/include/parser/parse_relation.h +5 -4
- data/ext/pg_query/include/parser/parse_type.h +1 -1
- data/ext/pg_query/include/parser/parser.h +31 -4
- data/ext/pg_query/include/parser/parsetree.h +1 -1
- data/ext/pg_query/include/parser/scanner.h +1 -1
- data/ext/pg_query/include/parser/scansup.h +2 -5
- data/ext/pg_query/include/partitioning/partdefs.h +1 -1
- data/ext/pg_query/include/pg_config.h +83 -41
- data/ext/pg_query/include/pg_config_manual.h +74 -21
- data/ext/pg_query/include/pg_getopt.h +6 -6
- data/ext/pg_query/include/pg_query.h +5 -4
- data/ext/pg_query/include/pg_query_enum_defs.c +358 -241
- data/ext/pg_query/include/pg_query_fingerprint_conds.c +44 -7
- data/ext/pg_query/include/pg_query_fingerprint_defs.c +939 -113
- data/ext/pg_query/include/pg_query_outfuncs_conds.c +43 -13
- data/ext/pg_query/include/pg_query_outfuncs_defs.c +151 -26
- data/ext/pg_query/include/pg_query_readfuncs_conds.c +11 -2
- data/ext/pg_query/include/pg_query_readfuncs_defs.c +173 -30
- data/ext/pg_query/include/pg_trace.h +1 -1
- data/ext/pg_query/include/pgstat.h +449 -1238
- data/ext/pg_query/include/pgtime.h +14 -4
- data/ext/pg_query/include/pl_gram.h +126 -128
- data/ext/pg_query/include/pl_reserved_kwlist.h +1 -1
- data/ext/pg_query/include/pl_reserved_kwlist_d.h +10 -10
- data/ext/pg_query/include/pl_unreserved_kwlist.h +2 -3
- data/ext/pg_query/include/pl_unreserved_kwlist_d.h +54 -56
- data/ext/pg_query/include/plerrcodes.h +9 -1
- data/ext/pg_query/include/plpgsql.h +52 -54
- data/ext/pg_query/include/port/atomics/arch-arm.h +7 -1
- data/ext/pg_query/include/port/atomics/arch-ppc.h +1 -1
- data/ext/pg_query/include/port/atomics/arch-x86.h +1 -1
- data/ext/pg_query/include/port/atomics/fallback.h +1 -1
- data/ext/pg_query/include/port/atomics/generic-gcc.h +3 -3
- data/ext/pg_query/include/port/atomics/generic.h +1 -1
- data/ext/pg_query/include/port/atomics.h +1 -1
- data/ext/pg_query/include/port/pg_bitutils.h +40 -10
- data/ext/pg_query/include/port/pg_bswap.h +1 -1
- data/ext/pg_query/include/port/pg_crc32c.h +1 -1
- data/ext/pg_query/include/port.h +71 -46
- data/ext/pg_query/include/portability/instr_time.h +1 -1
- data/ext/pg_query/include/postgres.h +60 -16
- data/ext/pg_query/include/postmaster/autovacuum.h +17 -17
- data/ext/pg_query/include/postmaster/auxprocess.h +20 -0
- data/ext/pg_query/include/postmaster/bgworker.h +2 -1
- data/ext/pg_query/include/postmaster/bgworker_internals.h +2 -2
- data/ext/pg_query/include/postmaster/bgwriter.h +5 -5
- data/ext/pg_query/include/postmaster/fork_process.h +1 -1
- data/ext/pg_query/include/postmaster/interrupt.h +1 -1
- data/ext/pg_query/include/postmaster/pgarch.h +42 -8
- data/ext/pg_query/include/postmaster/postmaster.h +18 -17
- data/ext/pg_query/include/postmaster/startup.h +39 -0
- data/ext/pg_query/include/postmaster/syslogger.h +15 -10
- data/ext/pg_query/include/postmaster/walwriter.h +3 -3
- data/ext/pg_query/include/protobuf/pg_query.pb-c.h +1419 -914
- data/ext/pg_query/include/protobuf/pg_query.pb.h +43678 -32769
- data/ext/pg_query/include/regex/regex.h +18 -16
- data/ext/pg_query/include/replication/logicallauncher.h +3 -5
- data/ext/pg_query/include/replication/logicalproto.h +161 -17
- data/ext/pg_query/include/replication/logicalworker.h +1 -1
- data/ext/pg_query/include/replication/origin.h +7 -7
- data/ext/pg_query/include/replication/reorderbuffer.h +259 -42
- data/ext/pg_query/include/replication/slot.h +22 -11
- data/ext/pg_query/include/replication/syncrep.h +5 -5
- data/ext/pg_query/include/replication/walreceiver.h +145 -13
- data/ext/pg_query/include/replication/walsender.h +8 -8
- data/ext/pg_query/include/rewrite/prs2lock.h +1 -1
- data/ext/pg_query/include/rewrite/rewriteHandler.h +1 -3
- data/ext/pg_query/include/rewrite/rewriteManip.h +1 -1
- data/ext/pg_query/include/rewrite/rewriteSupport.h +1 -1
- data/ext/pg_query/include/storage/backendid.h +3 -3
- data/ext/pg_query/include/storage/block.h +4 -10
- data/ext/pg_query/include/storage/buf.h +1 -1
- data/ext/pg_query/include/storage/bufmgr.h +19 -14
- data/ext/pg_query/include/storage/bufpage.h +6 -8
- data/ext/pg_query/include/storage/condition_variable.h +13 -2
- data/ext/pg_query/include/storage/dsm.h +4 -1
- data/ext/pg_query/include/storage/dsm_impl.h +3 -2
- data/ext/pg_query/include/storage/fd.h +33 -3
- data/ext/pg_query/include/storage/fileset.h +40 -0
- data/ext/pg_query/include/storage/ipc.h +4 -1
- data/ext/pg_query/include/storage/item.h +1 -1
- data/ext/pg_query/include/storage/itemid.h +1 -1
- data/ext/pg_query/include/storage/itemptr.h +3 -1
- data/ext/pg_query/include/storage/large_object.h +2 -2
- data/ext/pg_query/include/storage/latch.h +9 -13
- data/ext/pg_query/include/storage/lmgr.h +2 -1
- data/ext/pg_query/include/storage/lock.h +11 -8
- data/ext/pg_query/include/storage/lockdefs.h +2 -2
- data/ext/pg_query/include/storage/lwlock.h +5 -32
- data/ext/pg_query/include/storage/lwlocknames.h +0 -1
- data/ext/pg_query/include/storage/off.h +1 -1
- data/ext/pg_query/include/storage/pg_sema.h +1 -1
- data/ext/pg_query/include/storage/pg_shmem.h +9 -7
- data/ext/pg_query/include/storage/pmsignal.h +15 -4
- data/ext/pg_query/include/storage/predicate.h +4 -4
- data/ext/pg_query/include/storage/proc.h +173 -59
- data/ext/pg_query/include/storage/procarray.h +98 -0
- data/ext/pg_query/include/storage/proclist_types.h +1 -1
- data/ext/pg_query/include/storage/procsignal.h +3 -7
- data/ext/pg_query/include/storage/relfilenode.h +1 -1
- data/ext/pg_query/include/storage/s_lock.h +60 -21
- data/ext/pg_query/include/storage/sharedfileset.h +3 -11
- data/ext/pg_query/include/storage/shm_mq.h +5 -4
- data/ext/pg_query/include/storage/shm_toc.h +1 -1
- data/ext/pg_query/include/storage/shmem.h +1 -1
- data/ext/pg_query/include/storage/sinval.h +3 -3
- data/ext/pg_query/include/storage/sinvaladt.h +1 -1
- data/ext/pg_query/include/storage/smgr.h +10 -8
- data/ext/pg_query/include/storage/spin.h +2 -2
- data/ext/pg_query/include/storage/standby.h +13 -6
- data/ext/pg_query/include/storage/standbydefs.h +2 -2
- data/ext/pg_query/include/storage/sync.h +7 -3
- data/ext/pg_query/include/tcop/cmdtag.h +1 -1
- data/ext/pg_query/include/tcop/cmdtaglist.h +3 -2
- data/ext/pg_query/include/tcop/deparse_utility.h +1 -1
- data/ext/pg_query/include/tcop/dest.h +1 -1
- data/ext/pg_query/include/tcop/fastpath.h +1 -2
- data/ext/pg_query/include/tcop/pquery.h +1 -1
- data/ext/pg_query/include/tcop/tcopprot.h +19 -11
- data/ext/pg_query/include/tcop/utility.h +7 -3
- data/ext/pg_query/include/tsearch/ts_cache.h +2 -2
- data/ext/pg_query/include/utils/acl.h +24 -3
- data/ext/pg_query/include/utils/aclchk_internal.h +1 -1
- data/ext/pg_query/include/utils/array.h +7 -2
- data/ext/pg_query/include/utils/backend_progress.h +44 -0
- data/ext/pg_query/include/utils/backend_status.h +321 -0
- data/ext/pg_query/include/utils/builtins.h +10 -11
- data/ext/pg_query/include/utils/bytea.h +3 -2
- data/ext/pg_query/include/utils/catcache.h +1 -1
- data/ext/pg_query/include/utils/date.h +1 -1
- data/ext/pg_query/include/utils/datetime.h +8 -7
- data/ext/pg_query/include/utils/datum.h +9 -1
- data/ext/pg_query/include/utils/dsa.h +1 -1
- data/ext/pg_query/include/utils/dynahash.h +4 -3
- data/ext/pg_query/include/utils/elog.h +52 -21
- data/ext/pg_query/include/utils/errcodes.h +2 -0
- data/ext/pg_query/include/utils/expandeddatum.h +1 -1
- data/ext/pg_query/include/utils/expandedrecord.h +1 -1
- data/ext/pg_query/include/utils/float.h +7 -7
- data/ext/pg_query/include/utils/fmgroids.h +1300 -696
- data/ext/pg_query/include/utils/fmgrprotos.h +199 -16
- data/ext/pg_query/include/utils/fmgrtab.h +6 -5
- data/ext/pg_query/include/utils/guc.h +69 -43
- data/ext/pg_query/include/utils/guc_tables.h +23 -19
- data/ext/pg_query/include/utils/hsearch.h +15 -11
- data/ext/pg_query/include/utils/inval.h +4 -1
- data/ext/pg_query/include/utils/lsyscache.h +11 -1
- data/ext/pg_query/include/utils/memdebug.h +1 -1
- data/ext/pg_query/include/utils/memutils.h +8 -3
- data/ext/pg_query/include/utils/numeric.h +19 -5
- data/ext/pg_query/include/utils/palloc.h +25 -3
- data/ext/pg_query/include/utils/partcache.h +1 -1
- data/ext/pg_query/include/utils/pg_locale.h +17 -9
- data/ext/pg_query/include/utils/pg_lsn.h +1 -1
- data/ext/pg_query/include/utils/pgstat_internal.h +784 -0
- data/ext/pg_query/include/utils/pidfile.h +1 -1
- data/ext/pg_query/include/utils/plancache.h +6 -5
- data/ext/pg_query/include/utils/portal.h +10 -12
- data/ext/pg_query/include/utils/ps_status.h +1 -1
- data/ext/pg_query/include/utils/queryenvironment.h +1 -1
- data/ext/pg_query/include/utils/queryjumble.h +88 -0
- data/ext/pg_query/include/utils/regproc.h +14 -3
- data/ext/pg_query/include/utils/rel.h +71 -19
- data/ext/pg_query/include/utils/relcache.h +8 -5
- data/ext/pg_query/include/utils/reltrigger.h +1 -1
- data/ext/pg_query/include/utils/resowner.h +1 -1
- data/ext/pg_query/include/utils/rls.h +2 -2
- data/ext/pg_query/include/utils/ruleutils.h +4 -1
- data/ext/pg_query/include/utils/sharedtuplestore.h +1 -1
- data/ext/pg_query/include/utils/snapmgr.h +34 -14
- data/ext/pg_query/include/utils/snapshot.h +14 -1
- data/ext/pg_query/include/utils/sortsupport.h +117 -2
- data/ext/pg_query/include/utils/syscache.h +6 -1
- data/ext/pg_query/include/utils/timeout.h +11 -4
- data/ext/pg_query/include/utils/timestamp.h +6 -5
- data/ext/pg_query/include/utils/tuplesort.h +25 -11
- data/ext/pg_query/include/utils/tuplestore.h +2 -2
- data/ext/pg_query/include/utils/typcache.h +24 -17
- data/ext/pg_query/include/utils/tzparser.h +1 -1
- data/ext/pg_query/include/utils/varlena.h +5 -3
- data/ext/pg_query/include/utils/wait_event.h +289 -0
- data/ext/pg_query/include/utils/xml.h +4 -4
- data/ext/pg_query/pg_query.pb-c.c +4302 -2304
- data/ext/pg_query/pg_query_deparse.c +1106 -373
- data/ext/pg_query/pg_query_fingerprint.c +30 -10
- data/ext/pg_query/pg_query_json_plpgsql.c +0 -25
- data/ext/pg_query/pg_query_normalize.c +1 -1
- data/ext/pg_query/pg_query_outfuncs_json.c +54 -16
- data/ext/pg_query/pg_query_outfuncs_protobuf.c +70 -10
- data/ext/pg_query/pg_query_parse.c +1 -1
- data/ext/pg_query/pg_query_readfuncs_protobuf.c +42 -8
- data/ext/pg_query/pg_query_scan.c +2 -1
- data/ext/pg_query/pg_query_split.c +3 -2
- data/ext/pg_query/src_backend_catalog_namespace.c +20 -9
- data/ext/pg_query/src_backend_catalog_pg_proc.c +4 -1
- data/ext/pg_query/src_backend_commands_define.c +11 -1
- data/ext/pg_query/src_backend_nodes_bitmapset.c +3 -1
- data/ext/pg_query/src_backend_nodes_copyfuncs.c +401 -76
- data/ext/pg_query/src_backend_nodes_equalfuncs.c +290 -46
- data/ext/pg_query/src_backend_nodes_extensible.c +1 -1
- data/ext/pg_query/src_backend_nodes_list.c +74 -11
- data/ext/pg_query/src_backend_nodes_makefuncs.c +5 -4
- data/ext/pg_query/src_backend_nodes_nodeFuncs.c +55 -12
- data/ext/pg_query/src_backend_nodes_value.c +28 -19
- data/ext/pg_query/src_backend_parser_gram.c +33874 -31261
- data/ext/pg_query/src_backend_parser_parser.c +26 -7
- data/ext/pg_query/src_backend_parser_scan.c +172 -209
- data/ext/pg_query/src_backend_parser_scansup.c +4 -28
- data/ext/pg_query/src_backend_postmaster_postmaster.c +77 -106
- data/ext/pg_query/src_backend_storage_ipc_ipc.c +13 -4
- data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +5 -4
- data/ext/pg_query/src_backend_tcop_postgres.c +62 -23
- data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +140 -0
- data/ext/pg_query/src_backend_utils_adt_datum.c +13 -1
- data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
- data/ext/pg_query/src_backend_utils_adt_format_type.c +6 -2
- data/ext/pg_query/src_backend_utils_adt_ruleutils.c +71 -5
- data/ext/pg_query/src_backend_utils_error_assert.c +16 -14
- data/ext/pg_query/src_backend_utils_error_elog.c +172 -99
- data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +12 -17
- data/ext/pg_query/src_backend_utils_hash_dynahash.c +40 -10
- data/ext/pg_query/src_backend_utils_init_globals.c +5 -5
- data/ext/pg_query/src_backend_utils_mb_mbutils.c +55 -66
- data/ext/pg_query/src_backend_utils_misc_guc.c +206 -45
- data/ext/pg_query/src_backend_utils_mmgr_aset.c +7 -5
- data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +123 -35
- data/ext/pg_query/src_common_encnames.c +1 -1
- data/ext/pg_query/src_common_hashfn.c +3 -3
- data/ext/pg_query/src_common_keywords.c +15 -2
- data/ext/pg_query/src_common_kwlist_d.h +517 -494
- data/ext/pg_query/src_common_kwlookup.c +1 -1
- data/ext/pg_query/src_common_pg_prng.c +152 -0
- data/ext/pg_query/src_common_psprintf.c +1 -1
- data/ext/pg_query/src_common_string.c +7 -1
- data/ext/pg_query/src_common_stringinfo.c +1 -1
- data/ext/pg_query/src_common_wchar.c +701 -109
- data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +45 -20
- data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +1 -18
- data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +1233 -1259
- data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +10 -10
- data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +2 -2
- data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +54 -56
- data/ext/pg_query/src_port_pg_bitutils.c +41 -31
- data/ext/pg_query/src_port_pgsleep.c +1 -1
- data/ext/pg_query/src_port_pgstrcasecmp.c +1 -1
- data/ext/pg_query/src_port_qsort.c +12 -224
- data/ext/pg_query/src_port_snprintf.c +37 -13
- data/ext/pg_query/src_port_strerror.c +9 -19
- data/ext/pg_query/src_port_strnlen.c +1 -1
- data/lib/pg_query/filter_columns.rb +1 -1
- data/lib/pg_query/fingerprint.rb +5 -1
- data/lib/pg_query/node.rb +2 -2
- data/lib/pg_query/param_refs.rb +1 -1
- data/lib/pg_query/parse.rb +20 -8
- data/lib/pg_query/pg_query_pb.rb +1108 -942
- data/lib/pg_query/treewalker.rb +6 -0
- data/lib/pg_query/truncate.rb +1 -1
- data/lib/pg_query/version.rb +1 -1
- metadata +27 -17
- data/ext/pg_query/include/access/xloginsert.h +0 -64
- data/ext/pg_query/include/bootstrap/bootstrap.h +0 -62
- data/ext/pg_query/include/parser/parse_clause.h +0 -54
- data/ext/pg_query/include/parser/parse_collate.h +0 -27
- data/ext/pg_query/include/parser/parse_target.h +0 -46
- data/ext/pg_query/pg_query_ruby_freebsd.sym +0 -2
- data/ext/pg_query/src_backend_libpq_pqcomm.c +0 -659
- data/ext/pg_query/src_backend_parser_parse_expr.c +0 -313
- data/ext/pg_query/src_port_erand48.c +0 -127
- data/ext/pg_query/src_port_random.c +0 -31
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* objects, created by CREATE STATISTICS, but not the actual statistical data,
|
|
9
9
|
* created by running ANALYZE.
|
|
10
10
|
*
|
|
11
|
-
* Portions Copyright (c) 1996-
|
|
11
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
12
12
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
13
13
|
*
|
|
14
14
|
* src/include/catalog/pg_statistic_ext.h
|
|
@@ -34,24 +34,29 @@ CATALOG(pg_statistic_ext,3381,StatisticExtRelationId)
|
|
|
34
34
|
{
|
|
35
35
|
Oid oid; /* oid */
|
|
36
36
|
|
|
37
|
-
Oid stxrelid;
|
|
37
|
+
Oid stxrelid BKI_LOOKUP(pg_class); /* relation containing
|
|
38
|
+
* attributes */
|
|
38
39
|
|
|
39
40
|
/* These two fields form the unique key for the entry: */
|
|
40
41
|
NameData stxname; /* statistics object name */
|
|
41
|
-
Oid stxnamespace; /* OID of statistics
|
|
42
|
+
Oid stxnamespace BKI_LOOKUP(pg_namespace); /* OID of statistics
|
|
43
|
+
* object's namespace */
|
|
42
44
|
|
|
43
|
-
Oid stxowner;
|
|
45
|
+
Oid stxowner BKI_LOOKUP(pg_authid); /* statistics object's owner */
|
|
44
46
|
int32 stxstattarget BKI_DEFAULT(-1); /* statistics target */
|
|
45
47
|
|
|
46
48
|
/*
|
|
47
49
|
* variable-length fields start here, but we allow direct access to
|
|
48
50
|
* stxkeys
|
|
49
51
|
*/
|
|
50
|
-
int2vector stxkeys;
|
|
52
|
+
int2vector stxkeys BKI_FORCE_NOT_NULL; /* array of column keys */
|
|
51
53
|
|
|
52
54
|
#ifdef CATALOG_VARLEN
|
|
53
55
|
char stxkind[1] BKI_FORCE_NOT_NULL; /* statistics kinds requested
|
|
54
56
|
* to build */
|
|
57
|
+
pg_node_tree stxexprs; /* A list of expression trees for stats
|
|
58
|
+
* attributes that are not simple column
|
|
59
|
+
* references. */
|
|
55
60
|
#endif
|
|
56
61
|
|
|
57
62
|
} FormData_pg_statistic_ext;
|
|
@@ -63,11 +68,20 @@ CATALOG(pg_statistic_ext,3381,StatisticExtRelationId)
|
|
|
63
68
|
*/
|
|
64
69
|
typedef FormData_pg_statistic_ext *Form_pg_statistic_ext;
|
|
65
70
|
|
|
71
|
+
DECLARE_TOAST(pg_statistic_ext, 3439, 3440);
|
|
72
|
+
|
|
73
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_statistic_ext_oid_index, 3380, StatisticExtOidIndexId, on pg_statistic_ext using btree(oid oid_ops));
|
|
74
|
+
DECLARE_UNIQUE_INDEX(pg_statistic_ext_name_index, 3997, StatisticExtNameIndexId, on pg_statistic_ext using btree(stxname name_ops, stxnamespace oid_ops));
|
|
75
|
+
DECLARE_INDEX(pg_statistic_ext_relid_index, 3379, StatisticExtRelidIndexId, on pg_statistic_ext using btree(stxrelid oid_ops));
|
|
76
|
+
|
|
77
|
+
DECLARE_ARRAY_FOREIGN_KEY((stxrelid, stxkeys), pg_attribute, (attrelid, attnum));
|
|
78
|
+
|
|
66
79
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
67
80
|
|
|
68
81
|
#define STATS_EXT_NDISTINCT 'd'
|
|
69
82
|
#define STATS_EXT_DEPENDENCIES 'f'
|
|
70
83
|
#define STATS_EXT_MCV 'm'
|
|
84
|
+
#define STATS_EXT_EXPRESSIONS 'e'
|
|
71
85
|
|
|
72
86
|
#endif /* EXPOSE_TO_CLIENT_CODE */
|
|
73
87
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_statistic_ext_d.h
|
|
4
4
|
* Macro definitions for pg_statistic_ext
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,9 @@
|
|
|
19
19
|
#define PG_STATISTIC_EXT_D_H
|
|
20
20
|
|
|
21
21
|
#define StatisticExtRelationId 3381
|
|
22
|
+
#define StatisticExtOidIndexId 3380
|
|
23
|
+
#define StatisticExtNameIndexId 3997
|
|
24
|
+
#define StatisticExtRelidIndexId 3379
|
|
22
25
|
|
|
23
26
|
#define Anum_pg_statistic_ext_oid 1
|
|
24
27
|
#define Anum_pg_statistic_ext_stxrelid 2
|
|
@@ -28,13 +31,15 @@
|
|
|
28
31
|
#define Anum_pg_statistic_ext_stxstattarget 6
|
|
29
32
|
#define Anum_pg_statistic_ext_stxkeys 7
|
|
30
33
|
#define Anum_pg_statistic_ext_stxkind 8
|
|
34
|
+
#define Anum_pg_statistic_ext_stxexprs 9
|
|
31
35
|
|
|
32
|
-
#define Natts_pg_statistic_ext
|
|
36
|
+
#define Natts_pg_statistic_ext 9
|
|
33
37
|
|
|
34
38
|
|
|
35
39
|
#define STATS_EXT_NDISTINCT 'd'
|
|
36
40
|
#define STATS_EXT_DEPENDENCIES 'f'
|
|
37
41
|
#define STATS_EXT_MCV 'm'
|
|
42
|
+
#define STATS_EXT_EXPRESSIONS 'e'
|
|
38
43
|
|
|
39
44
|
|
|
40
45
|
#endif /* PG_STATISTIC_EXT_D_H */
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "transform" system catalog (pg_transform)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_transform.h
|
|
@@ -29,10 +29,10 @@
|
|
|
29
29
|
CATALOG(pg_transform,3576,TransformRelationId)
|
|
30
30
|
{
|
|
31
31
|
Oid oid; /* oid */
|
|
32
|
-
Oid trftype;
|
|
33
|
-
Oid trflang;
|
|
34
|
-
regproc trffromsql;
|
|
35
|
-
regproc trftosql;
|
|
32
|
+
Oid trftype BKI_LOOKUP(pg_type);
|
|
33
|
+
Oid trflang BKI_LOOKUP(pg_language);
|
|
34
|
+
regproc trffromsql BKI_LOOKUP_OPT(pg_proc);
|
|
35
|
+
regproc trftosql BKI_LOOKUP_OPT(pg_proc);
|
|
36
36
|
} FormData_pg_transform;
|
|
37
37
|
|
|
38
38
|
/* ----------------
|
|
@@ -42,4 +42,7 @@ CATALOG(pg_transform,3576,TransformRelationId)
|
|
|
42
42
|
*/
|
|
43
43
|
typedef FormData_pg_transform *Form_pg_transform;
|
|
44
44
|
|
|
45
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_transform_oid_index, 3574, TransformOidIndexId, on pg_transform using btree(oid oid_ops));
|
|
46
|
+
DECLARE_UNIQUE_INDEX(pg_transform_type_lang_index, 3575, TransformTypeLangIndexId, on pg_transform using btree(trftype oid_ops, trflang oid_ops));
|
|
47
|
+
|
|
45
48
|
#endif /* PG_TRANSFORM_H */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_transform_d.h
|
|
4
4
|
* Macro definitions for pg_transform
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
#define PG_TRANSFORM_D_H
|
|
20
20
|
|
|
21
21
|
#define TransformRelationId 3576
|
|
22
|
+
#define TransformOidIndexId 3574
|
|
23
|
+
#define TransformTypeLangIndexId 3575
|
|
22
24
|
|
|
23
25
|
#define Anum_pg_transform_oid 1
|
|
24
26
|
#define Anum_pg_transform_trftype 2
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "trigger" system catalog (pg_trigger)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_trigger.h
|
|
@@ -34,18 +34,25 @@
|
|
|
34
34
|
CATALOG(pg_trigger,2620,TriggerRelationId)
|
|
35
35
|
{
|
|
36
36
|
Oid oid; /* oid */
|
|
37
|
-
Oid tgrelid;
|
|
38
|
-
|
|
37
|
+
Oid tgrelid BKI_LOOKUP(pg_class); /* relation trigger is
|
|
38
|
+
* attached to */
|
|
39
|
+
Oid tgparentid BKI_LOOKUP_OPT(pg_trigger); /* OID of parent
|
|
40
|
+
* trigger, if any */
|
|
39
41
|
NameData tgname; /* trigger's name */
|
|
40
|
-
Oid tgfoid;
|
|
42
|
+
Oid tgfoid BKI_LOOKUP(pg_proc); /* OID of function to be called */
|
|
41
43
|
int16 tgtype; /* BEFORE/AFTER/INSTEAD, UPDATE/DELETE/INSERT,
|
|
42
44
|
* ROW/STATEMENT; see below */
|
|
43
45
|
char tgenabled; /* trigger's firing configuration WRT
|
|
44
46
|
* session_replication_role */
|
|
45
47
|
bool tgisinternal; /* trigger is system-generated */
|
|
46
|
-
Oid tgconstrrelid;
|
|
47
|
-
|
|
48
|
-
Oid
|
|
48
|
+
Oid tgconstrrelid BKI_LOOKUP_OPT(pg_class); /* constraint's FROM
|
|
49
|
+
* table, if any */
|
|
50
|
+
Oid tgconstrindid BKI_LOOKUP_OPT(pg_class); /* constraint's
|
|
51
|
+
* supporting index, if
|
|
52
|
+
* any */
|
|
53
|
+
Oid tgconstraint BKI_LOOKUP_OPT(pg_constraint); /* associated
|
|
54
|
+
* pg_constraint entry,
|
|
55
|
+
* if any */
|
|
49
56
|
bool tgdeferrable; /* constraint trigger is deferrable */
|
|
50
57
|
bool tginitdeferred; /* constraint trigger is deferred initially */
|
|
51
58
|
int16 tgnargs; /* # of extra arguments in tgargs */
|
|
@@ -54,7 +61,8 @@ CATALOG(pg_trigger,2620,TriggerRelationId)
|
|
|
54
61
|
* Variable-length fields start here, but we allow direct access to
|
|
55
62
|
* tgattr. Note: tgattr and tgargs must not be null.
|
|
56
63
|
*/
|
|
57
|
-
int2vector tgattr;
|
|
64
|
+
int2vector tgattr BKI_FORCE_NOT_NULL; /* column numbers, if trigger is
|
|
65
|
+
* on columns */
|
|
58
66
|
|
|
59
67
|
#ifdef CATALOG_VARLEN
|
|
60
68
|
bytea tgargs BKI_FORCE_NOT_NULL; /* first\000second\000tgnargs\000 */
|
|
@@ -71,6 +79,14 @@ CATALOG(pg_trigger,2620,TriggerRelationId)
|
|
|
71
79
|
*/
|
|
72
80
|
typedef FormData_pg_trigger *Form_pg_trigger;
|
|
73
81
|
|
|
82
|
+
DECLARE_TOAST(pg_trigger, 2336, 2337);
|
|
83
|
+
|
|
84
|
+
DECLARE_INDEX(pg_trigger_tgconstraint_index, 2699, TriggerConstraintIndexId, on pg_trigger using btree(tgconstraint oid_ops));
|
|
85
|
+
DECLARE_UNIQUE_INDEX(pg_trigger_tgrelid_tgname_index, 2701, TriggerRelidNameIndexId, on pg_trigger using btree(tgrelid oid_ops, tgname name_ops));
|
|
86
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_trigger_oid_index, 2702, TriggerOidIndexId, on pg_trigger using btree(oid oid_ops));
|
|
87
|
+
|
|
88
|
+
DECLARE_ARRAY_FOREIGN_KEY((tgrelid, tgattr), pg_attribute, (attrelid, attnum));
|
|
89
|
+
|
|
74
90
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
75
91
|
|
|
76
92
|
/* Bits within tgtype */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_trigger_d.h
|
|
4
4
|
* Macro definitions for pg_trigger
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,9 @@
|
|
|
19
19
|
#define PG_TRIGGER_D_H
|
|
20
20
|
|
|
21
21
|
#define TriggerRelationId 2620
|
|
22
|
+
#define TriggerConstraintIndexId 2699
|
|
23
|
+
#define TriggerRelidNameIndexId 2701
|
|
24
|
+
#define TriggerOidIndexId 2702
|
|
22
25
|
|
|
23
26
|
#define Anum_pg_trigger_oid 1
|
|
24
27
|
#define Anum_pg_trigger_tgrelid 2
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* (pg_ts_config)
|
|
6
6
|
*
|
|
7
7
|
*
|
|
8
|
-
* Portions Copyright (c) 1996-
|
|
8
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
9
9
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
10
10
|
*
|
|
11
11
|
* src/include/catalog/pg_ts_config.h
|
|
@@ -36,10 +36,10 @@ CATALOG(pg_ts_config,3602,TSConfigRelationId)
|
|
|
36
36
|
NameData cfgname;
|
|
37
37
|
|
|
38
38
|
/* name space */
|
|
39
|
-
Oid cfgnamespace BKI_DEFAULT(
|
|
39
|
+
Oid cfgnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
40
40
|
|
|
41
41
|
/* owner */
|
|
42
|
-
Oid cfgowner BKI_DEFAULT(
|
|
42
|
+
Oid cfgowner BKI_DEFAULT(POSTGRES) BKI_LOOKUP(pg_authid);
|
|
43
43
|
|
|
44
44
|
/* OID of parser */
|
|
45
45
|
Oid cfgparser BKI_LOOKUP(pg_ts_parser);
|
|
@@ -47,4 +47,7 @@ CATALOG(pg_ts_config,3602,TSConfigRelationId)
|
|
|
47
47
|
|
|
48
48
|
typedef FormData_pg_ts_config *Form_pg_ts_config;
|
|
49
49
|
|
|
50
|
+
DECLARE_UNIQUE_INDEX(pg_ts_config_cfgname_index, 3608, TSConfigNameNspIndexId, on pg_ts_config using btree(cfgname name_ops, cfgnamespace oid_ops));
|
|
51
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_ts_config_oid_index, 3712, TSConfigOidIndexId, on pg_ts_config using btree(oid oid_ops));
|
|
52
|
+
|
|
50
53
|
#endif /* PG_TS_CONFIG_H */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_ts_config_d.h
|
|
4
4
|
* Macro definitions for pg_ts_config
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
#define PG_TS_CONFIG_D_H
|
|
20
20
|
|
|
21
21
|
#define TSConfigRelationId 3602
|
|
22
|
+
#define TSConfigNameNspIndexId 3608
|
|
23
|
+
#define TSConfigOidIndexId 3712
|
|
22
24
|
|
|
23
25
|
#define Anum_pg_ts_config_oid 1
|
|
24
26
|
#define Anum_pg_ts_config_cfgname 2
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "text search dictionary" system catalog (pg_ts_dict)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_ts_dict.h
|
|
@@ -35,10 +35,10 @@ CATALOG(pg_ts_dict,3600,TSDictionaryRelationId)
|
|
|
35
35
|
NameData dictname;
|
|
36
36
|
|
|
37
37
|
/* name space */
|
|
38
|
-
Oid dictnamespace BKI_DEFAULT(
|
|
38
|
+
Oid dictnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
39
39
|
|
|
40
40
|
/* owner */
|
|
41
|
-
Oid dictowner BKI_DEFAULT(
|
|
41
|
+
Oid dictowner BKI_DEFAULT(POSTGRES) BKI_LOOKUP(pg_authid);
|
|
42
42
|
|
|
43
43
|
/* dictionary's template */
|
|
44
44
|
Oid dicttemplate BKI_LOOKUP(pg_ts_template);
|
|
@@ -51,4 +51,9 @@ CATALOG(pg_ts_dict,3600,TSDictionaryRelationId)
|
|
|
51
51
|
|
|
52
52
|
typedef FormData_pg_ts_dict *Form_pg_ts_dict;
|
|
53
53
|
|
|
54
|
+
DECLARE_TOAST(pg_ts_dict, 4169, 4170);
|
|
55
|
+
|
|
56
|
+
DECLARE_UNIQUE_INDEX(pg_ts_dict_dictname_index, 3604, TSDictionaryNameNspIndexId, on pg_ts_dict using btree(dictname name_ops, dictnamespace oid_ops));
|
|
57
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_ts_dict_oid_index, 3605, TSDictionaryOidIndexId, on pg_ts_dict using btree(oid oid_ops));
|
|
58
|
+
|
|
54
59
|
#endif /* PG_TS_DICT_H */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_ts_dict_d.h
|
|
4
4
|
* Macro definitions for pg_ts_dict
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
#define PG_TS_DICT_D_H
|
|
20
20
|
|
|
21
21
|
#define TSDictionaryRelationId 3600
|
|
22
|
+
#define TSDictionaryNameNspIndexId 3604
|
|
23
|
+
#define TSDictionaryOidIndexId 3605
|
|
22
24
|
|
|
23
25
|
#define Anum_pg_ts_dict_oid 1
|
|
24
26
|
#define Anum_pg_ts_dict_dictname 2
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "text search parser" system catalog (pg_ts_parser)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_ts_parser.h
|
|
@@ -34,7 +34,7 @@ CATALOG(pg_ts_parser,3601,TSParserRelationId)
|
|
|
34
34
|
NameData prsname;
|
|
35
35
|
|
|
36
36
|
/* name space */
|
|
37
|
-
Oid prsnamespace BKI_DEFAULT(
|
|
37
|
+
Oid prsnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
38
38
|
|
|
39
39
|
/* init parsing session */
|
|
40
40
|
regproc prsstart BKI_LOOKUP(pg_proc);
|
|
@@ -46,7 +46,7 @@ CATALOG(pg_ts_parser,3601,TSParserRelationId)
|
|
|
46
46
|
regproc prsend BKI_LOOKUP(pg_proc);
|
|
47
47
|
|
|
48
48
|
/* return data for headline creation */
|
|
49
|
-
regproc prsheadline
|
|
49
|
+
regproc prsheadline BKI_LOOKUP_OPT(pg_proc);
|
|
50
50
|
|
|
51
51
|
/* return descriptions of lexeme's types */
|
|
52
52
|
regproc prslextype BKI_LOOKUP(pg_proc);
|
|
@@ -54,4 +54,7 @@ CATALOG(pg_ts_parser,3601,TSParserRelationId)
|
|
|
54
54
|
|
|
55
55
|
typedef FormData_pg_ts_parser *Form_pg_ts_parser;
|
|
56
56
|
|
|
57
|
+
DECLARE_UNIQUE_INDEX(pg_ts_parser_prsname_index, 3606, TSParserNameNspIndexId, on pg_ts_parser using btree(prsname name_ops, prsnamespace oid_ops));
|
|
58
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_ts_parser_oid_index, 3607, TSParserOidIndexId, on pg_ts_parser using btree(oid oid_ops));
|
|
59
|
+
|
|
57
60
|
#endif /* PG_TS_PARSER_H */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_ts_parser_d.h
|
|
4
4
|
* Macro definitions for pg_ts_parser
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
#define PG_TS_PARSER_D_H
|
|
20
20
|
|
|
21
21
|
#define TSParserRelationId 3601
|
|
22
|
+
#define TSParserNameNspIndexId 3606
|
|
23
|
+
#define TSParserOidIndexId 3607
|
|
22
24
|
|
|
23
25
|
#define Anum_pg_ts_parser_oid 1
|
|
24
26
|
#define Anum_pg_ts_parser_prsname 2
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "text search template" system catalog (pg_ts_template)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_ts_template.h
|
|
@@ -34,10 +34,10 @@ CATALOG(pg_ts_template,3764,TSTemplateRelationId)
|
|
|
34
34
|
NameData tmplname;
|
|
35
35
|
|
|
36
36
|
/* name space */
|
|
37
|
-
Oid tmplnamespace BKI_DEFAULT(
|
|
37
|
+
Oid tmplnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
38
38
|
|
|
39
39
|
/* initialization method of dict (may be 0) */
|
|
40
|
-
regproc tmplinit
|
|
40
|
+
regproc tmplinit BKI_LOOKUP_OPT(pg_proc);
|
|
41
41
|
|
|
42
42
|
/* base method of dictionary */
|
|
43
43
|
regproc tmpllexize BKI_LOOKUP(pg_proc);
|
|
@@ -45,4 +45,7 @@ CATALOG(pg_ts_template,3764,TSTemplateRelationId)
|
|
|
45
45
|
|
|
46
46
|
typedef FormData_pg_ts_template *Form_pg_ts_template;
|
|
47
47
|
|
|
48
|
+
DECLARE_UNIQUE_INDEX(pg_ts_template_tmplname_index, 3766, TSTemplateNameNspIndexId, on pg_ts_template using btree(tmplname name_ops, tmplnamespace oid_ops));
|
|
49
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_ts_template_oid_index, 3767, TSTemplateOidIndexId, on pg_ts_template using btree(oid oid_ops));
|
|
50
|
+
|
|
48
51
|
#endif /* PG_TS_TEMPLATE_H */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_ts_template_d.h
|
|
4
4
|
* Macro definitions for pg_ts_template
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
#define PG_TS_TEMPLATE_D_H
|
|
20
20
|
|
|
21
21
|
#define TSTemplateRelationId 3764
|
|
22
|
+
#define TSTemplateNameNspIndexId 3766
|
|
23
|
+
#define TSTemplateOidIndexId 3767
|
|
22
24
|
|
|
23
25
|
#define Anum_pg_ts_template_oid 1
|
|
24
26
|
#define Anum_pg_ts_template_tmplname 2
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "type" system catalog (pg_type)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_type.h
|
|
@@ -41,10 +41,10 @@ CATALOG(pg_type,1247,TypeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71,TypeRelati
|
|
|
41
41
|
NameData typname;
|
|
42
42
|
|
|
43
43
|
/* OID of namespace containing this type */
|
|
44
|
-
Oid typnamespace BKI_DEFAULT(
|
|
44
|
+
Oid typnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
45
45
|
|
|
46
46
|
/* type owner */
|
|
47
|
-
Oid typowner BKI_DEFAULT(
|
|
47
|
+
Oid typowner BKI_DEFAULT(POSTGRES) BKI_LOOKUP(pg_authid);
|
|
48
48
|
|
|
49
49
|
/*
|
|
50
50
|
* For a fixed-size type, typlen is the number of bytes we use to
|
|
@@ -98,26 +98,32 @@ CATALOG(pg_type,1247,TypeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71,TypeRelati
|
|
|
98
98
|
char typdelim BKI_DEFAULT(',');
|
|
99
99
|
|
|
100
100
|
/* associated pg_class OID if a composite type, else 0 */
|
|
101
|
-
Oid typrelid BKI_DEFAULT(0) BKI_ARRAY_DEFAULT(0)
|
|
101
|
+
Oid typrelid BKI_DEFAULT(0) BKI_ARRAY_DEFAULT(0) BKI_LOOKUP_OPT(pg_class);
|
|
102
102
|
|
|
103
103
|
/*
|
|
104
|
-
* If
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
* typelem
|
|
104
|
+
* Type-specific subscripting handler. If typsubscript is 0, it means
|
|
105
|
+
* that this type doesn't support subscripting. Note that various parts
|
|
106
|
+
* of the system deem types to be "true" array types only if their
|
|
107
|
+
* typsubscript is array_subscript_handler.
|
|
108
|
+
*/
|
|
109
|
+
regproc typsubscript BKI_DEFAULT(-) BKI_ARRAY_DEFAULT(array_subscript_handler) BKI_LOOKUP_OPT(pg_proc);
|
|
110
|
+
|
|
111
|
+
/*
|
|
112
|
+
* If typelem is not 0 then it identifies another row in pg_type, defining
|
|
113
|
+
* the type yielded by subscripting. This should be 0 if typsubscript is
|
|
114
|
+
* 0. However, it can be 0 when typsubscript isn't 0, if the handler
|
|
115
|
+
* doesn't need typelem to determine the subscripting result type. Note
|
|
116
|
+
* that a typelem dependency is considered to imply physical containment
|
|
117
|
+
* of the element type in this type; so DDL changes on the element type
|
|
118
|
+
* might be restricted by the presence of this type.
|
|
113
119
|
*/
|
|
114
|
-
Oid typelem BKI_DEFAULT(0)
|
|
120
|
+
Oid typelem BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_type);
|
|
115
121
|
|
|
116
122
|
/*
|
|
117
123
|
* If there is a "true" array type having this type as element type,
|
|
118
124
|
* typarray links to it. Zero if no associated "true" array type.
|
|
119
125
|
*/
|
|
120
|
-
Oid typarray BKI_DEFAULT(0) BKI_ARRAY_DEFAULT(0)
|
|
126
|
+
Oid typarray BKI_DEFAULT(0) BKI_ARRAY_DEFAULT(0) BKI_LOOKUP_OPT(pg_type);
|
|
121
127
|
|
|
122
128
|
/*
|
|
123
129
|
* I/O conversion procedures for the datatype.
|
|
@@ -128,19 +134,19 @@ CATALOG(pg_type,1247,TypeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71,TypeRelati
|
|
|
128
134
|
regproc typoutput BKI_ARRAY_DEFAULT(array_out) BKI_LOOKUP(pg_proc);
|
|
129
135
|
|
|
130
136
|
/* binary format (optional) */
|
|
131
|
-
regproc typreceive BKI_ARRAY_DEFAULT(array_recv)
|
|
132
|
-
regproc typsend BKI_ARRAY_DEFAULT(array_send)
|
|
137
|
+
regproc typreceive BKI_ARRAY_DEFAULT(array_recv) BKI_LOOKUP_OPT(pg_proc);
|
|
138
|
+
regproc typsend BKI_ARRAY_DEFAULT(array_send) BKI_LOOKUP_OPT(pg_proc);
|
|
133
139
|
|
|
134
140
|
/*
|
|
135
141
|
* I/O functions for optional type modifiers.
|
|
136
142
|
*/
|
|
137
|
-
regproc typmodin BKI_DEFAULT(-)
|
|
138
|
-
regproc typmodout BKI_DEFAULT(-)
|
|
143
|
+
regproc typmodin BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
144
|
+
regproc typmodout BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
139
145
|
|
|
140
146
|
/*
|
|
141
147
|
* Custom ANALYZE procedure for the datatype (0 selects the default).
|
|
142
148
|
*/
|
|
143
|
-
regproc typanalyze BKI_DEFAULT(-) BKI_ARRAY_DEFAULT(array_typanalyze)
|
|
149
|
+
regproc typanalyze BKI_DEFAULT(-) BKI_ARRAY_DEFAULT(array_typanalyze) BKI_LOOKUP_OPT(pg_proc);
|
|
144
150
|
|
|
145
151
|
/* ----------------
|
|
146
152
|
* typalign is the alignment required when storing a value of this
|
|
@@ -199,7 +205,7 @@ CATALOG(pg_type,1247,TypeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71,TypeRelati
|
|
|
199
205
|
* Domains use typbasetype to show the base (or domain) type that the
|
|
200
206
|
* domain is based on. Zero if the type is not a domain.
|
|
201
207
|
*/
|
|
202
|
-
Oid typbasetype BKI_DEFAULT(0);
|
|
208
|
+
Oid typbasetype BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_type);
|
|
203
209
|
|
|
204
210
|
/*
|
|
205
211
|
* Domains use typtypmod to record the typmod to be applied to their base
|
|
@@ -219,7 +225,7 @@ CATALOG(pg_type,1247,TypeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71,TypeRelati
|
|
|
219
225
|
* DEFAULT_COLLATION_OID) for collatable base types, possibly some other
|
|
220
226
|
* OID for domains over collatable types
|
|
221
227
|
*/
|
|
222
|
-
Oid typcollation BKI_DEFAULT(0)
|
|
228
|
+
Oid typcollation BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_collation);
|
|
223
229
|
|
|
224
230
|
#ifdef CATALOG_VARLEN /* variable-length fields start here */
|
|
225
231
|
|
|
@@ -254,6 +260,11 @@ CATALOG(pg_type,1247,TypeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71,TypeRelati
|
|
|
254
260
|
*/
|
|
255
261
|
typedef FormData_pg_type *Form_pg_type;
|
|
256
262
|
|
|
263
|
+
DECLARE_TOAST(pg_type, 4171, 4172);
|
|
264
|
+
|
|
265
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_type_oid_index, 2703, TypeOidIndexId, on pg_type using btree(oid oid_ops));
|
|
266
|
+
DECLARE_UNIQUE_INDEX(pg_type_typname_nsp_index, 2704, TypeNameNspIndexId, on pg_type using btree(typname name_ops, typnamespace oid_ops));
|
|
267
|
+
|
|
257
268
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
258
269
|
|
|
259
270
|
/*
|
|
@@ -263,6 +274,7 @@ typedef FormData_pg_type *Form_pg_type;
|
|
|
263
274
|
#define TYPTYPE_COMPOSITE 'c' /* composite (e.g., table's rowtype) */
|
|
264
275
|
#define TYPTYPE_DOMAIN 'd' /* domain over another type */
|
|
265
276
|
#define TYPTYPE_ENUM 'e' /* enumerated type */
|
|
277
|
+
#define TYPTYPE_MULTIRANGE 'm' /* multirange type */
|
|
266
278
|
#define TYPTYPE_PSEUDO 'p' /* pseudo-type */
|
|
267
279
|
#define TYPTYPE_RANGE 'r' /* range type */
|
|
268
280
|
|
|
@@ -282,6 +294,7 @@ typedef FormData_pg_type *Form_pg_type;
|
|
|
282
294
|
#define TYPCATEGORY_USER 'U'
|
|
283
295
|
#define TYPCATEGORY_BITSTRING 'V' /* er ... "varbit"? */
|
|
284
296
|
#define TYPCATEGORY_UNKNOWN 'X'
|
|
297
|
+
#define TYPCATEGORY_INTERNAL 'Z'
|
|
285
298
|
|
|
286
299
|
#define TYPALIGN_CHAR 'c' /* char alignment (i.e. unaligned) */
|
|
287
300
|
#define TYPALIGN_SHORT 's' /* short alignment (typically 2 bytes) */
|
|
@@ -304,13 +317,27 @@ typedef FormData_pg_type *Form_pg_type;
|
|
|
304
317
|
(typid) == ANYARRAYOID || \
|
|
305
318
|
(typid) == ANYNONARRAYOID || \
|
|
306
319
|
(typid) == ANYENUMOID || \
|
|
307
|
-
(typid) == ANYRANGEOID
|
|
320
|
+
(typid) == ANYRANGEOID || \
|
|
321
|
+
(typid) == ANYMULTIRANGEOID)
|
|
308
322
|
|
|
309
323
|
#define IsPolymorphicTypeFamily2(typid) \
|
|
310
324
|
((typid) == ANYCOMPATIBLEOID || \
|
|
311
325
|
(typid) == ANYCOMPATIBLEARRAYOID || \
|
|
312
326
|
(typid) == ANYCOMPATIBLENONARRAYOID || \
|
|
313
|
-
(typid) == ANYCOMPATIBLERANGEOID
|
|
327
|
+
(typid) == ANYCOMPATIBLERANGEOID || \
|
|
328
|
+
(typid) == ANYCOMPATIBLEMULTIRANGEOID)
|
|
329
|
+
|
|
330
|
+
/* Is this a "true" array type? (Requires fmgroids.h) */
|
|
331
|
+
#define IsTrueArrayType(typeForm) \
|
|
332
|
+
(OidIsValid((typeForm)->typelem) && \
|
|
333
|
+
(typeForm)->typsubscript == F_ARRAY_SUBSCRIPT_HANDLER)
|
|
334
|
+
|
|
335
|
+
/*
|
|
336
|
+
* Backwards compatibility for ancient random spellings of pg_type OID macros.
|
|
337
|
+
* Don't use these names in new code.
|
|
338
|
+
*/
|
|
339
|
+
#define CASHOID MONEYOID
|
|
340
|
+
#define LSNOID PG_LSNOID
|
|
314
341
|
|
|
315
342
|
#endif /* EXPOSE_TO_CLIENT_CODE */
|
|
316
343
|
|
|
@@ -337,6 +364,7 @@ extern ObjectAddress TypeCreate(Oid newTypeOid,
|
|
|
337
364
|
Oid typmodinProcedure,
|
|
338
365
|
Oid typmodoutProcedure,
|
|
339
366
|
Oid analyzeProcedure,
|
|
367
|
+
Oid subscriptProcedure,
|
|
340
368
|
Oid elementType,
|
|
341
369
|
bool isImplicitArray,
|
|
342
370
|
Oid arrayType,
|
|
@@ -370,4 +398,7 @@ extern char *makeArrayTypeName(const char *typeName, Oid typeNamespace);
|
|
|
370
398
|
extern bool moveArrayTypeName(Oid typeOid, const char *typeName,
|
|
371
399
|
Oid typeNamespace);
|
|
372
400
|
|
|
401
|
+
extern char *makeMultirangeTypeName(const char *rangeTypeName,
|
|
402
|
+
Oid typeNamespace);
|
|
403
|
+
|
|
373
404
|
#endif /* PG_TYPE_H */
|