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
@@ -1,285 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* trigger.h
|
4
|
-
* Declarations for trigger handling.
|
5
|
-
*
|
6
|
-
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
7
|
-
* Portions Copyright (c) 1994, Regents of the University of California
|
8
|
-
*
|
9
|
-
* src/include/commands/trigger.h
|
10
|
-
*
|
11
|
-
*-------------------------------------------------------------------------
|
12
|
-
*/
|
13
|
-
#ifndef TRIGGER_H
|
14
|
-
#define TRIGGER_H
|
15
|
-
|
16
|
-
#include "catalog/objectaddress.h"
|
17
|
-
#include "nodes/execnodes.h"
|
18
|
-
#include "nodes/parsenodes.h"
|
19
|
-
|
20
|
-
/*
|
21
|
-
* TriggerData is the node type that is passed as fmgr "context" info
|
22
|
-
* when a function is called by the trigger manager.
|
23
|
-
*/
|
24
|
-
|
25
|
-
#define CALLED_AS_TRIGGER(fcinfo) \
|
26
|
-
((fcinfo)->context != NULL && IsA((fcinfo)->context, TriggerData))
|
27
|
-
|
28
|
-
typedef uint32 TriggerEvent;
|
29
|
-
|
30
|
-
typedef struct TriggerData
|
31
|
-
{
|
32
|
-
NodeTag type;
|
33
|
-
TriggerEvent tg_event;
|
34
|
-
Relation tg_relation;
|
35
|
-
HeapTuple tg_trigtuple;
|
36
|
-
HeapTuple tg_newtuple;
|
37
|
-
Trigger *tg_trigger;
|
38
|
-
TupleTableSlot *tg_trigslot;
|
39
|
-
TupleTableSlot *tg_newslot;
|
40
|
-
Tuplestorestate *tg_oldtable;
|
41
|
-
Tuplestorestate *tg_newtable;
|
42
|
-
const Bitmapset *tg_updatedcols;
|
43
|
-
} TriggerData;
|
44
|
-
|
45
|
-
/*
|
46
|
-
* The state for capturing old and new tuples into transition tables for a
|
47
|
-
* single ModifyTable node (or other operation source, e.g. copy.c).
|
48
|
-
*
|
49
|
-
* This is per-caller to avoid conflicts in setting tcs_map or
|
50
|
-
* tcs_original_insert_tuple. Note, however, that the pointed-to
|
51
|
-
* private data may be shared across multiple callers.
|
52
|
-
*/
|
53
|
-
struct AfterTriggersTableData; /* private in trigger.c */
|
54
|
-
|
55
|
-
typedef struct TransitionCaptureState
|
56
|
-
{
|
57
|
-
/*
|
58
|
-
* Is there at least one trigger specifying each transition relation on
|
59
|
-
* the relation explicitly named in the DML statement or COPY command?
|
60
|
-
* Note: in current usage, these flags could be part of the private state,
|
61
|
-
* but it seems possibly useful to let callers see them.
|
62
|
-
*/
|
63
|
-
bool tcs_delete_old_table;
|
64
|
-
bool tcs_update_old_table;
|
65
|
-
bool tcs_update_new_table;
|
66
|
-
bool tcs_insert_new_table;
|
67
|
-
|
68
|
-
/*
|
69
|
-
* For UPDATE and DELETE, AfterTriggerSaveEvent may need to convert the
|
70
|
-
* new and old tuples from a child table's format to the format of the
|
71
|
-
* relation named in a query so that it is compatible with the transition
|
72
|
-
* tuplestores. The caller must store the conversion map here if so.
|
73
|
-
*/
|
74
|
-
TupleConversionMap *tcs_map;
|
75
|
-
|
76
|
-
/*
|
77
|
-
* For INSERT and COPY, it would be wasteful to convert tuples from child
|
78
|
-
* format to parent format after they have already been converted in the
|
79
|
-
* opposite direction during routing. In that case we bypass conversion
|
80
|
-
* and allow the inserting code (copy.c and nodeModifyTable.c) to provide
|
81
|
-
* a slot containing the original tuple directly.
|
82
|
-
*/
|
83
|
-
TupleTableSlot *tcs_original_insert_tuple;
|
84
|
-
|
85
|
-
/*
|
86
|
-
* Private data including the tuplestore(s) into which to insert tuples.
|
87
|
-
*/
|
88
|
-
struct AfterTriggersTableData *tcs_private;
|
89
|
-
} TransitionCaptureState;
|
90
|
-
|
91
|
-
/*
|
92
|
-
* TriggerEvent bit flags
|
93
|
-
*
|
94
|
-
* Note that we assume different event types (INSERT/DELETE/UPDATE/TRUNCATE)
|
95
|
-
* can't be OR'd together in a single TriggerEvent. This is unlike the
|
96
|
-
* situation for pg_trigger rows, so pg_trigger.tgtype uses a different
|
97
|
-
* representation!
|
98
|
-
*/
|
99
|
-
#define TRIGGER_EVENT_INSERT 0x00000000
|
100
|
-
#define TRIGGER_EVENT_DELETE 0x00000001
|
101
|
-
#define TRIGGER_EVENT_UPDATE 0x00000002
|
102
|
-
#define TRIGGER_EVENT_TRUNCATE 0x00000003
|
103
|
-
#define TRIGGER_EVENT_OPMASK 0x00000003
|
104
|
-
|
105
|
-
#define TRIGGER_EVENT_ROW 0x00000004
|
106
|
-
|
107
|
-
#define TRIGGER_EVENT_BEFORE 0x00000008
|
108
|
-
#define TRIGGER_EVENT_AFTER 0x00000000
|
109
|
-
#define TRIGGER_EVENT_INSTEAD 0x00000010
|
110
|
-
#define TRIGGER_EVENT_TIMINGMASK 0x00000018
|
111
|
-
|
112
|
-
/* More TriggerEvent flags, used only within trigger.c */
|
113
|
-
|
114
|
-
#define AFTER_TRIGGER_DEFERRABLE 0x00000020
|
115
|
-
#define AFTER_TRIGGER_INITDEFERRED 0x00000040
|
116
|
-
|
117
|
-
#define TRIGGER_FIRED_BY_INSERT(event) \
|
118
|
-
(((event) & TRIGGER_EVENT_OPMASK) == TRIGGER_EVENT_INSERT)
|
119
|
-
|
120
|
-
#define TRIGGER_FIRED_BY_DELETE(event) \
|
121
|
-
(((event) & TRIGGER_EVENT_OPMASK) == TRIGGER_EVENT_DELETE)
|
122
|
-
|
123
|
-
#define TRIGGER_FIRED_BY_UPDATE(event) \
|
124
|
-
(((event) & TRIGGER_EVENT_OPMASK) == TRIGGER_EVENT_UPDATE)
|
125
|
-
|
126
|
-
#define TRIGGER_FIRED_BY_TRUNCATE(event) \
|
127
|
-
(((event) & TRIGGER_EVENT_OPMASK) == TRIGGER_EVENT_TRUNCATE)
|
128
|
-
|
129
|
-
#define TRIGGER_FIRED_FOR_ROW(event) \
|
130
|
-
((event) & TRIGGER_EVENT_ROW)
|
131
|
-
|
132
|
-
#define TRIGGER_FIRED_FOR_STATEMENT(event) \
|
133
|
-
(!TRIGGER_FIRED_FOR_ROW(event))
|
134
|
-
|
135
|
-
#define TRIGGER_FIRED_BEFORE(event) \
|
136
|
-
(((event) & TRIGGER_EVENT_TIMINGMASK) == TRIGGER_EVENT_BEFORE)
|
137
|
-
|
138
|
-
#define TRIGGER_FIRED_AFTER(event) \
|
139
|
-
(((event) & TRIGGER_EVENT_TIMINGMASK) == TRIGGER_EVENT_AFTER)
|
140
|
-
|
141
|
-
#define TRIGGER_FIRED_INSTEAD(event) \
|
142
|
-
(((event) & TRIGGER_EVENT_TIMINGMASK) == TRIGGER_EVENT_INSTEAD)
|
143
|
-
|
144
|
-
/*
|
145
|
-
* Definitions for replication role based firing.
|
146
|
-
*/
|
147
|
-
#define SESSION_REPLICATION_ROLE_ORIGIN 0
|
148
|
-
#define SESSION_REPLICATION_ROLE_REPLICA 1
|
149
|
-
#define SESSION_REPLICATION_ROLE_LOCAL 2
|
150
|
-
extern PGDLLIMPORT int SessionReplicationRole;
|
151
|
-
|
152
|
-
/*
|
153
|
-
* States at which a trigger can be fired. These are the
|
154
|
-
* possible values for pg_trigger.tgenabled.
|
155
|
-
*/
|
156
|
-
#define TRIGGER_FIRES_ON_ORIGIN 'O'
|
157
|
-
#define TRIGGER_FIRES_ALWAYS 'A'
|
158
|
-
#define TRIGGER_FIRES_ON_REPLICA 'R'
|
159
|
-
#define TRIGGER_DISABLED 'D'
|
160
|
-
|
161
|
-
extern ObjectAddress CreateTrigger(CreateTrigStmt *stmt, const char *queryString,
|
162
|
-
Oid relOid, Oid refRelOid, Oid constraintOid, Oid indexOid,
|
163
|
-
Oid funcoid, Oid parentTriggerOid, Node *whenClause,
|
164
|
-
bool isInternal, bool in_partition);
|
165
|
-
extern ObjectAddress CreateTriggerFiringOn(CreateTrigStmt *stmt, const char *queryString,
|
166
|
-
Oid relOid, Oid refRelOid, Oid constraintOid,
|
167
|
-
Oid indexOid, Oid funcoid, Oid parentTriggerOid,
|
168
|
-
Node *whenClause, bool isInternal, bool in_partition,
|
169
|
-
char trigger_fires_when);
|
170
|
-
|
171
|
-
extern void RemoveTriggerById(Oid trigOid);
|
172
|
-
extern Oid get_trigger_oid(Oid relid, const char *name, bool missing_ok);
|
173
|
-
|
174
|
-
extern ObjectAddress renametrig(RenameStmt *stmt);
|
175
|
-
|
176
|
-
extern void EnableDisableTriggerNew(Relation rel, const char *tgname,
|
177
|
-
char fires_when, bool skip_system, bool recurse,
|
178
|
-
LOCKMODE lockmode);
|
179
|
-
extern void EnableDisableTrigger(Relation rel, const char *tgname,
|
180
|
-
char fires_when, bool skip_system, LOCKMODE lockmode);
|
181
|
-
|
182
|
-
extern void RelationBuildTriggers(Relation relation);
|
183
|
-
|
184
|
-
extern TriggerDesc *CopyTriggerDesc(TriggerDesc *trigdesc);
|
185
|
-
|
186
|
-
extern const char *FindTriggerIncompatibleWithInheritance(TriggerDesc *trigdesc);
|
187
|
-
|
188
|
-
extern TransitionCaptureState *MakeTransitionCaptureState(TriggerDesc *trigdesc,
|
189
|
-
Oid relid, CmdType cmdType);
|
190
|
-
|
191
|
-
extern void FreeTriggerDesc(TriggerDesc *trigdesc);
|
192
|
-
|
193
|
-
extern void ExecBSInsertTriggers(EState *estate,
|
194
|
-
ResultRelInfo *relinfo);
|
195
|
-
extern void ExecASInsertTriggers(EState *estate,
|
196
|
-
ResultRelInfo *relinfo,
|
197
|
-
TransitionCaptureState *transition_capture);
|
198
|
-
extern bool ExecBRInsertTriggers(EState *estate,
|
199
|
-
ResultRelInfo *relinfo,
|
200
|
-
TupleTableSlot *slot);
|
201
|
-
extern void ExecARInsertTriggers(EState *estate,
|
202
|
-
ResultRelInfo *relinfo,
|
203
|
-
TupleTableSlot *slot,
|
204
|
-
List *recheckIndexes,
|
205
|
-
TransitionCaptureState *transition_capture);
|
206
|
-
extern bool ExecIRInsertTriggers(EState *estate,
|
207
|
-
ResultRelInfo *relinfo,
|
208
|
-
TupleTableSlot *slot);
|
209
|
-
extern void ExecBSDeleteTriggers(EState *estate,
|
210
|
-
ResultRelInfo *relinfo);
|
211
|
-
extern void ExecASDeleteTriggers(EState *estate,
|
212
|
-
ResultRelInfo *relinfo,
|
213
|
-
TransitionCaptureState *transition_capture);
|
214
|
-
extern bool ExecBRDeleteTriggers(EState *estate,
|
215
|
-
EPQState *epqstate,
|
216
|
-
ResultRelInfo *relinfo,
|
217
|
-
ItemPointer tupleid,
|
218
|
-
HeapTuple fdw_trigtuple,
|
219
|
-
TupleTableSlot **epqslot);
|
220
|
-
extern void ExecARDeleteTriggers(EState *estate,
|
221
|
-
ResultRelInfo *relinfo,
|
222
|
-
ItemPointer tupleid,
|
223
|
-
HeapTuple fdw_trigtuple,
|
224
|
-
TransitionCaptureState *transition_capture);
|
225
|
-
extern bool ExecIRDeleteTriggers(EState *estate,
|
226
|
-
ResultRelInfo *relinfo,
|
227
|
-
HeapTuple trigtuple);
|
228
|
-
extern void ExecBSUpdateTriggers(EState *estate,
|
229
|
-
ResultRelInfo *relinfo);
|
230
|
-
extern void ExecASUpdateTriggers(EState *estate,
|
231
|
-
ResultRelInfo *relinfo,
|
232
|
-
TransitionCaptureState *transition_capture);
|
233
|
-
extern bool ExecBRUpdateTriggers(EState *estate,
|
234
|
-
EPQState *epqstate,
|
235
|
-
ResultRelInfo *relinfo,
|
236
|
-
ItemPointer tupleid,
|
237
|
-
HeapTuple fdw_trigtuple,
|
238
|
-
TupleTableSlot *slot);
|
239
|
-
extern void ExecARUpdateTriggers(EState *estate,
|
240
|
-
ResultRelInfo *relinfo,
|
241
|
-
ItemPointer tupleid,
|
242
|
-
HeapTuple fdw_trigtuple,
|
243
|
-
TupleTableSlot *slot,
|
244
|
-
List *recheckIndexes,
|
245
|
-
TransitionCaptureState *transition_capture);
|
246
|
-
extern bool ExecIRUpdateTriggers(EState *estate,
|
247
|
-
ResultRelInfo *relinfo,
|
248
|
-
HeapTuple trigtuple,
|
249
|
-
TupleTableSlot *slot);
|
250
|
-
extern void ExecBSTruncateTriggers(EState *estate,
|
251
|
-
ResultRelInfo *relinfo);
|
252
|
-
extern void ExecASTruncateTriggers(EState *estate,
|
253
|
-
ResultRelInfo *relinfo);
|
254
|
-
|
255
|
-
extern void AfterTriggerBeginXact(void);
|
256
|
-
extern void AfterTriggerBeginQuery(void);
|
257
|
-
extern void AfterTriggerEndQuery(EState *estate);
|
258
|
-
extern void AfterTriggerFireDeferred(void);
|
259
|
-
extern void AfterTriggerEndXact(bool isCommit);
|
260
|
-
extern void AfterTriggerBeginSubXact(void);
|
261
|
-
extern void AfterTriggerEndSubXact(bool isCommit);
|
262
|
-
extern void AfterTriggerSetState(ConstraintsSetStmt *stmt);
|
263
|
-
extern bool AfterTriggerPendingOnRel(Oid relid);
|
264
|
-
|
265
|
-
|
266
|
-
/*
|
267
|
-
* in utils/adt/ri_triggers.c
|
268
|
-
*/
|
269
|
-
extern bool RI_FKey_pk_upd_check_required(Trigger *trigger, Relation pk_rel,
|
270
|
-
TupleTableSlot *old_slot, TupleTableSlot *new_slot);
|
271
|
-
extern bool RI_FKey_fk_upd_check_required(Trigger *trigger, Relation fk_rel,
|
272
|
-
TupleTableSlot *old_slot, TupleTableSlot *new_slot);
|
273
|
-
extern bool RI_Initial_Check(Trigger *trigger,
|
274
|
-
Relation fk_rel, Relation pk_rel);
|
275
|
-
extern void RI_PartitionRemove_Check(Trigger *trigger, Relation fk_rel,
|
276
|
-
Relation pk_rel);
|
277
|
-
|
278
|
-
/* result values for RI_FKey_trigger_type: */
|
279
|
-
#define RI_TRIGGER_PK 1 /* is a trigger on the PK relation */
|
280
|
-
#define RI_TRIGGER_FK 2 /* is a trigger on the FK relation */
|
281
|
-
#define RI_TRIGGER_NONE 0 /* is not an RI trigger function */
|
282
|
-
|
283
|
-
extern int RI_FKey_trigger_type(Oid tgfoid);
|
284
|
-
|
285
|
-
#endif /* TRIGGER_H */
|
@@ -1,37 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* user.h
|
4
|
-
* Commands for manipulating roles (formerly called users).
|
5
|
-
*
|
6
|
-
*
|
7
|
-
* src/include/commands/user.h
|
8
|
-
*
|
9
|
-
*-------------------------------------------------------------------------
|
10
|
-
*/
|
11
|
-
#ifndef USER_H
|
12
|
-
#define USER_H
|
13
|
-
|
14
|
-
#include "catalog/objectaddress.h"
|
15
|
-
#include "libpq/crypt.h"
|
16
|
-
#include "nodes/parsenodes.h"
|
17
|
-
#include "parser/parse_node.h"
|
18
|
-
|
19
|
-
/* GUC. Is actually of type PasswordType. */
|
20
|
-
extern int Password_encryption;
|
21
|
-
|
22
|
-
/* Hook to check passwords in CreateRole() and AlterRole() */
|
23
|
-
typedef void (*check_password_hook_type) (const char *username, const char *shadow_pass, PasswordType password_type, Datum validuntil_time, bool validuntil_null);
|
24
|
-
|
25
|
-
extern PGDLLIMPORT check_password_hook_type check_password_hook;
|
26
|
-
|
27
|
-
extern Oid CreateRole(ParseState *pstate, CreateRoleStmt *stmt);
|
28
|
-
extern Oid AlterRole(AlterRoleStmt *stmt);
|
29
|
-
extern Oid AlterRoleSet(AlterRoleSetStmt *stmt);
|
30
|
-
extern void DropRole(DropRoleStmt *stmt);
|
31
|
-
extern void GrantRole(GrantRoleStmt *stmt);
|
32
|
-
extern ObjectAddress RenameRole(const char *oldname, const char *newname);
|
33
|
-
extern void DropOwnedObjects(DropOwnedStmt *stmt);
|
34
|
-
extern void ReassignOwnedObjects(ReassignOwnedStmt *stmt);
|
35
|
-
extern List *roleSpecsToIds(List *memberNames);
|
36
|
-
|
37
|
-
#endif /* USER_H */
|
@@ -1,293 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* vacuum.h
|
4
|
-
* header file for postgres vacuum cleaner and statistics analyzer
|
5
|
-
*
|
6
|
-
*
|
7
|
-
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
8
|
-
* Portions Copyright (c) 1994, Regents of the University of California
|
9
|
-
*
|
10
|
-
* src/include/commands/vacuum.h
|
11
|
-
*
|
12
|
-
*-------------------------------------------------------------------------
|
13
|
-
*/
|
14
|
-
#ifndef VACUUM_H
|
15
|
-
#define VACUUM_H
|
16
|
-
|
17
|
-
#include "access/htup.h"
|
18
|
-
#include "catalog/pg_class.h"
|
19
|
-
#include "catalog/pg_statistic.h"
|
20
|
-
#include "catalog/pg_type.h"
|
21
|
-
#include "parser/parse_node.h"
|
22
|
-
#include "storage/buf.h"
|
23
|
-
#include "storage/lock.h"
|
24
|
-
#include "utils/relcache.h"
|
25
|
-
|
26
|
-
/*
|
27
|
-
* Flags for amparallelvacuumoptions to control the participation of bulkdelete
|
28
|
-
* and vacuumcleanup in parallel vacuum.
|
29
|
-
*/
|
30
|
-
|
31
|
-
/*
|
32
|
-
* Both bulkdelete and vacuumcleanup are disabled by default. This will be
|
33
|
-
* used by IndexAM's that don't want to or cannot participate in parallel
|
34
|
-
* vacuum. For example, if an index AM doesn't have a way to communicate the
|
35
|
-
* index statistics allocated by the first ambulkdelete call to the subsequent
|
36
|
-
* ones until amvacuumcleanup, the index AM cannot participate in parallel
|
37
|
-
* vacuum.
|
38
|
-
*/
|
39
|
-
#define VACUUM_OPTION_NO_PARALLEL 0
|
40
|
-
|
41
|
-
/*
|
42
|
-
* bulkdelete can be performed in parallel. This option can be used by
|
43
|
-
* IndexAm's that need to scan the index to delete the tuples.
|
44
|
-
*/
|
45
|
-
#define VACUUM_OPTION_PARALLEL_BULKDEL (1 << 0)
|
46
|
-
|
47
|
-
/*
|
48
|
-
* vacuumcleanup can be performed in parallel if bulkdelete is not performed
|
49
|
-
* yet. This will be used by IndexAM's that can scan the index if the
|
50
|
-
* bulkdelete is not performed.
|
51
|
-
*/
|
52
|
-
#define VACUUM_OPTION_PARALLEL_COND_CLEANUP (1 << 1)
|
53
|
-
|
54
|
-
/*
|
55
|
-
* vacuumcleanup can be performed in parallel even if bulkdelete has already
|
56
|
-
* processed the index. This will be used by IndexAM's that scan the index
|
57
|
-
* during the cleanup phase of index irrespective of whether the index is
|
58
|
-
* already scanned or not during bulkdelete phase.
|
59
|
-
*/
|
60
|
-
#define VACUUM_OPTION_PARALLEL_CLEANUP (1 << 2)
|
61
|
-
|
62
|
-
/* value for checking vacuum flags */
|
63
|
-
#define VACUUM_OPTION_MAX_VALID_VALUE ((1 << 3) - 1)
|
64
|
-
|
65
|
-
/*----------
|
66
|
-
* ANALYZE builds one of these structs for each attribute (column) that is
|
67
|
-
* to be analyzed. The struct and subsidiary data are in anl_context,
|
68
|
-
* so they live until the end of the ANALYZE operation.
|
69
|
-
*
|
70
|
-
* The type-specific typanalyze function is passed a pointer to this struct
|
71
|
-
* and must return true to continue analysis, false to skip analysis of this
|
72
|
-
* column. In the true case it must set the compute_stats and minrows fields,
|
73
|
-
* and can optionally set extra_data to pass additional info to compute_stats.
|
74
|
-
* minrows is its request for the minimum number of sample rows to be gathered
|
75
|
-
* (but note this request might not be honored, eg if there are fewer rows
|
76
|
-
* than that in the table).
|
77
|
-
*
|
78
|
-
* The compute_stats routine will be called after sample rows have been
|
79
|
-
* gathered. Aside from this struct, it is passed:
|
80
|
-
* fetchfunc: a function for accessing the column values from the
|
81
|
-
* sample rows
|
82
|
-
* samplerows: the number of sample tuples
|
83
|
-
* totalrows: estimated total number of rows in relation
|
84
|
-
* The fetchfunc may be called with rownum running from 0 to samplerows-1.
|
85
|
-
* It returns a Datum and an isNull flag.
|
86
|
-
*
|
87
|
-
* compute_stats should set stats_valid true if it is able to compute
|
88
|
-
* any useful statistics. If it does, the remainder of the struct holds
|
89
|
-
* the information to be stored in a pg_statistic row for the column. Be
|
90
|
-
* careful to allocate any pointed-to data in anl_context, which will NOT
|
91
|
-
* be CurrentMemoryContext when compute_stats is called.
|
92
|
-
*
|
93
|
-
* Note: all comparisons done for statistical purposes should use the
|
94
|
-
* underlying column's collation (attcollation), except in situations
|
95
|
-
* where a noncollatable container type contains a collatable type;
|
96
|
-
* in that case use the type's default collation. Be sure to record
|
97
|
-
* the appropriate collation in stacoll.
|
98
|
-
*----------
|
99
|
-
*/
|
100
|
-
typedef struct VacAttrStats *VacAttrStatsP;
|
101
|
-
|
102
|
-
typedef Datum (*AnalyzeAttrFetchFunc) (VacAttrStatsP stats, int rownum,
|
103
|
-
bool *isNull);
|
104
|
-
|
105
|
-
typedef void (*AnalyzeAttrComputeStatsFunc) (VacAttrStatsP stats,
|
106
|
-
AnalyzeAttrFetchFunc fetchfunc,
|
107
|
-
int samplerows,
|
108
|
-
double totalrows);
|
109
|
-
|
110
|
-
typedef struct VacAttrStats
|
111
|
-
{
|
112
|
-
/*
|
113
|
-
* These fields are set up by the main ANALYZE code before invoking the
|
114
|
-
* type-specific typanalyze function.
|
115
|
-
*
|
116
|
-
* Note: do not assume that the data being analyzed has the same datatype
|
117
|
-
* shown in attr, ie do not trust attr->atttypid, attlen, etc. This is
|
118
|
-
* because some index opclasses store a different type than the underlying
|
119
|
-
* column/expression. Instead use attrtypid, attrtypmod, and attrtype for
|
120
|
-
* information about the datatype being fed to the typanalyze function.
|
121
|
-
* Likewise, use attrcollid not attr->attcollation.
|
122
|
-
*/
|
123
|
-
Form_pg_attribute attr; /* copy of pg_attribute row for column */
|
124
|
-
Oid attrtypid; /* type of data being analyzed */
|
125
|
-
int32 attrtypmod; /* typmod of data being analyzed */
|
126
|
-
Form_pg_type attrtype; /* copy of pg_type row for attrtypid */
|
127
|
-
Oid attrcollid; /* collation of data being analyzed */
|
128
|
-
MemoryContext anl_context; /* where to save long-lived data */
|
129
|
-
|
130
|
-
/*
|
131
|
-
* These fields must be filled in by the typanalyze routine, unless it
|
132
|
-
* returns false.
|
133
|
-
*/
|
134
|
-
AnalyzeAttrComputeStatsFunc compute_stats; /* function pointer */
|
135
|
-
int minrows; /* Minimum # of rows wanted for stats */
|
136
|
-
void *extra_data; /* for extra type-specific data */
|
137
|
-
|
138
|
-
/*
|
139
|
-
* These fields are to be filled in by the compute_stats routine. (They
|
140
|
-
* are initialized to zero when the struct is created.)
|
141
|
-
*/
|
142
|
-
bool stats_valid;
|
143
|
-
float4 stanullfrac; /* fraction of entries that are NULL */
|
144
|
-
int32 stawidth; /* average width of column values */
|
145
|
-
float4 stadistinct; /* # distinct values */
|
146
|
-
int16 stakind[STATISTIC_NUM_SLOTS];
|
147
|
-
Oid staop[STATISTIC_NUM_SLOTS];
|
148
|
-
Oid stacoll[STATISTIC_NUM_SLOTS];
|
149
|
-
int numnumbers[STATISTIC_NUM_SLOTS];
|
150
|
-
float4 *stanumbers[STATISTIC_NUM_SLOTS];
|
151
|
-
int numvalues[STATISTIC_NUM_SLOTS];
|
152
|
-
Datum *stavalues[STATISTIC_NUM_SLOTS];
|
153
|
-
|
154
|
-
/*
|
155
|
-
* These fields describe the stavalues[n] element types. They will be
|
156
|
-
* initialized to match attrtypid, but a custom typanalyze function might
|
157
|
-
* want to store an array of something other than the analyzed column's
|
158
|
-
* elements. It should then overwrite these fields.
|
159
|
-
*/
|
160
|
-
Oid statypid[STATISTIC_NUM_SLOTS];
|
161
|
-
int16 statyplen[STATISTIC_NUM_SLOTS];
|
162
|
-
bool statypbyval[STATISTIC_NUM_SLOTS];
|
163
|
-
char statypalign[STATISTIC_NUM_SLOTS];
|
164
|
-
|
165
|
-
/*
|
166
|
-
* These fields are private to the main ANALYZE code and should not be
|
167
|
-
* looked at by type-specific functions.
|
168
|
-
*/
|
169
|
-
int tupattnum; /* attribute number within tuples */
|
170
|
-
HeapTuple *rows; /* access info for std fetch function */
|
171
|
-
TupleDesc tupDesc;
|
172
|
-
Datum *exprvals; /* access info for index fetch function */
|
173
|
-
bool *exprnulls;
|
174
|
-
int rowstride;
|
175
|
-
} VacAttrStats;
|
176
|
-
|
177
|
-
typedef enum VacuumOption
|
178
|
-
{
|
179
|
-
VACOPT_VACUUM = 1 << 0, /* do VACUUM */
|
180
|
-
VACOPT_ANALYZE = 1 << 1, /* do ANALYZE */
|
181
|
-
VACOPT_VERBOSE = 1 << 2, /* print progress info */
|
182
|
-
VACOPT_FREEZE = 1 << 3, /* FREEZE option */
|
183
|
-
VACOPT_FULL = 1 << 4, /* FULL (non-concurrent) vacuum */
|
184
|
-
VACOPT_SKIP_LOCKED = 1 << 5, /* skip if cannot get lock */
|
185
|
-
VACOPT_SKIPTOAST = 1 << 6, /* don't process the TOAST table, if any */
|
186
|
-
VACOPT_DISABLE_PAGE_SKIPPING = 1 << 7 /* don't skip any pages */
|
187
|
-
} VacuumOption;
|
188
|
-
|
189
|
-
/*
|
190
|
-
* A ternary value used by vacuum parameters.
|
191
|
-
*
|
192
|
-
* DEFAULT value is used to determine the value based on other
|
193
|
-
* configurations, e.g. reloptions.
|
194
|
-
*/
|
195
|
-
typedef enum VacOptTernaryValue
|
196
|
-
{
|
197
|
-
VACOPT_TERNARY_DEFAULT = 0,
|
198
|
-
VACOPT_TERNARY_DISABLED,
|
199
|
-
VACOPT_TERNARY_ENABLED,
|
200
|
-
} VacOptTernaryValue;
|
201
|
-
|
202
|
-
/*
|
203
|
-
* Parameters customizing behavior of VACUUM and ANALYZE.
|
204
|
-
*
|
205
|
-
* Note that at least one of VACOPT_VACUUM and VACOPT_ANALYZE must be set
|
206
|
-
* in options.
|
207
|
-
*/
|
208
|
-
typedef struct VacuumParams
|
209
|
-
{
|
210
|
-
int options; /* bitmask of VacuumOption */
|
211
|
-
int freeze_min_age; /* min freeze age, -1 to use default */
|
212
|
-
int freeze_table_age; /* age at which to scan whole table */
|
213
|
-
int multixact_freeze_min_age; /* min multixact freeze age, -1 to
|
214
|
-
* use default */
|
215
|
-
int multixact_freeze_table_age; /* multixact age at which to scan
|
216
|
-
* whole table */
|
217
|
-
bool is_wraparound; /* force a for-wraparound vacuum */
|
218
|
-
int log_min_duration; /* minimum execution threshold in ms at
|
219
|
-
* which verbose logs are activated, -1
|
220
|
-
* to use default */
|
221
|
-
VacOptTernaryValue index_cleanup; /* Do index vacuum and cleanup,
|
222
|
-
* default value depends on reloptions */
|
223
|
-
VacOptTernaryValue truncate; /* Truncate empty pages at the end,
|
224
|
-
* default value depends on reloptions */
|
225
|
-
|
226
|
-
/*
|
227
|
-
* The number of parallel vacuum workers. 0 by default which means choose
|
228
|
-
* based on the number of indexes. -1 indicates parallel vacuum is
|
229
|
-
* disabled.
|
230
|
-
*/
|
231
|
-
int nworkers;
|
232
|
-
} VacuumParams;
|
233
|
-
|
234
|
-
/* GUC parameters */
|
235
|
-
extern PGDLLIMPORT int default_statistics_target; /* PGDLLIMPORT for PostGIS */
|
236
|
-
extern int vacuum_freeze_min_age;
|
237
|
-
extern int vacuum_freeze_table_age;
|
238
|
-
extern int vacuum_multixact_freeze_min_age;
|
239
|
-
extern int vacuum_multixact_freeze_table_age;
|
240
|
-
|
241
|
-
/* Variables for cost-based parallel vacuum */
|
242
|
-
extern pg_atomic_uint32 *VacuumSharedCostBalance;
|
243
|
-
extern pg_atomic_uint32 *VacuumActiveNWorkers;
|
244
|
-
extern int VacuumCostBalanceLocal;
|
245
|
-
|
246
|
-
|
247
|
-
/* in commands/vacuum.c */
|
248
|
-
extern void ExecVacuum(ParseState *pstate, VacuumStmt *vacstmt, bool isTopLevel);
|
249
|
-
extern void vacuum(List *relations, VacuumParams *params,
|
250
|
-
BufferAccessStrategy bstrategy, bool isTopLevel);
|
251
|
-
extern void vac_open_indexes(Relation relation, LOCKMODE lockmode,
|
252
|
-
int *nindexes, Relation **Irel);
|
253
|
-
extern void vac_close_indexes(int nindexes, Relation *Irel, LOCKMODE lockmode);
|
254
|
-
extern double vac_estimate_reltuples(Relation relation,
|
255
|
-
BlockNumber total_pages,
|
256
|
-
BlockNumber scanned_pages,
|
257
|
-
double scanned_tuples);
|
258
|
-
extern void vac_update_relstats(Relation relation,
|
259
|
-
BlockNumber num_pages,
|
260
|
-
double num_tuples,
|
261
|
-
BlockNumber num_all_visible_pages,
|
262
|
-
bool hasindex,
|
263
|
-
TransactionId frozenxid,
|
264
|
-
MultiXactId minmulti,
|
265
|
-
bool in_outer_xact);
|
266
|
-
extern void vacuum_set_xid_limits(Relation rel,
|
267
|
-
int freeze_min_age, int freeze_table_age,
|
268
|
-
int multixact_freeze_min_age,
|
269
|
-
int multixact_freeze_table_age,
|
270
|
-
TransactionId *oldestXmin,
|
271
|
-
TransactionId *freezeLimit,
|
272
|
-
TransactionId *xidFullScanLimit,
|
273
|
-
MultiXactId *multiXactCutoff,
|
274
|
-
MultiXactId *mxactFullScanLimit);
|
275
|
-
extern void vac_update_datfrozenxid(void);
|
276
|
-
extern void vacuum_delay_point(void);
|
277
|
-
extern bool vacuum_is_relation_owner(Oid relid, Form_pg_class reltuple,
|
278
|
-
int options);
|
279
|
-
extern Relation vacuum_open_relation(Oid relid, RangeVar *relation,
|
280
|
-
int options, bool verbose, LOCKMODE lmode);
|
281
|
-
|
282
|
-
/* in commands/analyze.c */
|
283
|
-
extern void analyze_rel(Oid relid, RangeVar *relation,
|
284
|
-
VacuumParams *params, List *va_cols, bool in_outer_xact,
|
285
|
-
BufferAccessStrategy bstrategy);
|
286
|
-
extern bool std_typanalyze(VacAttrStats *stats);
|
287
|
-
|
288
|
-
/* in utils/misc/sampling.c --- duplicate of declarations in utils/sampling.h */
|
289
|
-
extern double anl_random_fract(void);
|
290
|
-
extern double anl_init_selection_state(int n);
|
291
|
-
extern double anl_get_next_S(double t, int n, double *stateptr);
|
292
|
-
|
293
|
-
#endif /* VACUUM_H */
|
@@ -1,38 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* variable.h
|
3
|
-
* Routines for handling specialized SET variables.
|
4
|
-
*
|
5
|
-
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
6
|
-
* Portions Copyright (c) 1994, Regents of the University of California
|
7
|
-
*
|
8
|
-
* src/include/commands/variable.h
|
9
|
-
*/
|
10
|
-
#ifndef VARIABLE_H
|
11
|
-
#define VARIABLE_H
|
12
|
-
|
13
|
-
#include "utils/guc.h"
|
14
|
-
|
15
|
-
|
16
|
-
extern bool check_datestyle(char **newval, void **extra, GucSource source);
|
17
|
-
extern void assign_datestyle(const char *newval, void *extra);
|
18
|
-
extern bool check_timezone(char **newval, void **extra, GucSource source);
|
19
|
-
extern void assign_timezone(const char *newval, void *extra);
|
20
|
-
extern const char *show_timezone(void);
|
21
|
-
extern bool check_log_timezone(char **newval, void **extra, GucSource source);
|
22
|
-
extern void assign_log_timezone(const char *newval, void *extra);
|
23
|
-
extern const char *show_log_timezone(void);
|
24
|
-
extern bool check_transaction_read_only(bool *newval, void **extra, GucSource source);
|
25
|
-
extern bool check_XactIsoLevel(int *newval, void **extra, GucSource source);
|
26
|
-
extern bool check_transaction_deferrable(bool *newval, void **extra, GucSource source);
|
27
|
-
extern bool check_random_seed(double *newval, void **extra, GucSource source);
|
28
|
-
extern void assign_random_seed(double newval, void *extra);
|
29
|
-
extern const char *show_random_seed(void);
|
30
|
-
extern bool check_client_encoding(char **newval, void **extra, GucSource source);
|
31
|
-
extern void assign_client_encoding(const char *newval, void *extra);
|
32
|
-
extern bool check_session_authorization(char **newval, void **extra, GucSource source);
|
33
|
-
extern void assign_session_authorization(const char *newval, void *extra);
|
34
|
-
extern bool check_role(char **newval, void **extra, GucSource source);
|
35
|
-
extern void assign_role(const char *newval, void *extra);
|
36
|
-
extern const char *show_role(void);
|
37
|
-
|
38
|
-
#endif /* VARIABLE_H */
|