pg_query 2.2.0 → 6.1.0
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 +86 -0
- data/README.md +57 -31
- data/Rakefile +5 -6
- data/ext/pg_query/ext_symbols_freebsd.sym +1 -0
- data/ext/pg_query/ext_symbols_freebsd_with_ruby_abi_version.sym +2 -0
- data/ext/pg_query/ext_symbols_openbsd.sym +1 -0
- data/ext/pg_query/ext_symbols_openbsd_with_ruby_abi_version.sym +2 -0
- data/ext/pg_query/ext_symbols_with_ruby_abi_version.sym +2 -0
- data/ext/pg_query/extconf.rb +33 -9
- data/ext/pg_query/include/pg_query.h +30 -4
- data/ext/pg_query/include/pg_query_enum_defs.c +839 -290
- data/ext/pg_query/include/pg_query_fingerprint_conds.c +638 -481
- data/ext/pg_query/include/pg_query_fingerprint_defs.c +6786 -4193
- data/ext/pg_query/include/pg_query_outfuncs_conds.c +450 -330
- data/ext/pg_query/include/pg_query_outfuncs_defs.c +1489 -1044
- data/ext/pg_query/include/pg_query_readfuncs_conds.c +157 -118
- data/ext/pg_query/include/pg_query_readfuncs_defs.c +1933 -1410
- data/ext/pg_query/include/postgres/access/amapi.h +303 -0
- data/ext/pg_query/include/postgres/access/attmap.h +54 -0
- data/ext/pg_query/include/postgres/access/attnum.h +64 -0
- data/ext/pg_query/include/postgres/access/brin_internal.h +116 -0
- data/ext/pg_query/include/postgres/access/brin_tuple.h +112 -0
- data/ext/pg_query/include/postgres/access/clog.h +62 -0
- data/ext/pg_query/include/postgres/access/commit_ts.h +73 -0
- data/ext/pg_query/include/postgres/access/detoast.h +82 -0
- data/ext/pg_query/include/postgres/access/genam.h +246 -0
- data/ext/pg_query/include/postgres/access/gin.h +91 -0
- data/ext/pg_query/include/postgres/access/htup.h +89 -0
- data/ext/pg_query/include/postgres/access/htup_details.h +811 -0
- data/ext/pg_query/include/postgres/access/itup.h +170 -0
- data/ext/pg_query/include/postgres/access/parallel.h +81 -0
- data/ext/pg_query/include/postgres/access/printtup.h +35 -0
- data/ext/pg_query/include/postgres/access/relation.h +28 -0
- data/ext/pg_query/include/postgres/access/relscan.h +191 -0
- data/ext/pg_query/include/postgres/access/rmgr.h +62 -0
- data/ext/pg_query/include/postgres/access/rmgrlist.h +49 -0
- data/ext/pg_query/include/postgres/access/sdir.h +67 -0
- data/ext/pg_query/include/postgres/access/skey.h +151 -0
- data/ext/pg_query/include/postgres/access/slru.h +218 -0
- data/ext/pg_query/include/postgres/access/stratnum.h +85 -0
- data/ext/pg_query/include/postgres/access/sysattr.h +29 -0
- data/ext/pg_query/include/postgres/access/table.h +28 -0
- data/ext/pg_query/include/postgres/access/tableam.h +2110 -0
- data/ext/pg_query/include/postgres/access/tidstore.h +50 -0
- data/ext/pg_query/include/postgres/access/toast_compression.h +73 -0
- data/ext/pg_query/include/postgres/access/transam.h +418 -0
- data/ext/pg_query/include/postgres/access/tsmapi.h +82 -0
- data/ext/pg_query/include/postgres/access/tupconvert.h +54 -0
- data/ext/pg_query/include/postgres/access/tupdesc.h +154 -0
- data/ext/pg_query/include/postgres/access/tupmacs.h +207 -0
- data/ext/pg_query/include/postgres/access/twophase.h +65 -0
- data/ext/pg_query/include/postgres/access/xact.h +530 -0
- data/ext/pg_query/include/postgres/access/xlog.h +310 -0
- data/ext/pg_query/include/postgres/access/xlog_internal.h +405 -0
- data/ext/pg_query/include/postgres/access/xlogbackup.h +43 -0
- data/ext/pg_query/include/postgres/access/xlogdefs.h +82 -0
- data/ext/pg_query/include/postgres/access/xlogprefetcher.h +55 -0
- data/ext/pg_query/include/postgres/access/xlogreader.h +444 -0
- data/ext/pg_query/include/postgres/access/xlogrecord.h +248 -0
- data/ext/pg_query/include/postgres/access/xlogrecovery.h +158 -0
- data/ext/pg_query/include/postgres/archive/archive_module.h +67 -0
- data/ext/pg_query/include/postgres/c.h +1374 -0
- data/ext/pg_query/include/postgres/catalog/catalog.h +47 -0
- data/ext/pg_query/include/postgres/catalog/catversion.h +62 -0
- data/ext/pg_query/include/postgres/catalog/dependency.h +228 -0
- data/ext/pg_query/include/postgres/catalog/genbki.h +149 -0
- data/ext/pg_query/include/postgres/catalog/index.h +218 -0
- data/ext/pg_query/include/postgres/catalog/indexing.h +54 -0
- data/ext/pg_query/include/postgres/catalog/namespace.h +189 -0
- data/ext/pg_query/include/postgres/catalog/objectaccess.h +267 -0
- data/ext/pg_query/include/postgres/catalog/objectaddress.h +93 -0
- data/ext/pg_query/include/postgres/catalog/pg_aggregate.h +182 -0
- data/ext/pg_query/include/postgres/catalog/pg_aggregate_d.h +78 -0
- data/ext/pg_query/include/postgres/catalog/pg_am.h +66 -0
- data/ext/pg_query/include/postgres/catalog/pg_am_d.h +47 -0
- data/ext/pg_query/include/postgres/catalog/pg_attribute.h +240 -0
- data/ext/pg_query/include/postgres/catalog/pg_attribute_d.h +62 -0
- data/ext/pg_query/include/postgres/catalog/pg_authid.h +66 -0
- data/ext/pg_query/include/postgres/catalog/pg_authid_d.h +60 -0
- data/ext/pg_query/include/postgres/catalog/pg_class.h +235 -0
- data/ext/pg_query/include/postgres/catalog/pg_class_d.h +134 -0
- data/ext/pg_query/include/postgres/catalog/pg_collation.h +106 -0
- data/ext/pg_query/include/postgres/catalog/pg_collation_d.h +66 -0
- data/ext/pg_query/include/postgres/catalog/pg_constraint.h +278 -0
- data/ext/pg_query/include/postgres/catalog/pg_constraint_d.h +74 -0
- data/ext/pg_query/include/postgres/catalog/pg_control.h +260 -0
- data/ext/pg_query/include/postgres/catalog/pg_conversion.h +79 -0
- data/ext/pg_query/include/postgres/catalog/pg_conversion_d.h +38 -0
- data/ext/pg_query/include/postgres/catalog/pg_database.h +129 -0
- data/ext/pg_query/include/postgres/catalog/pg_database_d.h +53 -0
- data/ext/pg_query/include/postgres/catalog/pg_depend.h +77 -0
- data/ext/pg_query/include/postgres/catalog/pg_depend_d.h +36 -0
- data/ext/pg_query/include/postgres/catalog/pg_event_trigger.h +60 -0
- data/ext/pg_query/include/postgres/catalog/pg_event_trigger_d.h +36 -0
- data/ext/pg_query/include/postgres/catalog/pg_index.h +92 -0
- data/ext/pg_query/include/postgres/catalog/pg_index_d.h +59 -0
- data/ext/pg_query/include/postgres/catalog/pg_language.h +75 -0
- data/ext/pg_query/include/postgres/catalog/pg_language_d.h +41 -0
- data/ext/pg_query/include/postgres/catalog/pg_namespace.h +67 -0
- data/ext/pg_query/include/postgres/catalog/pg_namespace_d.h +36 -0
- data/ext/pg_query/include/postgres/catalog/pg_opclass.h +91 -0
- data/ext/pg_query/include/postgres/catalog/pg_opclass_d.h +51 -0
- data/ext/pg_query/include/postgres/catalog/pg_operator.h +124 -0
- data/ext/pg_query/include/postgres/catalog/pg_operator_d.h +142 -0
- data/ext/pg_query/include/postgres/catalog/pg_opfamily.h +67 -0
- data/ext/pg_query/include/postgres/catalog/pg_opfamily_d.h +51 -0
- data/ext/pg_query/include/postgres/catalog/pg_partitioned_table.h +76 -0
- data/ext/pg_query/include/postgres/catalog/pg_partitioned_table_d.h +36 -0
- data/ext/pg_query/include/postgres/catalog/pg_proc.h +223 -0
- data/ext/pg_query/include/postgres/catalog/pg_proc_d.h +101 -0
- data/ext/pg_query/include/postgres/catalog/pg_publication.h +161 -0
- data/ext/pg_query/include/postgres/catalog/pg_publication_d.h +38 -0
- data/ext/pg_query/include/postgres/catalog/pg_replication_origin.h +65 -0
- data/ext/pg_query/include/postgres/catalog/pg_replication_origin_d.h +33 -0
- data/ext/pg_query/include/postgres/catalog/pg_statistic.h +288 -0
- data/ext/pg_query/include/postgres/catalog/pg_statistic_d.h +199 -0
- data/ext/pg_query/include/postgres/catalog/pg_statistic_ext.h +91 -0
- data/ext/pg_query/include/postgres/catalog/pg_statistic_ext_d.h +45 -0
- data/ext/pg_query/include/postgres/catalog/pg_transform.h +51 -0
- data/ext/pg_query/include/postgres/catalog/pg_transform_d.h +34 -0
- data/ext/pg_query/include/postgres/catalog/pg_trigger.h +153 -0
- data/ext/pg_query/include/postgres/catalog/pg_trigger_d.h +109 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_config.h +56 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_config_d.h +34 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_dict.h +62 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_dict_d.h +35 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_parser.h +63 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_parser_d.h +37 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_template.h +54 -0
- data/ext/pg_query/include/postgres/catalog/pg_ts_template_d.h +34 -0
- data/ext/pg_query/include/postgres/catalog/pg_type.h +407 -0
- data/ext/pg_query/include/postgres/catalog/pg_type_d.h +324 -0
- data/ext/pg_query/include/postgres/catalog/storage.h +50 -0
- data/ext/pg_query/include/postgres/catalog/syscache_ids.h +104 -0
- data/ext/pg_query/include/postgres/commands/async.h +49 -0
- data/ext/pg_query/include/postgres/commands/dbcommands.h +37 -0
- data/ext/pg_query/include/postgres/commands/defrem.h +161 -0
- data/ext/pg_query/include/postgres/commands/event_trigger.h +97 -0
- data/ext/pg_query/include/postgres/commands/explain.h +145 -0
- data/ext/pg_query/include/postgres/commands/prepare.h +61 -0
- data/ext/pg_query/include/postgres/commands/tablespace.h +69 -0
- data/ext/pg_query/include/postgres/commands/trigger.h +288 -0
- data/ext/pg_query/include/postgres/commands/user.h +43 -0
- data/ext/pg_query/include/postgres/commands/vacuum.h +388 -0
- data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
- data/ext/pg_query/include/postgres/common/file_perm.h +56 -0
- data/ext/pg_query/include/postgres/common/file_utils.h +65 -0
- data/ext/pg_query/include/postgres/common/hashfn.h +119 -0
- data/ext/pg_query/include/postgres/common/hashfn_unstable.h +407 -0
- data/ext/pg_query/include/postgres/common/int.h +512 -0
- data/ext/pg_query/include/postgres/common/keywords.h +29 -0
- data/ext/pg_query/include/postgres/common/kwlookup.h +44 -0
- data/ext/pg_query/include/postgres/common/pg_prng.h +62 -0
- data/ext/pg_query/include/postgres/common/relpath.h +97 -0
- data/ext/pg_query/include/postgres/common/scram-common.h +70 -0
- data/ext/pg_query/include/postgres/common/sha2.h +32 -0
- data/ext/pg_query/include/postgres/common/string.h +44 -0
- data/ext/pg_query/include/postgres/common/unicode_east_asian_fw_table.h +124 -0
- data/ext/pg_query/include/postgres/common/unicode_nonspacing_table.h +326 -0
- data/ext/pg_query/include/postgres/copyfuncs.funcs.c +5261 -0
- data/ext/pg_query/include/postgres/copyfuncs.switch.c +989 -0
- data/ext/pg_query/include/postgres/datatype/timestamp.h +269 -0
- data/ext/pg_query/include/postgres/equalfuncs.funcs.c +3310 -0
- data/ext/pg_query/include/postgres/equalfuncs.switch.c +836 -0
- data/ext/pg_query/include/postgres/executor/execdesc.h +70 -0
- data/ext/pg_query/include/postgres/executor/executor.h +681 -0
- data/ext/pg_query/include/postgres/executor/functions.h +56 -0
- data/ext/pg_query/include/postgres/executor/instrument.h +120 -0
- data/ext/pg_query/include/postgres/executor/spi.h +207 -0
- data/ext/pg_query/include/postgres/executor/tablefunc.h +67 -0
- data/ext/pg_query/include/postgres/executor/tuptable.h +523 -0
- data/ext/pg_query/include/postgres/fmgr.h +800 -0
- data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
- data/ext/pg_query/include/postgres/funcapi.h +360 -0
- data/ext/pg_query/include/postgres/gram.h +1168 -0
- data/ext/pg_query/include/postgres/gramparse.h +75 -0
- data/ext/pg_query/include/postgres/jit/jit.h +106 -0
- data/ext/pg_query/include/postgres/kwlist_d.h +1164 -0
- data/ext/pg_query/include/postgres/lib/dshash.h +130 -0
- data/ext/pg_query/include/postgres/lib/ilist.h +1159 -0
- data/ext/pg_query/include/postgres/lib/pairingheap.h +102 -0
- data/ext/pg_query/include/postgres/lib/simplehash.h +1206 -0
- data/ext/pg_query/include/postgres/lib/sort_template.h +445 -0
- data/ext/pg_query/include/postgres/lib/stringinfo.h +243 -0
- data/ext/pg_query/include/postgres/libpq/auth.h +37 -0
- data/ext/pg_query/include/postgres/libpq/crypt.h +47 -0
- data/ext/pg_query/include/postgres/libpq/hba.h +186 -0
- data/ext/pg_query/include/postgres/libpq/libpq-be.h +361 -0
- data/ext/pg_query/include/postgres/libpq/libpq.h +143 -0
- data/ext/pg_query/include/postgres/libpq/pqcomm.h +169 -0
- data/ext/pg_query/include/postgres/libpq/pqformat.h +209 -0
- data/ext/pg_query/include/postgres/libpq/pqsignal.h +54 -0
- data/ext/pg_query/include/postgres/libpq/protocol.h +89 -0
- data/ext/pg_query/include/postgres/libpq/sasl.h +136 -0
- data/ext/pg_query/include/postgres/libpq/scram.h +37 -0
- data/ext/pg_query/include/postgres/mb/pg_wchar.h +793 -0
- data/ext/pg_query/include/postgres/mb/stringinfo_mb.h +24 -0
- data/ext/pg_query/include/postgres/miscadmin.h +527 -0
- data/ext/pg_query/include/postgres/nodes/bitmapset.h +140 -0
- data/ext/pg_query/include/postgres/nodes/execnodes.h +2855 -0
- data/ext/pg_query/include/postgres/nodes/extensible.h +164 -0
- data/ext/pg_query/include/postgres/nodes/lockoptions.h +61 -0
- data/ext/pg_query/include/postgres/nodes/makefuncs.h +127 -0
- data/ext/pg_query/include/postgres/nodes/memnodes.h +152 -0
- data/ext/pg_query/include/postgres/nodes/miscnodes.h +56 -0
- data/ext/pg_query/include/postgres/nodes/nodeFuncs.h +222 -0
- data/ext/pg_query/include/postgres/nodes/nodes.h +435 -0
- data/ext/pg_query/include/postgres/nodes/nodetags.h +491 -0
- data/ext/pg_query/include/postgres/nodes/params.h +170 -0
- data/ext/pg_query/include/postgres/nodes/parsenodes.h +4233 -0
- data/ext/pg_query/include/postgres/nodes/pathnodes.h +3438 -0
- data/ext/pg_query/include/postgres/nodes/pg_list.h +686 -0
- data/ext/pg_query/include/postgres/nodes/plannodes.h +1593 -0
- data/ext/pg_query/include/postgres/nodes/primnodes.h +2339 -0
- data/ext/pg_query/include/postgres/nodes/print.h +34 -0
- data/ext/pg_query/include/postgres/nodes/queryjumble.h +86 -0
- data/ext/pg_query/include/postgres/nodes/replnodes.h +132 -0
- data/ext/pg_query/include/postgres/nodes/supportnodes.h +346 -0
- data/ext/pg_query/include/postgres/nodes/tidbitmap.h +75 -0
- data/ext/pg_query/include/postgres/nodes/value.h +90 -0
- data/ext/pg_query/include/postgres/optimizer/cost.h +216 -0
- data/ext/pg_query/include/postgres/optimizer/geqo.h +90 -0
- data/ext/pg_query/include/postgres/optimizer/geqo_gene.h +45 -0
- data/ext/pg_query/include/postgres/optimizer/optimizer.h +205 -0
- data/ext/pg_query/include/postgres/optimizer/paths.h +271 -0
- data/ext/pg_query/include/postgres/optimizer/planmain.h +123 -0
- data/ext/pg_query/include/postgres/parser/analyze.h +66 -0
- data/ext/pg_query/include/postgres/parser/kwlist.h +518 -0
- data/ext/pg_query/include/postgres/parser/parse_agg.h +65 -0
- data/ext/pg_query/include/postgres/parser/parse_coerce.h +105 -0
- data/ext/pg_query/include/postgres/parser/parse_expr.h +25 -0
- data/ext/pg_query/include/postgres/parser/parse_func.h +74 -0
- data/ext/pg_query/include/postgres/parser/parse_node.h +358 -0
- data/ext/pg_query/include/postgres/parser/parse_oper.h +68 -0
- data/ext/pg_query/include/postgres/parser/parse_relation.h +129 -0
- data/ext/pg_query/include/postgres/parser/parse_type.h +61 -0
- data/ext/pg_query/include/postgres/parser/parser.h +68 -0
- data/ext/pg_query/include/postgres/parser/parsetree.h +61 -0
- data/ext/pg_query/include/postgres/parser/scanner.h +152 -0
- data/ext/pg_query/include/postgres/parser/scansup.h +27 -0
- data/ext/pg_query/include/postgres/partitioning/partdefs.h +26 -0
- data/ext/pg_query/include/postgres/pg_config.h +985 -0
- data/ext/pg_query/include/postgres/pg_config_manual.h +385 -0
- data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
- data/ext/pg_query/include/postgres/pg_getopt.h +56 -0
- data/ext/pg_query/include/postgres/pg_trace.h +17 -0
- data/ext/pg_query/include/postgres/pgstat.h +780 -0
- data/ext/pg_query/include/postgres/pgtime.h +94 -0
- data/ext/pg_query/include/postgres/pl_gram.h +385 -0
- data/ext/pg_query/include/postgres/pl_reserved_kwlist.h +52 -0
- data/ext/pg_query/include/postgres/pl_reserved_kwlist_d.h +114 -0
- data/ext/pg_query/include/postgres/pl_unreserved_kwlist.h +112 -0
- data/ext/pg_query/include/postgres/pl_unreserved_kwlist_d.h +246 -0
- data/ext/pg_query/include/postgres/plerrcodes.h +998 -0
- data/ext/pg_query/include/postgres/plpgsql.h +1342 -0
- data/ext/pg_query/include/postgres/port/atomics/arch-arm.h +32 -0
- data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +17 -0
- data/ext/pg_query/include/postgres/port/atomics/arch-ppc.h +256 -0
- data/ext/pg_query/include/postgres/port/atomics/arch-x86.h +254 -0
- data/ext/pg_query/include/postgres/port/atomics/fallback.h +170 -0
- data/ext/pg_query/include/postgres/port/atomics/generic-gcc.h +323 -0
- data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +119 -0
- data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +121 -0
- data/ext/pg_query/include/postgres/port/atomics/generic.h +437 -0
- data/ext/pg_query/include/postgres/port/atomics.h +606 -0
- data/ext/pg_query/include/postgres/port/pg_bitutils.h +421 -0
- data/ext/pg_query/include/postgres/port/pg_bswap.h +161 -0
- data/ext/pg_query/include/postgres/port/pg_crc32c.h +110 -0
- data/ext/pg_query/include/postgres/port/pg_iovec.h +117 -0
- data/ext/pg_query/include/postgres/port/simd.h +422 -0
- data/ext/pg_query/include/postgres/port/win32/arpa/inet.h +3 -0
- data/ext/pg_query/include/postgres/port/win32/dlfcn.h +1 -0
- data/ext/pg_query/include/postgres/port/win32/grp.h +1 -0
- data/ext/pg_query/include/postgres/port/win32/netdb.h +7 -0
- data/ext/pg_query/include/postgres/port/win32/netinet/in.h +3 -0
- data/ext/pg_query/include/postgres/port/win32/netinet/tcp.h +7 -0
- data/ext/pg_query/include/postgres/port/win32/pwd.h +3 -0
- data/ext/pg_query/include/postgres/port/win32/sys/resource.h +20 -0
- data/ext/pg_query/include/postgres/port/win32/sys/select.h +3 -0
- data/ext/pg_query/include/postgres/port/win32/sys/socket.h +34 -0
- data/ext/pg_query/include/postgres/port/win32/sys/un.h +17 -0
- data/ext/pg_query/include/postgres/port/win32/sys/wait.h +3 -0
- data/ext/pg_query/include/postgres/port/win32.h +59 -0
- data/ext/pg_query/include/postgres/port/win32_msvc/dirent.h +34 -0
- data/ext/pg_query/include/postgres/port/win32_msvc/sys/file.h +1 -0
- data/ext/pg_query/include/postgres/port/win32_msvc/sys/param.h +1 -0
- data/ext/pg_query/include/postgres/port/win32_msvc/sys/time.h +1 -0
- data/ext/pg_query/include/postgres/port/win32_msvc/unistd.h +9 -0
- data/ext/pg_query/include/postgres/port/win32_msvc/utime.h +3 -0
- data/ext/pg_query/include/postgres/port/win32_port.h +582 -0
- data/ext/pg_query/include/postgres/port.h +555 -0
- data/ext/pg_query/include/postgres/portability/instr_time.h +197 -0
- data/ext/pg_query/include/postgres/postgres.h +579 -0
- data/ext/pg_query/include/postgres/postgres_ext.h +73 -0
- data/ext/pg_query/include/postgres/postmaster/autovacuum.h +69 -0
- data/ext/pg_query/include/postgres/postmaster/bgworker.h +164 -0
- data/ext/pg_query/include/postgres/postmaster/bgworker_internals.h +60 -0
- data/ext/pg_query/include/postgres/postmaster/bgwriter.h +45 -0
- data/ext/pg_query/include/postgres/postmaster/interrupt.h +32 -0
- data/ext/pg_query/include/postgres/postmaster/pgarch.h +36 -0
- data/ext/pg_query/include/postgres/postmaster/postmaster.h +101 -0
- data/ext/pg_query/include/postgres/postmaster/startup.h +41 -0
- data/ext/pg_query/include/postgres/postmaster/syslogger.h +101 -0
- data/ext/pg_query/include/postgres/postmaster/walsummarizer.h +35 -0
- data/ext/pg_query/include/postgres/postmaster/walwriter.h +23 -0
- data/ext/pg_query/include/postgres/regex/regex.h +272 -0
- data/ext/pg_query/include/postgres/replication/logicallauncher.h +34 -0
- data/ext/pg_query/include/postgres/replication/logicalproto.h +274 -0
- data/ext/pg_query/include/postgres/replication/logicalworker.h +33 -0
- data/ext/pg_query/include/postgres/replication/origin.h +73 -0
- data/ext/pg_query/include/postgres/replication/reorderbuffer.h +734 -0
- data/ext/pg_query/include/postgres/replication/slot.h +289 -0
- data/ext/pg_query/include/postgres/replication/slotsync.h +38 -0
- data/ext/pg_query/include/postgres/replication/syncrep.h +109 -0
- data/ext/pg_query/include/postgres/replication/walreceiver.h +504 -0
- data/ext/pg_query/include/postgres/replication/walsender.h +76 -0
- data/ext/pg_query/include/postgres/rewrite/prs2lock.h +46 -0
- data/ext/pg_query/include/postgres/rewrite/rewriteHandler.h +41 -0
- data/ext/pg_query/include/postgres/rewrite/rewriteManip.h +96 -0
- data/ext/pg_query/include/postgres/rewrite/rewriteSupport.h +26 -0
- data/ext/pg_query/include/postgres/storage/block.h +108 -0
- data/ext/pg_query/include/postgres/storage/buf.h +46 -0
- data/ext/pg_query/include/postgres/storage/bufmgr.h +411 -0
- data/ext/pg_query/include/postgres/storage/bufpage.h +510 -0
- data/ext/pg_query/include/postgres/storage/condition_variable.h +73 -0
- data/ext/pg_query/include/postgres/storage/dsm.h +61 -0
- data/ext/pg_query/include/postgres/storage/dsm_impl.h +79 -0
- data/ext/pg_query/include/postgres/storage/fd.h +219 -0
- data/ext/pg_query/include/postgres/storage/fileset.h +40 -0
- data/ext/pg_query/include/postgres/storage/ipc.h +87 -0
- data/ext/pg_query/include/postgres/storage/item.h +19 -0
- data/ext/pg_query/include/postgres/storage/itemid.h +184 -0
- data/ext/pg_query/include/postgres/storage/itemptr.h +245 -0
- data/ext/pg_query/include/postgres/storage/large_object.h +100 -0
- data/ext/pg_query/include/postgres/storage/latch.h +196 -0
- data/ext/pg_query/include/postgres/storage/lmgr.h +126 -0
- data/ext/pg_query/include/postgres/storage/lock.h +624 -0
- data/ext/pg_query/include/postgres/storage/lockdefs.h +61 -0
- data/ext/pg_query/include/postgres/storage/lwlock.h +228 -0
- data/ext/pg_query/include/postgres/storage/lwlocknames.h +47 -0
- data/ext/pg_query/include/postgres/storage/off.h +57 -0
- data/ext/pg_query/include/postgres/storage/pg_sema.h +61 -0
- data/ext/pg_query/include/postgres/storage/pg_shmem.h +93 -0
- data/ext/pg_query/include/postgres/storage/pmsignal.h +105 -0
- data/ext/pg_query/include/postgres/storage/predicate.h +83 -0
- data/ext/pg_query/include/postgres/storage/proc.h +488 -0
- data/ext/pg_query/include/postgres/storage/procarray.h +103 -0
- data/ext/pg_query/include/postgres/storage/proclist_types.h +53 -0
- data/ext/pg_query/include/postgres/storage/procnumber.h +43 -0
- data/ext/pg_query/include/postgres/storage/procsignal.h +75 -0
- data/ext/pg_query/include/postgres/storage/read_stream.h +65 -0
- data/ext/pg_query/include/postgres/storage/relfilelocator.h +100 -0
- data/ext/pg_query/include/postgres/storage/s_lock.h +847 -0
- data/ext/pg_query/include/postgres/storage/sharedfileset.h +37 -0
- data/ext/pg_query/include/postgres/storage/shm_mq.h +86 -0
- data/ext/pg_query/include/postgres/storage/shm_toc.h +58 -0
- data/ext/pg_query/include/postgres/storage/shmem.h +59 -0
- data/ext/pg_query/include/postgres/storage/sinval.h +153 -0
- data/ext/pg_query/include/postgres/storage/smgr.h +130 -0
- data/ext/pg_query/include/postgres/storage/spin.h +77 -0
- data/ext/pg_query/include/postgres/storage/standby.h +109 -0
- data/ext/pg_query/include/postgres/storage/standbydefs.h +74 -0
- data/ext/pg_query/include/postgres/storage/sync.h +66 -0
- data/ext/pg_query/include/postgres/tcop/cmdtag.h +62 -0
- data/ext/pg_query/include/postgres/tcop/cmdtaglist.h +219 -0
- data/ext/pg_query/include/postgres/tcop/deparse_utility.h +108 -0
- data/ext/pg_query/include/postgres/tcop/dest.h +148 -0
- data/ext/pg_query/include/postgres/tcop/fastpath.h +20 -0
- data/ext/pg_query/include/postgres/tcop/pquery.h +51 -0
- data/ext/pg_query/include/postgres/tcop/tcopprot.h +98 -0
- data/ext/pg_query/include/postgres/tcop/utility.h +112 -0
- data/ext/pg_query/include/postgres/tsearch/ts_cache.h +96 -0
- data/ext/pg_query/include/postgres/utils/acl.h +290 -0
- data/ext/pg_query/include/postgres/utils/aclchk_internal.h +45 -0
- data/ext/pg_query/include/postgres/utils/array.h +481 -0
- data/ext/pg_query/include/postgres/utils/ascii.h +84 -0
- data/ext/pg_query/include/postgres/utils/backend_progress.h +46 -0
- data/ext/pg_query/include/postgres/utils/backend_status.h +340 -0
- data/ext/pg_query/include/postgres/utils/builtins.h +139 -0
- data/ext/pg_query/include/postgres/utils/bytea.h +28 -0
- data/ext/pg_query/include/postgres/utils/catcache.h +231 -0
- data/ext/pg_query/include/postgres/utils/date.h +118 -0
- data/ext/pg_query/include/postgres/utils/datetime.h +367 -0
- data/ext/pg_query/include/postgres/utils/datum.h +76 -0
- data/ext/pg_query/include/postgres/utils/dsa.h +166 -0
- data/ext/pg_query/include/postgres/utils/elog.h +540 -0
- data/ext/pg_query/include/postgres/utils/errcodes.h +352 -0
- data/ext/pg_query/include/postgres/utils/expandeddatum.h +170 -0
- data/ext/pg_query/include/postgres/utils/expandedrecord.h +241 -0
- data/ext/pg_query/include/postgres/utils/float.h +357 -0
- data/ext/pg_query/include/postgres/utils/fmgroids.h +3347 -0
- data/ext/pg_query/include/postgres/utils/fmgrprotos.h +2904 -0
- data/ext/pg_query/include/postgres/utils/fmgrtab.h +49 -0
- data/ext/pg_query/include/postgres/utils/guc.h +456 -0
- data/ext/pg_query/include/postgres/utils/guc_hooks.h +184 -0
- data/ext/pg_query/include/postgres/utils/guc_tables.h +323 -0
- data/ext/pg_query/include/postgres/utils/hsearch.h +153 -0
- data/ext/pg_query/include/postgres/utils/injection_point.h +44 -0
- data/ext/pg_query/include/postgres/utils/inval.h +68 -0
- data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
- data/ext/pg_query/include/postgres/utils/lsyscache.h +215 -0
- data/ext/pg_query/include/postgres/utils/memdebug.h +82 -0
- data/ext/pg_query/include/postgres/utils/memutils.h +193 -0
- data/ext/pg_query/include/postgres/utils/memutils_internal.h +176 -0
- data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +253 -0
- data/ext/pg_query/include/postgres/utils/numeric.h +110 -0
- data/ext/pg_query/include/postgres/utils/palloc.h +151 -0
- data/ext/pg_query/include/postgres/utils/partcache.h +103 -0
- data/ext/pg_query/include/postgres/utils/pg_locale.h +136 -0
- data/ext/pg_query/include/postgres/utils/pgstat_internal.h +827 -0
- data/ext/pg_query/include/postgres/utils/plancache.h +238 -0
- data/ext/pg_query/include/postgres/utils/portal.h +252 -0
- data/ext/pg_query/include/postgres/utils/probes.h +114 -0
- data/ext/pg_query/include/postgres/utils/ps_status.h +47 -0
- data/ext/pg_query/include/postgres/utils/queryenvironment.h +74 -0
- data/ext/pg_query/include/postgres/utils/regproc.h +39 -0
- data/ext/pg_query/include/postgres/utils/rel.h +711 -0
- data/ext/pg_query/include/postgres/utils/relcache.h +155 -0
- data/ext/pg_query/include/postgres/utils/reltrigger.h +81 -0
- data/ext/pg_query/include/postgres/utils/resowner.h +167 -0
- data/ext/pg_query/include/postgres/utils/ruleutils.h +52 -0
- data/ext/pg_query/include/postgres/utils/sharedtuplestore.h +61 -0
- data/ext/pg_query/include/postgres/utils/snapmgr.h +130 -0
- data/ext/pg_query/include/postgres/utils/snapshot.h +219 -0
- data/ext/pg_query/include/postgres/utils/sortsupport.h +391 -0
- data/ext/pg_query/include/postgres/utils/syscache.h +136 -0
- data/ext/pg_query/include/postgres/utils/timeout.h +96 -0
- data/ext/pg_query/include/postgres/utils/timestamp.h +147 -0
- data/ext/pg_query/include/postgres/utils/tuplesort.h +472 -0
- data/ext/pg_query/include/postgres/utils/tuplestore.h +88 -0
- data/ext/pg_query/include/postgres/utils/typcache.h +210 -0
- data/ext/pg_query/include/postgres/utils/varlena.h +53 -0
- data/ext/pg_query/include/postgres/utils/wait_event.h +108 -0
- data/ext/pg_query/include/postgres/utils/wait_event_types.h +218 -0
- data/ext/pg_query/include/postgres/utils/xml.h +94 -0
- data/ext/pg_query/include/postgres/varatt.h +358 -0
- data/ext/pg_query/include/protobuf/pg_query.pb-c.h +8077 -6217
- data/ext/pg_query/include/protobuf/pg_query.pb.h +132024 -88124
- data/ext/pg_query/pg_query.c +10 -1
- data/ext/pg_query/pg_query.pb-c.c +24028 -17173
- data/ext/pg_query/pg_query_deparse.c +1 -9902
- data/ext/pg_query/pg_query_fingerprint.c +42 -18
- data/ext/pg_query/pg_query_fingerprint.h +1 -1
- data/ext/pg_query/pg_query_internal.h +1 -1
- data/ext/pg_query/pg_query_json_plpgsql.c +1 -25
- data/ext/pg_query/pg_query_normalize.c +44 -3
- data/ext/pg_query/pg_query_outfuncs_json.c +62 -16
- data/ext/pg_query/pg_query_outfuncs_protobuf.c +73 -12
- data/ext/pg_query/pg_query_parse.c +47 -5
- data/ext/pg_query/pg_query_parse_plpgsql.c +19 -18
- data/ext/pg_query/pg_query_readfuncs_protobuf.c +45 -10
- data/ext/pg_query/pg_query_ruby.c +5 -0
- data/ext/pg_query/pg_query_scan.c +4 -3
- data/ext/pg_query/pg_query_split.c +6 -5
- data/ext/pg_query/postgres_deparse.c +11496 -0
- data/ext/pg_query/postgres_deparse.h +9 -0
- data/ext/pg_query/src_backend_catalog_namespace.c +262 -71
- data/ext/pg_query/src_backend_catalog_pg_proc.c +3 -2
- data/ext/pg_query/src_backend_commands_define.c +12 -3
- data/ext/pg_query/src_backend_nodes_bitmapset.c +142 -156
- data/ext/pg_query/src_backend_nodes_copyfuncs.c +100 -5881
- data/ext/pg_query/src_backend_nodes_equalfuncs.c +102 -3831
- data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
- data/ext/pg_query/src_backend_nodes_list.c +89 -18
- data/ext/pg_query/src_backend_nodes_makefuncs.c +138 -4
- data/ext/pg_query/src_backend_nodes_nodeFuncs.c +433 -132
- data/ext/pg_query/src_backend_nodes_value.c +28 -19
- data/ext/pg_query/src_backend_parser_gram.c +45255 -38885
- data/ext/pg_query/src_backend_parser_parser.c +53 -8
- data/ext/pg_query/src_backend_parser_scan.c +6999 -3438
- data/ext/pg_query/src_backend_parser_scansup.c +5 -28
- data/ext/pg_query/src_backend_storage_ipc_ipc.c +13 -4
- data/ext/pg_query/src_backend_tcop_postgres.c +156 -114
- data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +140 -0
- data/ext/pg_query/src_backend_utils_adt_datum.c +14 -2
- 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_numutils.c +488 -0
- data/ext/pg_query/src_backend_utils_adt_ruleutils.c +247 -34
- data/ext/pg_query/src_backend_utils_error_assert.c +17 -18
- data/ext/pg_query/src_backend_utils_error_elog.c +543 -343
- data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +47 -18
- data/ext/pg_query/src_backend_utils_init_globals.c +22 -7
- data/ext/pg_query/src_backend_utils_mb_mbutils.c +84 -148
- data/ext/pg_query/src_backend_utils_misc_guc_tables.c +502 -0
- data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +166 -0
- data/ext/pg_query/src_backend_utils_mmgr_aset.c +708 -499
- data/ext/pg_query/src_backend_utils_mmgr_bump.c +728 -0
- data/ext/pg_query/src_backend_utils_mmgr_generation.c +1115 -0
- data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +710 -218
- data/ext/pg_query/src_backend_utils_mmgr_slab.c +1079 -0
- data/ext/pg_query/src_common_encnames.c +46 -44
- 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 +602 -510
- data/ext/pg_query/src_common_kwlookup.c +1 -1
- data/ext/pg_query/src_common_psprintf.c +3 -3
- data/ext/pg_query/src_common_stringinfo.c +21 -4
- data/ext/pg_query/src_common_wchar.c +754 -178
- data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +143 -24
- data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -18
- data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +1295 -1255
- 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 +20 -2
- data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +60 -60
- data/ext/pg_query/src_port_pg_bitutils.c +283 -54
- data/ext/pg_query/src_port_pgstrcasecmp.c +57 -1
- data/ext/pg_query/src_port_qsort.c +12 -224
- data/ext/pg_query/src_port_snprintf.c +56 -39
- data/ext/pg_query/src_port_strerror.c +9 -21
- data/ext/pg_query/src_port_strlcpy.c +79 -0
- data/lib/pg_query/filter_columns.rb +1 -1
- data/lib/pg_query/fingerprint.rb +10 -9
- data/lib/pg_query/node.rb +18 -13
- data/lib/pg_query/param_refs.rb +3 -3
- data/lib/pg_query/parse.rb +25 -15
- data/lib/pg_query/parse_error.rb +1 -0
- data/lib/pg_query/pg_query_pb.rb +181 -3038
- data/lib/pg_query/scan.rb +1 -0
- data/lib/pg_query/treewalker.rb +55 -8
- data/lib/pg_query/truncate.rb +19 -21
- data/lib/pg_query/version.rb +1 -1
- metadata +447 -436
- data/ext/pg_query/guc-file.c +0 -0
- data/ext/pg_query/include/access/amapi.h +0 -246
- data/ext/pg_query/include/access/attmap.h +0 -52
- data/ext/pg_query/include/access/attnum.h +0 -64
- data/ext/pg_query/include/access/clog.h +0 -61
- data/ext/pg_query/include/access/commit_ts.h +0 -77
- data/ext/pg_query/include/access/detoast.h +0 -92
- data/ext/pg_query/include/access/genam.h +0 -228
- data/ext/pg_query/include/access/gin.h +0 -78
- data/ext/pg_query/include/access/htup.h +0 -89
- data/ext/pg_query/include/access/htup_details.h +0 -819
- data/ext/pg_query/include/access/itup.h +0 -161
- data/ext/pg_query/include/access/parallel.h +0 -82
- data/ext/pg_query/include/access/printtup.h +0 -35
- data/ext/pg_query/include/access/relation.h +0 -28
- data/ext/pg_query/include/access/relscan.h +0 -176
- data/ext/pg_query/include/access/rmgr.h +0 -35
- data/ext/pg_query/include/access/rmgrlist.h +0 -49
- data/ext/pg_query/include/access/sdir.h +0 -58
- data/ext/pg_query/include/access/skey.h +0 -151
- data/ext/pg_query/include/access/stratnum.h +0 -83
- data/ext/pg_query/include/access/sysattr.h +0 -29
- data/ext/pg_query/include/access/table.h +0 -27
- data/ext/pg_query/include/access/tableam.h +0 -1825
- data/ext/pg_query/include/access/transam.h +0 -265
- data/ext/pg_query/include/access/tupconvert.h +0 -51
- data/ext/pg_query/include/access/tupdesc.h +0 -154
- data/ext/pg_query/include/access/tupmacs.h +0 -247
- data/ext/pg_query/include/access/twophase.h +0 -63
- data/ext/pg_query/include/access/xact.h +0 -469
- data/ext/pg_query/include/access/xlog.h +0 -398
- data/ext/pg_query/include/access/xlog_internal.h +0 -339
- data/ext/pg_query/include/access/xlogdefs.h +0 -109
- data/ext/pg_query/include/access/xloginsert.h +0 -64
- data/ext/pg_query/include/access/xlogreader.h +0 -337
- data/ext/pg_query/include/access/xlogrecord.h +0 -227
- data/ext/pg_query/include/bootstrap/bootstrap.h +0 -62
- data/ext/pg_query/include/c.h +0 -1334
- data/ext/pg_query/include/catalog/catalog.h +0 -42
- data/ext/pg_query/include/catalog/catversion.h +0 -58
- data/ext/pg_query/include/catalog/dependency.h +0 -277
- data/ext/pg_query/include/catalog/genbki.h +0 -64
- data/ext/pg_query/include/catalog/index.h +0 -199
- data/ext/pg_query/include/catalog/indexing.h +0 -366
- data/ext/pg_query/include/catalog/namespace.h +0 -188
- data/ext/pg_query/include/catalog/objectaccess.h +0 -197
- data/ext/pg_query/include/catalog/objectaddress.h +0 -84
- data/ext/pg_query/include/catalog/pg_aggregate.h +0 -176
- data/ext/pg_query/include/catalog/pg_aggregate_d.h +0 -77
- data/ext/pg_query/include/catalog/pg_am.h +0 -60
- data/ext/pg_query/include/catalog/pg_am_d.h +0 -45
- data/ext/pg_query/include/catalog/pg_attribute.h +0 -204
- data/ext/pg_query/include/catalog/pg_attribute_d.h +0 -59
- data/ext/pg_query/include/catalog/pg_authid.h +0 -58
- data/ext/pg_query/include/catalog/pg_authid_d.h +0 -49
- data/ext/pg_query/include/catalog/pg_class.h +0 -200
- data/ext/pg_query/include/catalog/pg_class_d.h +0 -103
- data/ext/pg_query/include/catalog/pg_collation.h +0 -73
- data/ext/pg_query/include/catalog/pg_collation_d.h +0 -45
- data/ext/pg_query/include/catalog/pg_constraint.h +0 -247
- data/ext/pg_query/include/catalog/pg_constraint_d.h +0 -67
- data/ext/pg_query/include/catalog/pg_control.h +0 -252
- data/ext/pg_query/include/catalog/pg_conversion.h +0 -72
- data/ext/pg_query/include/catalog/pg_conversion_d.h +0 -35
- data/ext/pg_query/include/catalog/pg_depend.h +0 -73
- data/ext/pg_query/include/catalog/pg_depend_d.h +0 -34
- data/ext/pg_query/include/catalog/pg_event_trigger.h +0 -51
- data/ext/pg_query/include/catalog/pg_event_trigger_d.h +0 -34
- data/ext/pg_query/include/catalog/pg_index.h +0 -80
- data/ext/pg_query/include/catalog/pg_index_d.h +0 -56
- data/ext/pg_query/include/catalog/pg_language.h +0 -67
- data/ext/pg_query/include/catalog/pg_language_d.h +0 -39
- data/ext/pg_query/include/catalog/pg_namespace.h +0 -59
- data/ext/pg_query/include/catalog/pg_namespace_d.h +0 -34
- data/ext/pg_query/include/catalog/pg_opclass.h +0 -85
- data/ext/pg_query/include/catalog/pg_opclass_d.h +0 -49
- data/ext/pg_query/include/catalog/pg_operator.h +0 -104
- data/ext/pg_query/include/catalog/pg_operator_d.h +0 -106
- data/ext/pg_query/include/catalog/pg_opfamily.h +0 -60
- data/ext/pg_query/include/catalog/pg_opfamily_d.h +0 -47
- data/ext/pg_query/include/catalog/pg_partitioned_table.h +0 -63
- data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +0 -35
- data/ext/pg_query/include/catalog/pg_proc.h +0 -211
- data/ext/pg_query/include/catalog/pg_proc_d.h +0 -99
- data/ext/pg_query/include/catalog/pg_publication.h +0 -118
- data/ext/pg_query/include/catalog/pg_publication_d.h +0 -36
- data/ext/pg_query/include/catalog/pg_replication_origin.h +0 -57
- data/ext/pg_query/include/catalog/pg_replication_origin_d.h +0 -29
- data/ext/pg_query/include/catalog/pg_statistic.h +0 -275
- data/ext/pg_query/include/catalog/pg_statistic_d.h +0 -194
- data/ext/pg_query/include/catalog/pg_statistic_ext.h +0 -74
- data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +0 -40
- data/ext/pg_query/include/catalog/pg_transform.h +0 -45
- data/ext/pg_query/include/catalog/pg_transform_d.h +0 -32
- data/ext/pg_query/include/catalog/pg_trigger.h +0 -137
- data/ext/pg_query/include/catalog/pg_trigger_d.h +0 -106
- data/ext/pg_query/include/catalog/pg_ts_config.h +0 -50
- data/ext/pg_query/include/catalog/pg_ts_config_d.h +0 -32
- data/ext/pg_query/include/catalog/pg_ts_dict.h +0 -54
- data/ext/pg_query/include/catalog/pg_ts_dict_d.h +0 -33
- data/ext/pg_query/include/catalog/pg_ts_parser.h +0 -57
- data/ext/pg_query/include/catalog/pg_ts_parser_d.h +0 -35
- data/ext/pg_query/include/catalog/pg_ts_template.h +0 -48
- data/ext/pg_query/include/catalog/pg_ts_template_d.h +0 -32
- data/ext/pg_query/include/catalog/pg_type.h +0 -373
- data/ext/pg_query/include/catalog/pg_type_d.h +0 -285
- data/ext/pg_query/include/catalog/storage.h +0 -48
- data/ext/pg_query/include/commands/async.h +0 -54
- data/ext/pg_query/include/commands/dbcommands.h +0 -35
- data/ext/pg_query/include/commands/defrem.h +0 -173
- data/ext/pg_query/include/commands/event_trigger.h +0 -88
- data/ext/pg_query/include/commands/explain.h +0 -127
- data/ext/pg_query/include/commands/prepare.h +0 -61
- data/ext/pg_query/include/commands/tablespace.h +0 -69
- data/ext/pg_query/include/commands/trigger.h +0 -285
- data/ext/pg_query/include/commands/user.h +0 -37
- data/ext/pg_query/include/commands/vacuum.h +0 -293
- data/ext/pg_query/include/commands/variable.h +0 -38
- data/ext/pg_query/include/common/file_perm.h +0 -56
- data/ext/pg_query/include/common/hashfn.h +0 -104
- data/ext/pg_query/include/common/ip.h +0 -37
- data/ext/pg_query/include/common/keywords.h +0 -33
- data/ext/pg_query/include/common/kwlookup.h +0 -44
- data/ext/pg_query/include/common/relpath.h +0 -90
- data/ext/pg_query/include/common/string.h +0 -19
- data/ext/pg_query/include/common/unicode_combining_table.h +0 -196
- data/ext/pg_query/include/datatype/timestamp.h +0 -197
- data/ext/pg_query/include/executor/execdesc.h +0 -70
- data/ext/pg_query/include/executor/executor.h +0 -620
- data/ext/pg_query/include/executor/functions.h +0 -41
- data/ext/pg_query/include/executor/instrument.h +0 -101
- data/ext/pg_query/include/executor/spi.h +0 -175
- data/ext/pg_query/include/executor/tablefunc.h +0 -67
- data/ext/pg_query/include/executor/tuptable.h +0 -487
- data/ext/pg_query/include/fmgr.h +0 -775
- data/ext/pg_query/include/funcapi.h +0 -348
- data/ext/pg_query/include/getaddrinfo.h +0 -162
- data/ext/pg_query/include/jit/jit.h +0 -105
- data/ext/pg_query/include/kwlist_d.h +0 -1072
- data/ext/pg_query/include/lib/ilist.h +0 -727
- data/ext/pg_query/include/lib/pairingheap.h +0 -102
- data/ext/pg_query/include/lib/simplehash.h +0 -1059
- data/ext/pg_query/include/lib/stringinfo.h +0 -161
- data/ext/pg_query/include/libpq/auth.h +0 -29
- data/ext/pg_query/include/libpq/crypt.h +0 -46
- data/ext/pg_query/include/libpq/hba.h +0 -140
- data/ext/pg_query/include/libpq/libpq-be.h +0 -326
- data/ext/pg_query/include/libpq/libpq.h +0 -134
- data/ext/pg_query/include/libpq/pqcomm.h +0 -208
- data/ext/pg_query/include/libpq/pqformat.h +0 -210
- data/ext/pg_query/include/libpq/pqsignal.h +0 -42
- data/ext/pg_query/include/mb/pg_wchar.h +0 -673
- data/ext/pg_query/include/mb/stringinfo_mb.h +0 -24
- data/ext/pg_query/include/miscadmin.h +0 -489
- data/ext/pg_query/include/nodes/bitmapset.h +0 -122
- data/ext/pg_query/include/nodes/execnodes.h +0 -2523
- data/ext/pg_query/include/nodes/extensible.h +0 -160
- data/ext/pg_query/include/nodes/lockoptions.h +0 -61
- data/ext/pg_query/include/nodes/makefuncs.h +0 -108
- data/ext/pg_query/include/nodes/memnodes.h +0 -108
- data/ext/pg_query/include/nodes/nodeFuncs.h +0 -162
- data/ext/pg_query/include/nodes/nodes.h +0 -842
- data/ext/pg_query/include/nodes/params.h +0 -170
- data/ext/pg_query/include/nodes/parsenodes.h +0 -3580
- data/ext/pg_query/include/nodes/pathnodes.h +0 -2557
- data/ext/pg_query/include/nodes/pg_list.h +0 -606
- data/ext/pg_query/include/nodes/plannodes.h +0 -1266
- data/ext/pg_query/include/nodes/primnodes.h +0 -1541
- data/ext/pg_query/include/nodes/print.h +0 -34
- data/ext/pg_query/include/nodes/tidbitmap.h +0 -75
- data/ext/pg_query/include/nodes/value.h +0 -61
- data/ext/pg_query/include/optimizer/cost.h +0 -206
- data/ext/pg_query/include/optimizer/geqo.h +0 -88
- data/ext/pg_query/include/optimizer/geqo_gene.h +0 -45
- data/ext/pg_query/include/optimizer/optimizer.h +0 -194
- data/ext/pg_query/include/optimizer/paths.h +0 -257
- data/ext/pg_query/include/optimizer/planmain.h +0 -119
- data/ext/pg_query/include/parser/analyze.h +0 -49
- data/ext/pg_query/include/parser/gram.h +0 -1067
- data/ext/pg_query/include/parser/gramparse.h +0 -75
- data/ext/pg_query/include/parser/kwlist.h +0 -477
- data/ext/pg_query/include/parser/parse_agg.h +0 -68
- data/ext/pg_query/include/parser/parse_clause.h +0 -54
- data/ext/pg_query/include/parser/parse_coerce.h +0 -98
- data/ext/pg_query/include/parser/parse_collate.h +0 -27
- data/ext/pg_query/include/parser/parse_expr.h +0 -26
- data/ext/pg_query/include/parser/parse_func.h +0 -73
- data/ext/pg_query/include/parser/parse_node.h +0 -327
- data/ext/pg_query/include/parser/parse_oper.h +0 -67
- data/ext/pg_query/include/parser/parse_relation.h +0 -123
- data/ext/pg_query/include/parser/parse_target.h +0 -46
- data/ext/pg_query/include/parser/parse_type.h +0 -60
- data/ext/pg_query/include/parser/parser.h +0 -41
- data/ext/pg_query/include/parser/parsetree.h +0 -61
- data/ext/pg_query/include/parser/scanner.h +0 -152
- data/ext/pg_query/include/parser/scansup.h +0 -30
- data/ext/pg_query/include/partitioning/partdefs.h +0 -26
- data/ext/pg_query/include/pg_config.h +0 -995
- data/ext/pg_query/include/pg_config_manual.h +0 -357
- data/ext/pg_query/include/pg_config_os.h +0 -8
- data/ext/pg_query/include/pg_getopt.h +0 -56
- data/ext/pg_query/include/pg_trace.h +0 -17
- data/ext/pg_query/include/pgstat.h +0 -1488
- data/ext/pg_query/include/pgtime.h +0 -84
- data/ext/pg_query/include/pl_gram.h +0 -385
- data/ext/pg_query/include/pl_reserved_kwlist.h +0 -52
- data/ext/pg_query/include/pl_reserved_kwlist_d.h +0 -114
- data/ext/pg_query/include/pl_unreserved_kwlist.h +0 -112
- data/ext/pg_query/include/pl_unreserved_kwlist_d.h +0 -246
- data/ext/pg_query/include/plerrcodes.h +0 -990
- data/ext/pg_query/include/plpgsql.h +0 -1347
- data/ext/pg_query/include/port/atomics/arch-arm.h +0 -26
- data/ext/pg_query/include/port/atomics/arch-ppc.h +0 -254
- data/ext/pg_query/include/port/atomics/arch-x86.h +0 -252
- data/ext/pg_query/include/port/atomics/fallback.h +0 -170
- data/ext/pg_query/include/port/atomics/generic-gcc.h +0 -286
- data/ext/pg_query/include/port/atomics/generic.h +0 -401
- data/ext/pg_query/include/port/atomics.h +0 -524
- data/ext/pg_query/include/port/pg_bitutils.h +0 -272
- data/ext/pg_query/include/port/pg_bswap.h +0 -161
- data/ext/pg_query/include/port/pg_crc32c.h +0 -101
- data/ext/pg_query/include/port.h +0 -528
- data/ext/pg_query/include/portability/instr_time.h +0 -256
- data/ext/pg_query/include/postgres.h +0 -764
- data/ext/pg_query/include/postgres_ext.h +0 -74
- data/ext/pg_query/include/postmaster/autovacuum.h +0 -83
- data/ext/pg_query/include/postmaster/bgworker.h +0 -161
- data/ext/pg_query/include/postmaster/bgworker_internals.h +0 -64
- data/ext/pg_query/include/postmaster/bgwriter.h +0 -45
- data/ext/pg_query/include/postmaster/fork_process.h +0 -17
- data/ext/pg_query/include/postmaster/interrupt.h +0 -32
- data/ext/pg_query/include/postmaster/pgarch.h +0 -39
- data/ext/pg_query/include/postmaster/postmaster.h +0 -77
- data/ext/pg_query/include/postmaster/syslogger.h +0 -98
- data/ext/pg_query/include/postmaster/walwriter.h +0 -21
- data/ext/pg_query/include/regex/regex.h +0 -184
- data/ext/pg_query/include/replication/logicallauncher.h +0 -31
- data/ext/pg_query/include/replication/logicalproto.h +0 -110
- data/ext/pg_query/include/replication/logicalworker.h +0 -19
- data/ext/pg_query/include/replication/origin.h +0 -73
- data/ext/pg_query/include/replication/reorderbuffer.h +0 -468
- data/ext/pg_query/include/replication/slot.h +0 -219
- data/ext/pg_query/include/replication/syncrep.h +0 -115
- data/ext/pg_query/include/replication/walreceiver.h +0 -340
- data/ext/pg_query/include/replication/walsender.h +0 -74
- data/ext/pg_query/include/rewrite/prs2lock.h +0 -46
- data/ext/pg_query/include/rewrite/rewriteHandler.h +0 -40
- data/ext/pg_query/include/rewrite/rewriteManip.h +0 -87
- data/ext/pg_query/include/rewrite/rewriteSupport.h +0 -26
- data/ext/pg_query/include/storage/backendid.h +0 -37
- data/ext/pg_query/include/storage/block.h +0 -121
- data/ext/pg_query/include/storage/buf.h +0 -46
- data/ext/pg_query/include/storage/bufmgr.h +0 -292
- data/ext/pg_query/include/storage/bufpage.h +0 -459
- data/ext/pg_query/include/storage/condition_variable.h +0 -62
- data/ext/pg_query/include/storage/dsm.h +0 -61
- data/ext/pg_query/include/storage/dsm_impl.h +0 -75
- data/ext/pg_query/include/storage/fd.h +0 -168
- data/ext/pg_query/include/storage/ipc.h +0 -81
- data/ext/pg_query/include/storage/item.h +0 -19
- data/ext/pg_query/include/storage/itemid.h +0 -184
- data/ext/pg_query/include/storage/itemptr.h +0 -206
- data/ext/pg_query/include/storage/large_object.h +0 -100
- data/ext/pg_query/include/storage/latch.h +0 -190
- data/ext/pg_query/include/storage/lmgr.h +0 -114
- data/ext/pg_query/include/storage/lock.h +0 -613
- data/ext/pg_query/include/storage/lockdefs.h +0 -59
- data/ext/pg_query/include/storage/lwlock.h +0 -233
- data/ext/pg_query/include/storage/lwlocknames.h +0 -51
- data/ext/pg_query/include/storage/off.h +0 -57
- data/ext/pg_query/include/storage/pg_sema.h +0 -61
- data/ext/pg_query/include/storage/pg_shmem.h +0 -90
- data/ext/pg_query/include/storage/pmsignal.h +0 -94
- data/ext/pg_query/include/storage/predicate.h +0 -87
- data/ext/pg_query/include/storage/proc.h +0 -347
- data/ext/pg_query/include/storage/proclist_types.h +0 -51
- data/ext/pg_query/include/storage/procsignal.h +0 -75
- data/ext/pg_query/include/storage/relfilenode.h +0 -99
- data/ext/pg_query/include/storage/s_lock.h +0 -1071
- data/ext/pg_query/include/storage/sharedfileset.h +0 -45
- data/ext/pg_query/include/storage/shm_mq.h +0 -85
- data/ext/pg_query/include/storage/shm_toc.h +0 -58
- data/ext/pg_query/include/storage/shmem.h +0 -81
- data/ext/pg_query/include/storage/sinval.h +0 -153
- data/ext/pg_query/include/storage/sinvaladt.h +0 -43
- data/ext/pg_query/include/storage/smgr.h +0 -109
- data/ext/pg_query/include/storage/spin.h +0 -77
- data/ext/pg_query/include/storage/standby.h +0 -91
- data/ext/pg_query/include/storage/standbydefs.h +0 -74
- data/ext/pg_query/include/storage/sync.h +0 -62
- data/ext/pg_query/include/tcop/cmdtag.h +0 -58
- data/ext/pg_query/include/tcop/cmdtaglist.h +0 -217
- data/ext/pg_query/include/tcop/deparse_utility.h +0 -108
- data/ext/pg_query/include/tcop/dest.h +0 -149
- data/ext/pg_query/include/tcop/fastpath.h +0 -21
- data/ext/pg_query/include/tcop/pquery.h +0 -51
- data/ext/pg_query/include/tcop/tcopprot.h +0 -89
- data/ext/pg_query/include/tcop/utility.h +0 -108
- data/ext/pg_query/include/tsearch/ts_cache.h +0 -98
- data/ext/pg_query/include/utils/acl.h +0 -312
- data/ext/pg_query/include/utils/aclchk_internal.h +0 -45
- data/ext/pg_query/include/utils/array.h +0 -459
- data/ext/pg_query/include/utils/builtins.h +0 -128
- data/ext/pg_query/include/utils/bytea.h +0 -27
- data/ext/pg_query/include/utils/catcache.h +0 -231
- data/ext/pg_query/include/utils/date.h +0 -90
- data/ext/pg_query/include/utils/datetime.h +0 -343
- data/ext/pg_query/include/utils/datum.h +0 -68
- data/ext/pg_query/include/utils/dsa.h +0 -123
- data/ext/pg_query/include/utils/dynahash.h +0 -19
- data/ext/pg_query/include/utils/elog.h +0 -439
- data/ext/pg_query/include/utils/errcodes.h +0 -352
- data/ext/pg_query/include/utils/expandeddatum.h +0 -159
- data/ext/pg_query/include/utils/expandedrecord.h +0 -231
- data/ext/pg_query/include/utils/float.h +0 -356
- data/ext/pg_query/include/utils/fmgroids.h +0 -2657
- data/ext/pg_query/include/utils/fmgrprotos.h +0 -2646
- data/ext/pg_query/include/utils/fmgrtab.h +0 -48
- data/ext/pg_query/include/utils/guc.h +0 -443
- data/ext/pg_query/include/utils/guc_tables.h +0 -272
- data/ext/pg_query/include/utils/hsearch.h +0 -149
- data/ext/pg_query/include/utils/inval.h +0 -65
- data/ext/pg_query/include/utils/lsyscache.h +0 -198
- data/ext/pg_query/include/utils/memdebug.h +0 -82
- data/ext/pg_query/include/utils/memutils.h +0 -225
- data/ext/pg_query/include/utils/numeric.h +0 -76
- data/ext/pg_query/include/utils/palloc.h +0 -136
- data/ext/pg_query/include/utils/partcache.h +0 -102
- data/ext/pg_query/include/utils/pg_locale.h +0 -119
- data/ext/pg_query/include/utils/pg_lsn.h +0 -29
- data/ext/pg_query/include/utils/pidfile.h +0 -56
- data/ext/pg_query/include/utils/plancache.h +0 -235
- data/ext/pg_query/include/utils/portal.h +0 -254
- data/ext/pg_query/include/utils/probes.h +0 -114
- data/ext/pg_query/include/utils/ps_status.h +0 -25
- data/ext/pg_query/include/utils/queryenvironment.h +0 -74
- data/ext/pg_query/include/utils/regproc.h +0 -28
- data/ext/pg_query/include/utils/rel.h +0 -643
- data/ext/pg_query/include/utils/relcache.h +0 -150
- data/ext/pg_query/include/utils/reltrigger.h +0 -81
- data/ext/pg_query/include/utils/resowner.h +0 -86
- data/ext/pg_query/include/utils/rls.h +0 -50
- data/ext/pg_query/include/utils/ruleutils.h +0 -44
- data/ext/pg_query/include/utils/sharedtuplestore.h +0 -61
- data/ext/pg_query/include/utils/snapmgr.h +0 -159
- data/ext/pg_query/include/utils/snapshot.h +0 -206
- data/ext/pg_query/include/utils/sortsupport.h +0 -276
- data/ext/pg_query/include/utils/syscache.h +0 -219
- data/ext/pg_query/include/utils/timeout.h +0 -88
- data/ext/pg_query/include/utils/timestamp.h +0 -116
- data/ext/pg_query/include/utils/tuplesort.h +0 -277
- data/ext/pg_query/include/utils/tuplestore.h +0 -91
- data/ext/pg_query/include/utils/typcache.h +0 -202
- data/ext/pg_query/include/utils/tzparser.h +0 -39
- data/ext/pg_query/include/utils/varlena.h +0 -39
- data/ext/pg_query/include/utils/xml.h +0 -84
- 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_backend_postmaster_postmaster.c +0 -2230
- data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -370
- data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1086
- data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1832
- data/ext/pg_query/src_common_string.c +0 -86
- data/ext/pg_query/src_port_erand48.c +0 -127
- data/ext/pg_query/src_port_pgsleep.c +0 -69
- data/ext/pg_query/src_port_random.c +0 -31
- data/ext/pg_query/src_port_strnlen.c +0 -39
- /data/ext/pg_query/{pg_query_ruby.sym → ext_symbols.sym} +0 -0
- /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
/*-------------------------------------------------------------------------
|
2
|
+
*
|
3
|
+
* pg_replication_origin_d.h
|
4
|
+
* Macro definitions for pg_replication_origin
|
5
|
+
*
|
6
|
+
* Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
8
|
+
*
|
9
|
+
* NOTES
|
10
|
+
* ******************************
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
12
|
+
* ******************************
|
13
|
+
*
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
15
|
+
*
|
16
|
+
*-------------------------------------------------------------------------
|
17
|
+
*/
|
18
|
+
#ifndef PG_REPLICATION_ORIGIN_D_H
|
19
|
+
#define PG_REPLICATION_ORIGIN_D_H
|
20
|
+
|
21
|
+
#define ReplicationOriginRelationId 6000
|
22
|
+
#define PgReplicationOriginToastTable 4181
|
23
|
+
#define PgReplicationOriginToastIndex 4182
|
24
|
+
#define ReplicationOriginIdentIndex 6001
|
25
|
+
#define ReplicationOriginNameIndex 6002
|
26
|
+
|
27
|
+
#define Anum_pg_replication_origin_roident 1
|
28
|
+
#define Anum_pg_replication_origin_roname 2
|
29
|
+
|
30
|
+
#define Natts_pg_replication_origin 2
|
31
|
+
|
32
|
+
|
33
|
+
#endif /* PG_REPLICATION_ORIGIN_D_H */
|
@@ -0,0 +1,288 @@
|
|
1
|
+
/*-------------------------------------------------------------------------
|
2
|
+
*
|
3
|
+
* pg_statistic.h
|
4
|
+
* definition of the "statistics" system catalog (pg_statistic)
|
5
|
+
*
|
6
|
+
*
|
7
|
+
* Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
|
8
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
9
|
+
*
|
10
|
+
* src/include/catalog/pg_statistic.h
|
11
|
+
*
|
12
|
+
* NOTES
|
13
|
+
* The Catalog.pm module reads this file and derives schema
|
14
|
+
* information.
|
15
|
+
*
|
16
|
+
*-------------------------------------------------------------------------
|
17
|
+
*/
|
18
|
+
#ifndef PG_STATISTIC_H
|
19
|
+
#define PG_STATISTIC_H
|
20
|
+
|
21
|
+
#include "catalog/genbki.h"
|
22
|
+
#include "catalog/pg_statistic_d.h"
|
23
|
+
|
24
|
+
/* ----------------
|
25
|
+
* pg_statistic definition. cpp turns this into
|
26
|
+
* typedef struct FormData_pg_statistic
|
27
|
+
* ----------------
|
28
|
+
*/
|
29
|
+
CATALOG(pg_statistic,2619,StatisticRelationId)
|
30
|
+
{
|
31
|
+
/* These fields form the unique key for the entry: */
|
32
|
+
Oid starelid BKI_LOOKUP(pg_class); /* relation containing
|
33
|
+
* attribute */
|
34
|
+
int16 staattnum; /* attribute (column) stats are for */
|
35
|
+
bool stainherit; /* true if inheritance children are included */
|
36
|
+
|
37
|
+
/* the fraction of the column's entries that are NULL: */
|
38
|
+
float4 stanullfrac;
|
39
|
+
|
40
|
+
/*
|
41
|
+
* stawidth is the average width in bytes of non-null entries. For
|
42
|
+
* fixed-width datatypes this is of course the same as the typlen, but for
|
43
|
+
* var-width types it is more useful. Note that this is the average width
|
44
|
+
* of the data as actually stored, post-TOASTing (eg, for a
|
45
|
+
* moved-out-of-line value, only the size of the pointer object is
|
46
|
+
* counted). This is the appropriate definition for the primary use of
|
47
|
+
* the statistic, which is to estimate sizes of in-memory hash tables of
|
48
|
+
* tuples.
|
49
|
+
*/
|
50
|
+
int32 stawidth;
|
51
|
+
|
52
|
+
/* ----------------
|
53
|
+
* stadistinct indicates the (approximate) number of distinct non-null
|
54
|
+
* data values in the column. The interpretation is:
|
55
|
+
* 0 unknown or not computed
|
56
|
+
* > 0 actual number of distinct values
|
57
|
+
* < 0 negative of multiplier for number of rows
|
58
|
+
* The special negative case allows us to cope with columns that are
|
59
|
+
* unique (stadistinct = -1) or nearly so (for example, a column in which
|
60
|
+
* non-null values appear about twice on the average could be represented
|
61
|
+
* by stadistinct = -0.5 if there are no nulls, or -0.4 if 20% of the
|
62
|
+
* column is nulls). Because the number-of-rows statistic in pg_class may
|
63
|
+
* be updated more frequently than pg_statistic is, it's important to be
|
64
|
+
* able to describe such situations as a multiple of the number of rows,
|
65
|
+
* rather than a fixed number of distinct values. But in other cases a
|
66
|
+
* fixed number is correct (eg, a boolean column).
|
67
|
+
* ----------------
|
68
|
+
*/
|
69
|
+
float4 stadistinct;
|
70
|
+
|
71
|
+
/* ----------------
|
72
|
+
* To allow keeping statistics on different kinds of datatypes,
|
73
|
+
* we do not hard-wire any particular meaning for the remaining
|
74
|
+
* statistical fields. Instead, we provide several "slots" in which
|
75
|
+
* statistical data can be placed. Each slot includes:
|
76
|
+
* kind integer code identifying kind of data (see below)
|
77
|
+
* op OID of associated operator, if needed
|
78
|
+
* coll OID of relevant collation, or 0 if none
|
79
|
+
* numbers float4 array (for statistical values)
|
80
|
+
* values anyarray (for representations of data values)
|
81
|
+
* The ID, operator, and collation fields are never NULL; they are zeroes
|
82
|
+
* in an unused slot. The numbers and values fields are NULL in an
|
83
|
+
* unused slot, and might also be NULL in a used slot if the slot kind
|
84
|
+
* has no need for one or the other.
|
85
|
+
* ----------------
|
86
|
+
*/
|
87
|
+
|
88
|
+
int16 stakind1;
|
89
|
+
int16 stakind2;
|
90
|
+
int16 stakind3;
|
91
|
+
int16 stakind4;
|
92
|
+
int16 stakind5;
|
93
|
+
|
94
|
+
Oid staop1 BKI_LOOKUP_OPT(pg_operator);
|
95
|
+
Oid staop2 BKI_LOOKUP_OPT(pg_operator);
|
96
|
+
Oid staop3 BKI_LOOKUP_OPT(pg_operator);
|
97
|
+
Oid staop4 BKI_LOOKUP_OPT(pg_operator);
|
98
|
+
Oid staop5 BKI_LOOKUP_OPT(pg_operator);
|
99
|
+
|
100
|
+
Oid stacoll1 BKI_LOOKUP_OPT(pg_collation);
|
101
|
+
Oid stacoll2 BKI_LOOKUP_OPT(pg_collation);
|
102
|
+
Oid stacoll3 BKI_LOOKUP_OPT(pg_collation);
|
103
|
+
Oid stacoll4 BKI_LOOKUP_OPT(pg_collation);
|
104
|
+
Oid stacoll5 BKI_LOOKUP_OPT(pg_collation);
|
105
|
+
|
106
|
+
#ifdef CATALOG_VARLEN /* variable-length fields start here */
|
107
|
+
float4 stanumbers1[1];
|
108
|
+
float4 stanumbers2[1];
|
109
|
+
float4 stanumbers3[1];
|
110
|
+
float4 stanumbers4[1];
|
111
|
+
float4 stanumbers5[1];
|
112
|
+
|
113
|
+
/*
|
114
|
+
* Values in these arrays are values of the column's data type, or of some
|
115
|
+
* related type such as an array element type. We presently have to cheat
|
116
|
+
* quite a bit to allow polymorphic arrays of this kind, but perhaps
|
117
|
+
* someday it'll be a less bogus facility.
|
118
|
+
*/
|
119
|
+
anyarray stavalues1;
|
120
|
+
anyarray stavalues2;
|
121
|
+
anyarray stavalues3;
|
122
|
+
anyarray stavalues4;
|
123
|
+
anyarray stavalues5;
|
124
|
+
#endif
|
125
|
+
} FormData_pg_statistic;
|
126
|
+
|
127
|
+
#define STATISTIC_NUM_SLOTS 5
|
128
|
+
|
129
|
+
|
130
|
+
/* ----------------
|
131
|
+
* Form_pg_statistic corresponds to a pointer to a tuple with
|
132
|
+
* the format of pg_statistic relation.
|
133
|
+
* ----------------
|
134
|
+
*/
|
135
|
+
typedef FormData_pg_statistic *Form_pg_statistic;
|
136
|
+
|
137
|
+
DECLARE_TOAST(pg_statistic, 2840, 2841);
|
138
|
+
|
139
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_statistic_relid_att_inh_index, 2696, StatisticRelidAttnumInhIndexId, pg_statistic, btree(starelid oid_ops, staattnum int2_ops, stainherit bool_ops));
|
140
|
+
|
141
|
+
MAKE_SYSCACHE(STATRELATTINH, pg_statistic_relid_att_inh_index, 128);
|
142
|
+
|
143
|
+
DECLARE_FOREIGN_KEY((starelid, staattnum), pg_attribute, (attrelid, attnum));
|
144
|
+
|
145
|
+
#ifdef EXPOSE_TO_CLIENT_CODE
|
146
|
+
|
147
|
+
/*
|
148
|
+
* Several statistical slot "kinds" are defined by core PostgreSQL, as
|
149
|
+
* documented below. Also, custom data types can define their own "kind"
|
150
|
+
* codes by mutual agreement between a custom typanalyze routine and the
|
151
|
+
* selectivity estimation functions of the type's operators.
|
152
|
+
*
|
153
|
+
* Code reading the pg_statistic relation should not assume that a particular
|
154
|
+
* data "kind" will appear in any particular slot. Instead, search the
|
155
|
+
* stakind fields to see if the desired data is available. (The standard
|
156
|
+
* function get_attstatsslot() may be used for this.)
|
157
|
+
*
|
158
|
+
* Note: The pg_stats view needs to be modified whenever a new slot kind is
|
159
|
+
* added to core.
|
160
|
+
*/
|
161
|
+
|
162
|
+
/*
|
163
|
+
* The present allocation of "kind" codes is:
|
164
|
+
*
|
165
|
+
* 1-99: reserved for assignment by the core PostgreSQL project
|
166
|
+
* (values in this range will be documented in this file)
|
167
|
+
* 100-199: reserved for assignment by the PostGIS project
|
168
|
+
* (values to be documented in PostGIS documentation)
|
169
|
+
* 200-299: reserved for assignment by the ESRI ST_Geometry project
|
170
|
+
* (values to be documented in ESRI ST_Geometry documentation)
|
171
|
+
* 300-9999: reserved for future public assignments
|
172
|
+
*
|
173
|
+
* For private use you may choose a "kind" code at random in the range
|
174
|
+
* 10000-30000. However, for code that is to be widely disseminated it is
|
175
|
+
* better to obtain a publicly defined "kind" code by request from the
|
176
|
+
* PostgreSQL Global Development Group.
|
177
|
+
*/
|
178
|
+
|
179
|
+
/*
|
180
|
+
* In a "most common values" slot, staop is the OID of the "=" operator
|
181
|
+
* used to decide whether values are the same or not, and stacoll is the
|
182
|
+
* collation used (same as column's collation). stavalues contains
|
183
|
+
* the K most common non-null values appearing in the column, and stanumbers
|
184
|
+
* contains their frequencies (fractions of total row count). The values
|
185
|
+
* shall be ordered in decreasing frequency. Note that since the arrays are
|
186
|
+
* variable-size, K may be chosen may be chosen at ANALYZE time. Values should
|
187
|
+
* not appear in MCV unless they have been observed to occur more than once;
|
188
|
+
* a unique column will have no MCV slot.
|
189
|
+
*/
|
190
|
+
#define STATISTIC_KIND_MCV 1
|
191
|
+
|
192
|
+
/*
|
193
|
+
* A "histogram" slot describes the distribution of scalar data. staop is
|
194
|
+
* the OID of the "<" operator that describes the sort ordering, and stacoll
|
195
|
+
* is the relevant collation. (In theory more than one histogram could appear,
|
196
|
+
* if a datatype has more than one useful sort operator or we care about more
|
197
|
+
* than one collation. Currently the collation will always be that of the
|
198
|
+
* underlying column.) stavalues contains M (>=2) non-null values that
|
199
|
+
* divide the non-null column data values into M-1 bins of approximately equal
|
200
|
+
* population. The first stavalues item is the MIN and the last is the MAX.
|
201
|
+
* stanumbers is not used and should be NULL. IMPORTANT POINT: if an MCV
|
202
|
+
* slot is also provided, then the histogram describes the data distribution
|
203
|
+
* *after removing the values listed in MCV* (thus, it's a "compressed
|
204
|
+
* histogram" in the technical parlance). This allows a more accurate
|
205
|
+
* representation of the distribution of a column with some very-common
|
206
|
+
* values. In a column with only a few distinct values, it's possible that
|
207
|
+
* the MCV list describes the entire data population; in this case the
|
208
|
+
* histogram reduces to empty and should be omitted.
|
209
|
+
*/
|
210
|
+
#define STATISTIC_KIND_HISTOGRAM 2
|
211
|
+
|
212
|
+
/*
|
213
|
+
* A "correlation" slot describes the correlation between the physical order
|
214
|
+
* of table tuples and the ordering of data values of this column, as seen
|
215
|
+
* by the "<" operator identified by staop with the collation identified by
|
216
|
+
* stacoll. (As with the histogram, more than one entry could theoretically
|
217
|
+
* appear.) stavalues is not used and should be NULL. stanumbers contains
|
218
|
+
* a single entry, the correlation coefficient between the sequence of data
|
219
|
+
* values and the sequence of their actual tuple positions. The coefficient
|
220
|
+
* ranges from +1 to -1.
|
221
|
+
*/
|
222
|
+
#define STATISTIC_KIND_CORRELATION 3
|
223
|
+
|
224
|
+
/*
|
225
|
+
* A "most common elements" slot is similar to a "most common values" slot,
|
226
|
+
* except that it stores the most common non-null *elements* of the column
|
227
|
+
* values. This is useful when the column datatype is an array or some other
|
228
|
+
* type with identifiable elements (for instance, tsvector). staop contains
|
229
|
+
* the equality operator appropriate to the element type, and stacoll
|
230
|
+
* contains the collation to use with it. stavalues contains
|
231
|
+
* the most common element values, and stanumbers their frequencies. Unlike
|
232
|
+
* MCV slots, frequencies are measured as the fraction of non-null rows the
|
233
|
+
* element value appears in, not the frequency of all rows. Also unlike
|
234
|
+
* MCV slots, the values are sorted into the element type's default order
|
235
|
+
* (to support binary search for a particular value). Since this puts the
|
236
|
+
* minimum and maximum frequencies at unpredictable spots in stanumbers,
|
237
|
+
* there are two extra members of stanumbers, holding copies of the minimum
|
238
|
+
* and maximum frequencies. Optionally, there can be a third extra member,
|
239
|
+
* which holds the frequency of null elements (expressed in the same terms:
|
240
|
+
* the fraction of non-null rows that contain at least one null element). If
|
241
|
+
* this member is omitted, the column is presumed to contain no null elements.
|
242
|
+
*
|
243
|
+
* Note: in current usage for tsvector columns, the stavalues elements are of
|
244
|
+
* type text, even though their representation within tsvector is not
|
245
|
+
* exactly text.
|
246
|
+
*/
|
247
|
+
#define STATISTIC_KIND_MCELEM 4
|
248
|
+
|
249
|
+
/*
|
250
|
+
* A "distinct elements count histogram" slot describes the distribution of
|
251
|
+
* the number of distinct element values present in each row of an array-type
|
252
|
+
* column. Only non-null rows are considered, and only non-null elements.
|
253
|
+
* staop contains the equality operator appropriate to the element type,
|
254
|
+
* and stacoll contains the collation to use with it.
|
255
|
+
* stavalues is not used and should be NULL. The last member of stanumbers is
|
256
|
+
* the average count of distinct element values over all non-null rows. The
|
257
|
+
* preceding M (>=2) members form a histogram that divides the population of
|
258
|
+
* distinct-elements counts into M-1 bins of approximately equal population.
|
259
|
+
* The first of these is the minimum observed count, and the last the maximum.
|
260
|
+
*/
|
261
|
+
#define STATISTIC_KIND_DECHIST 5
|
262
|
+
|
263
|
+
/*
|
264
|
+
* A "length histogram" slot describes the distribution of range lengths in
|
265
|
+
* rows of a range-type column. stanumbers contains a single entry, the
|
266
|
+
* fraction of empty ranges. stavalues is a histogram of non-empty lengths, in
|
267
|
+
* a format similar to STATISTIC_KIND_HISTOGRAM: it contains M (>=2) range
|
268
|
+
* values that divide the column data values into M-1 bins of approximately
|
269
|
+
* equal population. The lengths are stored as float8s, as measured by the
|
270
|
+
* range type's subdiff function. Only non-null, non-empty rows are
|
271
|
+
* considered.
|
272
|
+
*/
|
273
|
+
#define STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM 6
|
274
|
+
|
275
|
+
/*
|
276
|
+
* A "bounds histogram" slot is similar to STATISTIC_KIND_HISTOGRAM, but for
|
277
|
+
* a range-type column. stavalues contains M (>=2) range values that divide
|
278
|
+
* the column data values into M-1 bins of approximately equal population.
|
279
|
+
* Unlike a regular scalar histogram, this is actually two histograms combined
|
280
|
+
* into a single array, with the lower bounds of each value forming a
|
281
|
+
* histogram of lower bounds, and the upper bounds a histogram of upper
|
282
|
+
* bounds. Only non-NULL, non-empty ranges are included.
|
283
|
+
*/
|
284
|
+
#define STATISTIC_KIND_BOUNDS_HISTOGRAM 7
|
285
|
+
|
286
|
+
#endif /* EXPOSE_TO_CLIENT_CODE */
|
287
|
+
|
288
|
+
#endif /* PG_STATISTIC_H */
|
@@ -0,0 +1,199 @@
|
|
1
|
+
/*-------------------------------------------------------------------------
|
2
|
+
*
|
3
|
+
* pg_statistic_d.h
|
4
|
+
* Macro definitions for pg_statistic
|
5
|
+
*
|
6
|
+
* Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
8
|
+
*
|
9
|
+
* NOTES
|
10
|
+
* ******************************
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
12
|
+
* ******************************
|
13
|
+
*
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
15
|
+
*
|
16
|
+
*-------------------------------------------------------------------------
|
17
|
+
*/
|
18
|
+
#ifndef PG_STATISTIC_D_H
|
19
|
+
#define PG_STATISTIC_D_H
|
20
|
+
|
21
|
+
#define StatisticRelationId 2619
|
22
|
+
#define StatisticRelidAttnumInhIndexId 2696
|
23
|
+
|
24
|
+
#define Anum_pg_statistic_starelid 1
|
25
|
+
#define Anum_pg_statistic_staattnum 2
|
26
|
+
#define Anum_pg_statistic_stainherit 3
|
27
|
+
#define Anum_pg_statistic_stanullfrac 4
|
28
|
+
#define Anum_pg_statistic_stawidth 5
|
29
|
+
#define Anum_pg_statistic_stadistinct 6
|
30
|
+
#define Anum_pg_statistic_stakind1 7
|
31
|
+
#define Anum_pg_statistic_stakind2 8
|
32
|
+
#define Anum_pg_statistic_stakind3 9
|
33
|
+
#define Anum_pg_statistic_stakind4 10
|
34
|
+
#define Anum_pg_statistic_stakind5 11
|
35
|
+
#define Anum_pg_statistic_staop1 12
|
36
|
+
#define Anum_pg_statistic_staop2 13
|
37
|
+
#define Anum_pg_statistic_staop3 14
|
38
|
+
#define Anum_pg_statistic_staop4 15
|
39
|
+
#define Anum_pg_statistic_staop5 16
|
40
|
+
#define Anum_pg_statistic_stacoll1 17
|
41
|
+
#define Anum_pg_statistic_stacoll2 18
|
42
|
+
#define Anum_pg_statistic_stacoll3 19
|
43
|
+
#define Anum_pg_statistic_stacoll4 20
|
44
|
+
#define Anum_pg_statistic_stacoll5 21
|
45
|
+
#define Anum_pg_statistic_stanumbers1 22
|
46
|
+
#define Anum_pg_statistic_stanumbers2 23
|
47
|
+
#define Anum_pg_statistic_stanumbers3 24
|
48
|
+
#define Anum_pg_statistic_stanumbers4 25
|
49
|
+
#define Anum_pg_statistic_stanumbers5 26
|
50
|
+
#define Anum_pg_statistic_stavalues1 27
|
51
|
+
#define Anum_pg_statistic_stavalues2 28
|
52
|
+
#define Anum_pg_statistic_stavalues3 29
|
53
|
+
#define Anum_pg_statistic_stavalues4 30
|
54
|
+
#define Anum_pg_statistic_stavalues5 31
|
55
|
+
|
56
|
+
#define Natts_pg_statistic 31
|
57
|
+
|
58
|
+
|
59
|
+
/*
|
60
|
+
* Several statistical slot "kinds" are defined by core PostgreSQL, as
|
61
|
+
* documented below. Also, custom data types can define their own "kind"
|
62
|
+
* codes by mutual agreement between a custom typanalyze routine and the
|
63
|
+
* selectivity estimation functions of the type's operators.
|
64
|
+
*
|
65
|
+
* Code reading the pg_statistic relation should not assume that a particular
|
66
|
+
* data "kind" will appear in any particular slot. Instead, search the
|
67
|
+
* stakind fields to see if the desired data is available. (The standard
|
68
|
+
* function get_attstatsslot() may be used for this.)
|
69
|
+
*
|
70
|
+
* Note: The pg_stats view needs to be modified whenever a new slot kind is
|
71
|
+
* added to core.
|
72
|
+
*/
|
73
|
+
|
74
|
+
/*
|
75
|
+
* The present allocation of "kind" codes is:
|
76
|
+
*
|
77
|
+
* 1-99: reserved for assignment by the core PostgreSQL project
|
78
|
+
* (values in this range will be documented in this file)
|
79
|
+
* 100-199: reserved for assignment by the PostGIS project
|
80
|
+
* (values to be documented in PostGIS documentation)
|
81
|
+
* 200-299: reserved for assignment by the ESRI ST_Geometry project
|
82
|
+
* (values to be documented in ESRI ST_Geometry documentation)
|
83
|
+
* 300-9999: reserved for future public assignments
|
84
|
+
*
|
85
|
+
* For private use you may choose a "kind" code at random in the range
|
86
|
+
* 10000-30000. However, for code that is to be widely disseminated it is
|
87
|
+
* better to obtain a publicly defined "kind" code by request from the
|
88
|
+
* PostgreSQL Global Development Group.
|
89
|
+
*/
|
90
|
+
|
91
|
+
/*
|
92
|
+
* In a "most common values" slot, staop is the OID of the "=" operator
|
93
|
+
* used to decide whether values are the same or not, and stacoll is the
|
94
|
+
* collation used (same as column's collation). stavalues contains
|
95
|
+
* the K most common non-null values appearing in the column, and stanumbers
|
96
|
+
* contains their frequencies (fractions of total row count). The values
|
97
|
+
* shall be ordered in decreasing frequency. Note that since the arrays are
|
98
|
+
* variable-size, K may be chosen may be chosen at ANALYZE time. Values should
|
99
|
+
* not appear in MCV unless they have been observed to occur more than once;
|
100
|
+
* a unique column will have no MCV slot.
|
101
|
+
*/
|
102
|
+
#define STATISTIC_KIND_MCV 1
|
103
|
+
|
104
|
+
/*
|
105
|
+
* A "histogram" slot describes the distribution of scalar data. staop is
|
106
|
+
* the OID of the "<" operator that describes the sort ordering, and stacoll
|
107
|
+
* is the relevant collation. (In theory more than one histogram could appear,
|
108
|
+
* if a datatype has more than one useful sort operator or we care about more
|
109
|
+
* than one collation. Currently the collation will always be that of the
|
110
|
+
* underlying column.) stavalues contains M (>=2) non-null values that
|
111
|
+
* divide the non-null column data values into M-1 bins of approximately equal
|
112
|
+
* population. The first stavalues item is the MIN and the last is the MAX.
|
113
|
+
* stanumbers is not used and should be NULL. IMPORTANT POINT: if an MCV
|
114
|
+
* slot is also provided, then the histogram describes the data distribution
|
115
|
+
* *after removing the values listed in MCV* (thus, it's a "compressed
|
116
|
+
* histogram" in the technical parlance). This allows a more accurate
|
117
|
+
* representation of the distribution of a column with some very-common
|
118
|
+
* values. In a column with only a few distinct values, it's possible that
|
119
|
+
* the MCV list describes the entire data population; in this case the
|
120
|
+
* histogram reduces to empty and should be omitted.
|
121
|
+
*/
|
122
|
+
#define STATISTIC_KIND_HISTOGRAM 2
|
123
|
+
|
124
|
+
/*
|
125
|
+
* A "correlation" slot describes the correlation between the physical order
|
126
|
+
* of table tuples and the ordering of data values of this column, as seen
|
127
|
+
* by the "<" operator identified by staop with the collation identified by
|
128
|
+
* stacoll. (As with the histogram, more than one entry could theoretically
|
129
|
+
* appear.) stavalues is not used and should be NULL. stanumbers contains
|
130
|
+
* a single entry, the correlation coefficient between the sequence of data
|
131
|
+
* values and the sequence of their actual tuple positions. The coefficient
|
132
|
+
* ranges from +1 to -1.
|
133
|
+
*/
|
134
|
+
#define STATISTIC_KIND_CORRELATION 3
|
135
|
+
|
136
|
+
/*
|
137
|
+
* A "most common elements" slot is similar to a "most common values" slot,
|
138
|
+
* except that it stores the most common non-null *elements* of the column
|
139
|
+
* values. This is useful when the column datatype is an array or some other
|
140
|
+
* type with identifiable elements (for instance, tsvector). staop contains
|
141
|
+
* the equality operator appropriate to the element type, and stacoll
|
142
|
+
* contains the collation to use with it. stavalues contains
|
143
|
+
* the most common element values, and stanumbers their frequencies. Unlike
|
144
|
+
* MCV slots, frequencies are measured as the fraction of non-null rows the
|
145
|
+
* element value appears in, not the frequency of all rows. Also unlike
|
146
|
+
* MCV slots, the values are sorted into the element type's default order
|
147
|
+
* (to support binary search for a particular value). Since this puts the
|
148
|
+
* minimum and maximum frequencies at unpredictable spots in stanumbers,
|
149
|
+
* there are two extra members of stanumbers, holding copies of the minimum
|
150
|
+
* and maximum frequencies. Optionally, there can be a third extra member,
|
151
|
+
* which holds the frequency of null elements (expressed in the same terms:
|
152
|
+
* the fraction of non-null rows that contain at least one null element). If
|
153
|
+
* this member is omitted, the column is presumed to contain no null elements.
|
154
|
+
*
|
155
|
+
* Note: in current usage for tsvector columns, the stavalues elements are of
|
156
|
+
* type text, even though their representation within tsvector is not
|
157
|
+
* exactly text.
|
158
|
+
*/
|
159
|
+
#define STATISTIC_KIND_MCELEM 4
|
160
|
+
|
161
|
+
/*
|
162
|
+
* A "distinct elements count histogram" slot describes the distribution of
|
163
|
+
* the number of distinct element values present in each row of an array-type
|
164
|
+
* column. Only non-null rows are considered, and only non-null elements.
|
165
|
+
* staop contains the equality operator appropriate to the element type,
|
166
|
+
* and stacoll contains the collation to use with it.
|
167
|
+
* stavalues is not used and should be NULL. The last member of stanumbers is
|
168
|
+
* the average count of distinct element values over all non-null rows. The
|
169
|
+
* preceding M (>=2) members form a histogram that divides the population of
|
170
|
+
* distinct-elements counts into M-1 bins of approximately equal population.
|
171
|
+
* The first of these is the minimum observed count, and the last the maximum.
|
172
|
+
*/
|
173
|
+
#define STATISTIC_KIND_DECHIST 5
|
174
|
+
|
175
|
+
/*
|
176
|
+
* A "length histogram" slot describes the distribution of range lengths in
|
177
|
+
* rows of a range-type column. stanumbers contains a single entry, the
|
178
|
+
* fraction of empty ranges. stavalues is a histogram of non-empty lengths, in
|
179
|
+
* a format similar to STATISTIC_KIND_HISTOGRAM: it contains M (>=2) range
|
180
|
+
* values that divide the column data values into M-1 bins of approximately
|
181
|
+
* equal population. The lengths are stored as float8s, as measured by the
|
182
|
+
* range type's subdiff function. Only non-null, non-empty rows are
|
183
|
+
* considered.
|
184
|
+
*/
|
185
|
+
#define STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM 6
|
186
|
+
|
187
|
+
/*
|
188
|
+
* A "bounds histogram" slot is similar to STATISTIC_KIND_HISTOGRAM, but for
|
189
|
+
* a range-type column. stavalues contains M (>=2) range values that divide
|
190
|
+
* the column data values into M-1 bins of approximately equal population.
|
191
|
+
* Unlike a regular scalar histogram, this is actually two histograms combined
|
192
|
+
* into a single array, with the lower bounds of each value forming a
|
193
|
+
* histogram of lower bounds, and the upper bounds a histogram of upper
|
194
|
+
* bounds. Only non-NULL, non-empty ranges are included.
|
195
|
+
*/
|
196
|
+
#define STATISTIC_KIND_BOUNDS_HISTOGRAM 7
|
197
|
+
|
198
|
+
|
199
|
+
#endif /* PG_STATISTIC_D_H */
|
@@ -0,0 +1,91 @@
|
|
1
|
+
/*-------------------------------------------------------------------------
|
2
|
+
*
|
3
|
+
* pg_statistic_ext.h
|
4
|
+
* definition of the "extended statistics" system catalog
|
5
|
+
* (pg_statistic_ext)
|
6
|
+
*
|
7
|
+
* Note that pg_statistic_ext contains the definitions of extended statistics
|
8
|
+
* objects, created by CREATE STATISTICS, but not the actual statistical data,
|
9
|
+
* created by running ANALYZE.
|
10
|
+
*
|
11
|
+
* Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
|
12
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
13
|
+
*
|
14
|
+
* src/include/catalog/pg_statistic_ext.h
|
15
|
+
*
|
16
|
+
* NOTES
|
17
|
+
* The Catalog.pm module reads this file and derives schema
|
18
|
+
* information.
|
19
|
+
*
|
20
|
+
*-------------------------------------------------------------------------
|
21
|
+
*/
|
22
|
+
#ifndef PG_STATISTIC_EXT_H
|
23
|
+
#define PG_STATISTIC_EXT_H
|
24
|
+
|
25
|
+
#include "catalog/genbki.h"
|
26
|
+
#include "catalog/pg_statistic_ext_d.h"
|
27
|
+
|
28
|
+
/* ----------------
|
29
|
+
* pg_statistic_ext definition. cpp turns this into
|
30
|
+
* typedef struct FormData_pg_statistic_ext
|
31
|
+
* ----------------
|
32
|
+
*/
|
33
|
+
CATALOG(pg_statistic_ext,3381,StatisticExtRelationId)
|
34
|
+
{
|
35
|
+
Oid oid; /* oid */
|
36
|
+
|
37
|
+
Oid stxrelid BKI_LOOKUP(pg_class); /* relation containing
|
38
|
+
* attributes */
|
39
|
+
|
40
|
+
/* These two fields form the unique key for the entry: */
|
41
|
+
NameData stxname; /* statistics object name */
|
42
|
+
Oid stxnamespace BKI_LOOKUP(pg_namespace); /* OID of statistics
|
43
|
+
* object's namespace */
|
44
|
+
|
45
|
+
Oid stxowner BKI_LOOKUP(pg_authid); /* statistics object's owner */
|
46
|
+
|
47
|
+
/*
|
48
|
+
* variable-length/nullable fields start here, but we allow direct access
|
49
|
+
* to stxkeys
|
50
|
+
*/
|
51
|
+
int2vector stxkeys BKI_FORCE_NOT_NULL; /* array of column keys */
|
52
|
+
|
53
|
+
#ifdef CATALOG_VARLEN
|
54
|
+
int16 stxstattarget BKI_DEFAULT(_null_) BKI_FORCE_NULL; /* statistics target */
|
55
|
+
char stxkind[1] BKI_FORCE_NOT_NULL; /* statistics kinds requested
|
56
|
+
* to build */
|
57
|
+
pg_node_tree stxexprs; /* A list of expression trees for stats
|
58
|
+
* attributes that are not simple column
|
59
|
+
* references. */
|
60
|
+
#endif
|
61
|
+
|
62
|
+
} FormData_pg_statistic_ext;
|
63
|
+
|
64
|
+
/* ----------------
|
65
|
+
* Form_pg_statistic_ext corresponds to a pointer to a tuple with
|
66
|
+
* the format of pg_statistic_ext relation.
|
67
|
+
* ----------------
|
68
|
+
*/
|
69
|
+
typedef FormData_pg_statistic_ext *Form_pg_statistic_ext;
|
70
|
+
|
71
|
+
DECLARE_TOAST(pg_statistic_ext, 3439, 3440);
|
72
|
+
|
73
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_statistic_ext_oid_index, 3380, StatisticExtOidIndexId, pg_statistic_ext, btree(oid oid_ops));
|
74
|
+
DECLARE_UNIQUE_INDEX(pg_statistic_ext_name_index, 3997, StatisticExtNameIndexId, pg_statistic_ext, btree(stxname name_ops, stxnamespace oid_ops));
|
75
|
+
DECLARE_INDEX(pg_statistic_ext_relid_index, 3379, StatisticExtRelidIndexId, pg_statistic_ext, btree(stxrelid oid_ops));
|
76
|
+
|
77
|
+
MAKE_SYSCACHE(STATEXTOID, pg_statistic_ext_oid_index, 4);
|
78
|
+
MAKE_SYSCACHE(STATEXTNAMENSP, pg_statistic_ext_name_index, 4);
|
79
|
+
|
80
|
+
DECLARE_ARRAY_FOREIGN_KEY((stxrelid, stxkeys), pg_attribute, (attrelid, attnum));
|
81
|
+
|
82
|
+
#ifdef EXPOSE_TO_CLIENT_CODE
|
83
|
+
|
84
|
+
#define STATS_EXT_NDISTINCT 'd'
|
85
|
+
#define STATS_EXT_DEPENDENCIES 'f'
|
86
|
+
#define STATS_EXT_MCV 'm'
|
87
|
+
#define STATS_EXT_EXPRESSIONS 'e'
|
88
|
+
|
89
|
+
#endif /* EXPOSE_TO_CLIENT_CODE */
|
90
|
+
|
91
|
+
#endif /* PG_STATISTIC_EXT_H */
|
@@ -0,0 +1,45 @@
|
|
1
|
+
/*-------------------------------------------------------------------------
|
2
|
+
*
|
3
|
+
* pg_statistic_ext_d.h
|
4
|
+
* Macro definitions for pg_statistic_ext
|
5
|
+
*
|
6
|
+
* Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
8
|
+
*
|
9
|
+
* NOTES
|
10
|
+
* ******************************
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
12
|
+
* ******************************
|
13
|
+
*
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
15
|
+
*
|
16
|
+
*-------------------------------------------------------------------------
|
17
|
+
*/
|
18
|
+
#ifndef PG_STATISTIC_EXT_D_H
|
19
|
+
#define PG_STATISTIC_EXT_D_H
|
20
|
+
|
21
|
+
#define StatisticExtRelationId 3381
|
22
|
+
#define StatisticExtOidIndexId 3380
|
23
|
+
#define StatisticExtNameIndexId 3997
|
24
|
+
#define StatisticExtRelidIndexId 3379
|
25
|
+
|
26
|
+
#define Anum_pg_statistic_ext_oid 1
|
27
|
+
#define Anum_pg_statistic_ext_stxrelid 2
|
28
|
+
#define Anum_pg_statistic_ext_stxname 3
|
29
|
+
#define Anum_pg_statistic_ext_stxnamespace 4
|
30
|
+
#define Anum_pg_statistic_ext_stxowner 5
|
31
|
+
#define Anum_pg_statistic_ext_stxkeys 6
|
32
|
+
#define Anum_pg_statistic_ext_stxstattarget 7
|
33
|
+
#define Anum_pg_statistic_ext_stxkind 8
|
34
|
+
#define Anum_pg_statistic_ext_stxexprs 9
|
35
|
+
|
36
|
+
#define Natts_pg_statistic_ext 9
|
37
|
+
|
38
|
+
|
39
|
+
#define STATS_EXT_NDISTINCT 'd'
|
40
|
+
#define STATS_EXT_DEPENDENCIES 'f'
|
41
|
+
#define STATS_EXT_MCV 'm'
|
42
|
+
#define STATS_EXT_EXPRESSIONS 'e'
|
43
|
+
|
44
|
+
|
45
|
+
#endif /* PG_STATISTIC_EXT_D_H */
|