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,168 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* fd.h
|
4
|
-
* Virtual file descriptor definitions.
|
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/storage/fd.h
|
11
|
-
*
|
12
|
-
*-------------------------------------------------------------------------
|
13
|
-
*/
|
14
|
-
|
15
|
-
/*
|
16
|
-
* calls:
|
17
|
-
*
|
18
|
-
* File {Close, Read, Write, Size, Sync}
|
19
|
-
* {Path Name Open, Allocate, Free} File
|
20
|
-
*
|
21
|
-
* These are NOT JUST RENAMINGS OF THE UNIX ROUTINES.
|
22
|
-
* Use them for all file activity...
|
23
|
-
*
|
24
|
-
* File fd;
|
25
|
-
* fd = PathNameOpenFile("foo", O_RDONLY);
|
26
|
-
*
|
27
|
-
* AllocateFile();
|
28
|
-
* FreeFile();
|
29
|
-
*
|
30
|
-
* Use AllocateFile, not fopen, if you need a stdio file (FILE*); then
|
31
|
-
* use FreeFile, not fclose, to close it. AVOID using stdio for files
|
32
|
-
* that you intend to hold open for any length of time, since there is
|
33
|
-
* no way for them to share kernel file descriptors with other files.
|
34
|
-
*
|
35
|
-
* Likewise, use AllocateDir/FreeDir, not opendir/closedir, to allocate
|
36
|
-
* open directories (DIR*), and OpenTransientFile/CloseTransientFile for an
|
37
|
-
* unbuffered file descriptor.
|
38
|
-
*
|
39
|
-
* If you really can't use any of the above, at least call AcquireExternalFD
|
40
|
-
* or ReserveExternalFD to report any file descriptors that are held for any
|
41
|
-
* length of time. Failure to do so risks unnecessary EMFILE errors.
|
42
|
-
*/
|
43
|
-
#ifndef FD_H
|
44
|
-
#define FD_H
|
45
|
-
|
46
|
-
#include <dirent.h>
|
47
|
-
|
48
|
-
|
49
|
-
typedef int File;
|
50
|
-
|
51
|
-
|
52
|
-
/* GUC parameter */
|
53
|
-
extern PGDLLIMPORT int max_files_per_process;
|
54
|
-
extern PGDLLIMPORT bool data_sync_retry;
|
55
|
-
|
56
|
-
/*
|
57
|
-
* This is private to fd.c, but exported for save/restore_backend_variables()
|
58
|
-
*/
|
59
|
-
extern int max_safe_fds;
|
60
|
-
|
61
|
-
/*
|
62
|
-
* On Windows, we have to interpret EACCES as possibly meaning the same as
|
63
|
-
* ENOENT, because if a file is unlinked-but-not-yet-gone on that platform,
|
64
|
-
* that's what you get. Ugh. This code is designed so that we don't
|
65
|
-
* actually believe these cases are okay without further evidence (namely,
|
66
|
-
* a pending fsync request getting canceled ... see ProcessSyncRequests).
|
67
|
-
*/
|
68
|
-
#ifndef WIN32
|
69
|
-
#define FILE_POSSIBLY_DELETED(err) ((err) == ENOENT)
|
70
|
-
#else
|
71
|
-
#define FILE_POSSIBLY_DELETED(err) ((err) == ENOENT || (err) == EACCES)
|
72
|
-
#endif
|
73
|
-
|
74
|
-
/*
|
75
|
-
* prototypes for functions in fd.c
|
76
|
-
*/
|
77
|
-
|
78
|
-
/* Operations on virtual Files --- equivalent to Unix kernel file ops */
|
79
|
-
extern File PathNameOpenFile(const char *fileName, int fileFlags);
|
80
|
-
extern File PathNameOpenFilePerm(const char *fileName, int fileFlags, mode_t fileMode);
|
81
|
-
extern File OpenTemporaryFile(bool interXact);
|
82
|
-
extern void FileClose(File file);
|
83
|
-
extern int FilePrefetch(File file, off_t offset, int amount, uint32 wait_event_info);
|
84
|
-
extern int FileRead(File file, char *buffer, int amount, off_t offset, uint32 wait_event_info);
|
85
|
-
extern int FileWrite(File file, char *buffer, int amount, off_t offset, uint32 wait_event_info);
|
86
|
-
extern int FileSync(File file, uint32 wait_event_info);
|
87
|
-
extern off_t FileSize(File file);
|
88
|
-
extern int FileTruncate(File file, off_t offset, uint32 wait_event_info);
|
89
|
-
extern void FileWriteback(File file, off_t offset, off_t nbytes, uint32 wait_event_info);
|
90
|
-
extern char *FilePathName(File file);
|
91
|
-
extern int FileGetRawDesc(File file);
|
92
|
-
extern int FileGetRawFlags(File file);
|
93
|
-
extern mode_t FileGetRawMode(File file);
|
94
|
-
|
95
|
-
/* Operations used for sharing named temporary files */
|
96
|
-
extern File PathNameCreateTemporaryFile(const char *name, bool error_on_failure);
|
97
|
-
extern File PathNameOpenTemporaryFile(const char *name);
|
98
|
-
extern bool PathNameDeleteTemporaryFile(const char *name, bool error_on_failure);
|
99
|
-
extern void PathNameCreateTemporaryDir(const char *base, const char *name);
|
100
|
-
extern void PathNameDeleteTemporaryDir(const char *name);
|
101
|
-
extern void TempTablespacePath(char *path, Oid tablespace);
|
102
|
-
|
103
|
-
/* Operations that allow use of regular stdio --- USE WITH CAUTION */
|
104
|
-
extern FILE *AllocateFile(const char *name, const char *mode);
|
105
|
-
extern int FreeFile(FILE *file);
|
106
|
-
|
107
|
-
/* Operations that allow use of pipe streams (popen/pclose) */
|
108
|
-
extern FILE *OpenPipeStream(const char *command, const char *mode);
|
109
|
-
extern int ClosePipeStream(FILE *file);
|
110
|
-
|
111
|
-
/* Operations to allow use of the <dirent.h> library routines */
|
112
|
-
extern DIR *AllocateDir(const char *dirname);
|
113
|
-
extern struct dirent *ReadDir(DIR *dir, const char *dirname);
|
114
|
-
extern struct dirent *ReadDirExtended(DIR *dir, const char *dirname,
|
115
|
-
int elevel);
|
116
|
-
extern int FreeDir(DIR *dir);
|
117
|
-
|
118
|
-
/* Operations to allow use of a plain kernel FD, with automatic cleanup */
|
119
|
-
extern int OpenTransientFile(const char *fileName, int fileFlags);
|
120
|
-
extern int OpenTransientFilePerm(const char *fileName, int fileFlags, mode_t fileMode);
|
121
|
-
extern int CloseTransientFile(int fd);
|
122
|
-
|
123
|
-
/* If you've really really gotta have a plain kernel FD, use this */
|
124
|
-
extern int BasicOpenFile(const char *fileName, int fileFlags);
|
125
|
-
extern int BasicOpenFilePerm(const char *fileName, int fileFlags, mode_t fileMode);
|
126
|
-
|
127
|
-
/* Use these for other cases, and also for long-lived BasicOpenFile FDs */
|
128
|
-
extern bool AcquireExternalFD(void);
|
129
|
-
extern void ReserveExternalFD(void);
|
130
|
-
extern void ReleaseExternalFD(void);
|
131
|
-
|
132
|
-
/* Make a directory with default permissions */
|
133
|
-
extern int MakePGDirectory(const char *directoryName);
|
134
|
-
|
135
|
-
/* Miscellaneous support routines */
|
136
|
-
extern void InitFileAccess(void);
|
137
|
-
extern void set_max_safe_fds(void);
|
138
|
-
extern void closeAllVfds(void);
|
139
|
-
extern void SetTempTablespaces(Oid *tableSpaces, int numSpaces);
|
140
|
-
extern bool TempTablespacesAreSet(void);
|
141
|
-
extern int GetTempTablespaces(Oid *tableSpaces, int numSpaces);
|
142
|
-
extern Oid GetNextTempTableSpace(void);
|
143
|
-
extern void AtEOXact_Files(bool isCommit);
|
144
|
-
extern void AtEOSubXact_Files(bool isCommit, SubTransactionId mySubid,
|
145
|
-
SubTransactionId parentSubid);
|
146
|
-
extern void RemovePgTempFiles(void);
|
147
|
-
extern void RemovePgTempFilesInDir(const char *tmpdirname, bool missing_ok,
|
148
|
-
bool unlink_all);
|
149
|
-
extern bool looks_like_temp_rel_name(const char *name);
|
150
|
-
|
151
|
-
extern int pg_fsync(int fd);
|
152
|
-
extern int pg_fsync_no_writethrough(int fd);
|
153
|
-
extern int pg_fsync_writethrough(int fd);
|
154
|
-
extern int pg_fdatasync(int fd);
|
155
|
-
extern void pg_flush_data(int fd, off_t offset, off_t amount);
|
156
|
-
extern void fsync_fname(const char *fname, bool isdir);
|
157
|
-
extern int fsync_fname_ext(const char *fname, bool isdir, bool ignore_perm, int elevel);
|
158
|
-
extern int durable_rename(const char *oldfile, const char *newfile, int loglevel);
|
159
|
-
extern int durable_unlink(const char *fname, int loglevel);
|
160
|
-
extern int durable_rename_excl(const char *oldfile, const char *newfile, int loglevel);
|
161
|
-
extern void SyncDataDirectory(void);
|
162
|
-
extern int data_sync_elevel(int elevel);
|
163
|
-
|
164
|
-
/* Filename components */
|
165
|
-
#define PG_TEMP_FILES_DIR "pgsql_tmp"
|
166
|
-
#define PG_TEMP_FILE_PREFIX "pgsql_tmp"
|
167
|
-
|
168
|
-
#endif /* FD_H */
|
@@ -1,81 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* ipc.h
|
4
|
-
* POSTGRES inter-process communication definitions.
|
5
|
-
*
|
6
|
-
* This file is misnamed, as it no longer has much of anything directly
|
7
|
-
* to do with IPC. The functionality here is concerned with managing
|
8
|
-
* exit-time cleanup for either a postmaster or a backend.
|
9
|
-
*
|
10
|
-
*
|
11
|
-
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
12
|
-
* Portions Copyright (c) 1994, Regents of the University of California
|
13
|
-
*
|
14
|
-
* src/include/storage/ipc.h
|
15
|
-
*
|
16
|
-
*-------------------------------------------------------------------------
|
17
|
-
*/
|
18
|
-
#ifndef IPC_H
|
19
|
-
#define IPC_H
|
20
|
-
|
21
|
-
typedef void (*pg_on_exit_callback) (int code, Datum arg);
|
22
|
-
typedef void (*shmem_startup_hook_type) (void);
|
23
|
-
|
24
|
-
/*----------
|
25
|
-
* API for handling cleanup that must occur during either ereport(ERROR)
|
26
|
-
* or ereport(FATAL) exits from a block of code. (Typical examples are
|
27
|
-
* undoing transient changes to shared-memory state.)
|
28
|
-
*
|
29
|
-
* PG_ENSURE_ERROR_CLEANUP(cleanup_function, arg);
|
30
|
-
* {
|
31
|
-
* ... code that might throw ereport(ERROR) or ereport(FATAL) ...
|
32
|
-
* }
|
33
|
-
* PG_END_ENSURE_ERROR_CLEANUP(cleanup_function, arg);
|
34
|
-
*
|
35
|
-
* where the cleanup code is in a function declared per pg_on_exit_callback.
|
36
|
-
* The Datum value "arg" can carry any information the cleanup function
|
37
|
-
* needs.
|
38
|
-
*
|
39
|
-
* This construct ensures that cleanup_function() will be called during
|
40
|
-
* either ERROR or FATAL exits. It will not be called on successful
|
41
|
-
* exit from the controlled code. (If you want it to happen then too,
|
42
|
-
* call the function yourself from just after the construct.)
|
43
|
-
*
|
44
|
-
* Note: the macro arguments are multiply evaluated, so avoid side-effects.
|
45
|
-
*----------
|
46
|
-
*/
|
47
|
-
#define PG_ENSURE_ERROR_CLEANUP(cleanup_function, arg) \
|
48
|
-
do { \
|
49
|
-
before_shmem_exit(cleanup_function, arg); \
|
50
|
-
PG_TRY()
|
51
|
-
|
52
|
-
#define PG_END_ENSURE_ERROR_CLEANUP(cleanup_function, arg) \
|
53
|
-
cancel_before_shmem_exit(cleanup_function, arg); \
|
54
|
-
PG_CATCH(); \
|
55
|
-
{ \
|
56
|
-
cancel_before_shmem_exit(cleanup_function, arg); \
|
57
|
-
cleanup_function (0, arg); \
|
58
|
-
PG_RE_THROW(); \
|
59
|
-
} \
|
60
|
-
PG_END_TRY(); \
|
61
|
-
} while (0)
|
62
|
-
|
63
|
-
|
64
|
-
/* ipc.c */
|
65
|
-
extern PGDLLIMPORT __thread bool proc_exit_inprogress;
|
66
|
-
extern PGDLLIMPORT bool shmem_exit_inprogress;
|
67
|
-
|
68
|
-
extern void proc_exit(int code) pg_attribute_noreturn();
|
69
|
-
extern void shmem_exit(int code);
|
70
|
-
extern void on_proc_exit(pg_on_exit_callback function, Datum arg);
|
71
|
-
extern void on_shmem_exit(pg_on_exit_callback function, Datum arg);
|
72
|
-
extern void before_shmem_exit(pg_on_exit_callback function, Datum arg);
|
73
|
-
extern void cancel_before_shmem_exit(pg_on_exit_callback function, Datum arg);
|
74
|
-
extern void on_exit_reset(void);
|
75
|
-
|
76
|
-
/* ipci.c */
|
77
|
-
extern PGDLLIMPORT shmem_startup_hook_type shmem_startup_hook;
|
78
|
-
|
79
|
-
extern void CreateSharedMemoryAndSemaphores(void);
|
80
|
-
|
81
|
-
#endif /* IPC_H */
|
@@ -1,19 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* item.h
|
4
|
-
* POSTGRES disk item definitions.
|
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/storage/item.h
|
11
|
-
*
|
12
|
-
*-------------------------------------------------------------------------
|
13
|
-
*/
|
14
|
-
#ifndef ITEM_H
|
15
|
-
#define ITEM_H
|
16
|
-
|
17
|
-
typedef Pointer Item;
|
18
|
-
|
19
|
-
#endif /* ITEM_H */
|
@@ -1,184 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* itemid.h
|
4
|
-
* Standard POSTGRES buffer page item identifier/line pointer definitions.
|
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/storage/itemid.h
|
11
|
-
*
|
12
|
-
*-------------------------------------------------------------------------
|
13
|
-
*/
|
14
|
-
#ifndef ITEMID_H
|
15
|
-
#define ITEMID_H
|
16
|
-
|
17
|
-
/*
|
18
|
-
* A line pointer on a buffer page. See buffer page definitions and comments
|
19
|
-
* for an explanation of how line pointers are used.
|
20
|
-
*
|
21
|
-
* In some cases a line pointer is "in use" but does not have any associated
|
22
|
-
* storage on the page. By convention, lp_len == 0 in every line pointer
|
23
|
-
* that does not have storage, independently of its lp_flags state.
|
24
|
-
*/
|
25
|
-
typedef struct ItemIdData
|
26
|
-
{
|
27
|
-
unsigned lp_off:15, /* offset to tuple (from start of page) */
|
28
|
-
lp_flags:2, /* state of line pointer, see below */
|
29
|
-
lp_len:15; /* byte length of tuple */
|
30
|
-
} ItemIdData;
|
31
|
-
|
32
|
-
typedef ItemIdData *ItemId;
|
33
|
-
|
34
|
-
/*
|
35
|
-
* lp_flags has these possible states. An UNUSED line pointer is available
|
36
|
-
* for immediate re-use, the other states are not.
|
37
|
-
*/
|
38
|
-
#define LP_UNUSED 0 /* unused (should always have lp_len=0) */
|
39
|
-
#define LP_NORMAL 1 /* used (should always have lp_len>0) */
|
40
|
-
#define LP_REDIRECT 2 /* HOT redirect (should have lp_len=0) */
|
41
|
-
#define LP_DEAD 3 /* dead, may or may not have storage */
|
42
|
-
|
43
|
-
/*
|
44
|
-
* Item offsets and lengths are represented by these types when
|
45
|
-
* they're not actually stored in an ItemIdData.
|
46
|
-
*/
|
47
|
-
typedef uint16 ItemOffset;
|
48
|
-
typedef uint16 ItemLength;
|
49
|
-
|
50
|
-
|
51
|
-
/* ----------------
|
52
|
-
* support macros
|
53
|
-
* ----------------
|
54
|
-
*/
|
55
|
-
|
56
|
-
/*
|
57
|
-
* ItemIdGetLength
|
58
|
-
*/
|
59
|
-
#define ItemIdGetLength(itemId) \
|
60
|
-
((itemId)->lp_len)
|
61
|
-
|
62
|
-
/*
|
63
|
-
* ItemIdGetOffset
|
64
|
-
*/
|
65
|
-
#define ItemIdGetOffset(itemId) \
|
66
|
-
((itemId)->lp_off)
|
67
|
-
|
68
|
-
/*
|
69
|
-
* ItemIdGetFlags
|
70
|
-
*/
|
71
|
-
#define ItemIdGetFlags(itemId) \
|
72
|
-
((itemId)->lp_flags)
|
73
|
-
|
74
|
-
/*
|
75
|
-
* ItemIdGetRedirect
|
76
|
-
* In a REDIRECT pointer, lp_off holds offset number for next line pointer
|
77
|
-
*/
|
78
|
-
#define ItemIdGetRedirect(itemId) \
|
79
|
-
((itemId)->lp_off)
|
80
|
-
|
81
|
-
/*
|
82
|
-
* ItemIdIsValid
|
83
|
-
* True iff item identifier is valid.
|
84
|
-
* This is a pretty weak test, probably useful only in Asserts.
|
85
|
-
*/
|
86
|
-
#define ItemIdIsValid(itemId) PointerIsValid(itemId)
|
87
|
-
|
88
|
-
/*
|
89
|
-
* ItemIdIsUsed
|
90
|
-
* True iff item identifier is in use.
|
91
|
-
*/
|
92
|
-
#define ItemIdIsUsed(itemId) \
|
93
|
-
((itemId)->lp_flags != LP_UNUSED)
|
94
|
-
|
95
|
-
/*
|
96
|
-
* ItemIdIsNormal
|
97
|
-
* True iff item identifier is in state NORMAL.
|
98
|
-
*/
|
99
|
-
#define ItemIdIsNormal(itemId) \
|
100
|
-
((itemId)->lp_flags == LP_NORMAL)
|
101
|
-
|
102
|
-
/*
|
103
|
-
* ItemIdIsRedirected
|
104
|
-
* True iff item identifier is in state REDIRECT.
|
105
|
-
*/
|
106
|
-
#define ItemIdIsRedirected(itemId) \
|
107
|
-
((itemId)->lp_flags == LP_REDIRECT)
|
108
|
-
|
109
|
-
/*
|
110
|
-
* ItemIdIsDead
|
111
|
-
* True iff item identifier is in state DEAD.
|
112
|
-
*/
|
113
|
-
#define ItemIdIsDead(itemId) \
|
114
|
-
((itemId)->lp_flags == LP_DEAD)
|
115
|
-
|
116
|
-
/*
|
117
|
-
* ItemIdHasStorage
|
118
|
-
* True iff item identifier has associated storage.
|
119
|
-
*/
|
120
|
-
#define ItemIdHasStorage(itemId) \
|
121
|
-
((itemId)->lp_len != 0)
|
122
|
-
|
123
|
-
/*
|
124
|
-
* ItemIdSetUnused
|
125
|
-
* Set the item identifier to be UNUSED, with no storage.
|
126
|
-
* Beware of multiple evaluations of itemId!
|
127
|
-
*/
|
128
|
-
#define ItemIdSetUnused(itemId) \
|
129
|
-
( \
|
130
|
-
(itemId)->lp_flags = LP_UNUSED, \
|
131
|
-
(itemId)->lp_off = 0, \
|
132
|
-
(itemId)->lp_len = 0 \
|
133
|
-
)
|
134
|
-
|
135
|
-
/*
|
136
|
-
* ItemIdSetNormal
|
137
|
-
* Set the item identifier to be NORMAL, with the specified storage.
|
138
|
-
* Beware of multiple evaluations of itemId!
|
139
|
-
*/
|
140
|
-
#define ItemIdSetNormal(itemId, off, len) \
|
141
|
-
( \
|
142
|
-
(itemId)->lp_flags = LP_NORMAL, \
|
143
|
-
(itemId)->lp_off = (off), \
|
144
|
-
(itemId)->lp_len = (len) \
|
145
|
-
)
|
146
|
-
|
147
|
-
/*
|
148
|
-
* ItemIdSetRedirect
|
149
|
-
* Set the item identifier to be REDIRECT, with the specified link.
|
150
|
-
* Beware of multiple evaluations of itemId!
|
151
|
-
*/
|
152
|
-
#define ItemIdSetRedirect(itemId, link) \
|
153
|
-
( \
|
154
|
-
(itemId)->lp_flags = LP_REDIRECT, \
|
155
|
-
(itemId)->lp_off = (link), \
|
156
|
-
(itemId)->lp_len = 0 \
|
157
|
-
)
|
158
|
-
|
159
|
-
/*
|
160
|
-
* ItemIdSetDead
|
161
|
-
* Set the item identifier to be DEAD, with no storage.
|
162
|
-
* Beware of multiple evaluations of itemId!
|
163
|
-
*/
|
164
|
-
#define ItemIdSetDead(itemId) \
|
165
|
-
( \
|
166
|
-
(itemId)->lp_flags = LP_DEAD, \
|
167
|
-
(itemId)->lp_off = 0, \
|
168
|
-
(itemId)->lp_len = 0 \
|
169
|
-
)
|
170
|
-
|
171
|
-
/*
|
172
|
-
* ItemIdMarkDead
|
173
|
-
* Set the item identifier to be DEAD, keeping its existing storage.
|
174
|
-
*
|
175
|
-
* Note: in indexes, this is used as if it were a hint-bit mechanism;
|
176
|
-
* we trust that multiple processors can do this in parallel and get
|
177
|
-
* the same result.
|
178
|
-
*/
|
179
|
-
#define ItemIdMarkDead(itemId) \
|
180
|
-
( \
|
181
|
-
(itemId)->lp_flags = LP_DEAD \
|
182
|
-
)
|
183
|
-
|
184
|
-
#endif /* ITEMID_H */
|
@@ -1,206 +0,0 @@
|
|
1
|
-
/*-------------------------------------------------------------------------
|
2
|
-
*
|
3
|
-
* itemptr.h
|
4
|
-
* POSTGRES disk item pointer definitions.
|
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/storage/itemptr.h
|
11
|
-
*
|
12
|
-
*-------------------------------------------------------------------------
|
13
|
-
*/
|
14
|
-
#ifndef ITEMPTR_H
|
15
|
-
#define ITEMPTR_H
|
16
|
-
|
17
|
-
#include "storage/block.h"
|
18
|
-
#include "storage/off.h"
|
19
|
-
|
20
|
-
/*
|
21
|
-
* ItemPointer:
|
22
|
-
*
|
23
|
-
* This is a pointer to an item within a disk page of a known file
|
24
|
-
* (for example, a cross-link from an index to its parent table).
|
25
|
-
* ip_blkid tells us which block, ip_posid tells us which entry in
|
26
|
-
* the linp (ItemIdData) array we want.
|
27
|
-
*
|
28
|
-
* Note: because there is an item pointer in each tuple header and index
|
29
|
-
* tuple header on disk, it's very important not to waste space with
|
30
|
-
* structure padding bytes. The struct is designed to be six bytes long
|
31
|
-
* (it contains three int16 fields) but a few compilers will pad it to
|
32
|
-
* eight bytes unless coerced. We apply appropriate persuasion where
|
33
|
-
* possible. If your compiler can't be made to play along, you'll waste
|
34
|
-
* lots of space.
|
35
|
-
*/
|
36
|
-
typedef struct ItemPointerData
|
37
|
-
{
|
38
|
-
BlockIdData ip_blkid;
|
39
|
-
OffsetNumber ip_posid;
|
40
|
-
}
|
41
|
-
|
42
|
-
/* If compiler understands packed and aligned pragmas, use those */
|
43
|
-
#if defined(pg_attribute_packed) && defined(pg_attribute_aligned)
|
44
|
-
pg_attribute_packed()
|
45
|
-
pg_attribute_aligned(2)
|
46
|
-
#endif
|
47
|
-
ItemPointerData;
|
48
|
-
|
49
|
-
typedef ItemPointerData *ItemPointer;
|
50
|
-
|
51
|
-
/* ----------------
|
52
|
-
* special values used in heap tuples (t_ctid)
|
53
|
-
* ----------------
|
54
|
-
*/
|
55
|
-
|
56
|
-
/*
|
57
|
-
* If a heap tuple holds a speculative insertion token rather than a real
|
58
|
-
* TID, ip_posid is set to SpecTokenOffsetNumber, and the token is stored in
|
59
|
-
* ip_blkid. SpecTokenOffsetNumber must be higher than MaxOffsetNumber, so
|
60
|
-
* that it can be distinguished from a valid offset number in a regular item
|
61
|
-
* pointer.
|
62
|
-
*/
|
63
|
-
#define SpecTokenOffsetNumber 0xfffe
|
64
|
-
|
65
|
-
/*
|
66
|
-
* When a tuple is moved to a different partition by UPDATE, the t_ctid of
|
67
|
-
* the old tuple version is set to this magic value.
|
68
|
-
*/
|
69
|
-
#define MovedPartitionsOffsetNumber 0xfffd
|
70
|
-
#define MovedPartitionsBlockNumber InvalidBlockNumber
|
71
|
-
|
72
|
-
|
73
|
-
/* ----------------
|
74
|
-
* support macros
|
75
|
-
* ----------------
|
76
|
-
*/
|
77
|
-
|
78
|
-
/*
|
79
|
-
* ItemPointerIsValid
|
80
|
-
* True iff the disk item pointer is not NULL.
|
81
|
-
*/
|
82
|
-
#define ItemPointerIsValid(pointer) \
|
83
|
-
((bool) (PointerIsValid(pointer) && ((pointer)->ip_posid != 0)))
|
84
|
-
|
85
|
-
/*
|
86
|
-
* ItemPointerGetBlockNumberNoCheck
|
87
|
-
* Returns the block number of a disk item pointer.
|
88
|
-
*/
|
89
|
-
#define ItemPointerGetBlockNumberNoCheck(pointer) \
|
90
|
-
( \
|
91
|
-
BlockIdGetBlockNumber(&(pointer)->ip_blkid) \
|
92
|
-
)
|
93
|
-
|
94
|
-
/*
|
95
|
-
* ItemPointerGetBlockNumber
|
96
|
-
* As above, but verifies that the item pointer looks valid.
|
97
|
-
*/
|
98
|
-
#define ItemPointerGetBlockNumber(pointer) \
|
99
|
-
( \
|
100
|
-
AssertMacro(ItemPointerIsValid(pointer)), \
|
101
|
-
ItemPointerGetBlockNumberNoCheck(pointer) \
|
102
|
-
)
|
103
|
-
|
104
|
-
/*
|
105
|
-
* ItemPointerGetOffsetNumberNoCheck
|
106
|
-
* Returns the offset number of a disk item pointer.
|
107
|
-
*/
|
108
|
-
#define ItemPointerGetOffsetNumberNoCheck(pointer) \
|
109
|
-
( \
|
110
|
-
(pointer)->ip_posid \
|
111
|
-
)
|
112
|
-
|
113
|
-
/*
|
114
|
-
* ItemPointerGetOffsetNumber
|
115
|
-
* As above, but verifies that the item pointer looks valid.
|
116
|
-
*/
|
117
|
-
#define ItemPointerGetOffsetNumber(pointer) \
|
118
|
-
( \
|
119
|
-
AssertMacro(ItemPointerIsValid(pointer)), \
|
120
|
-
ItemPointerGetOffsetNumberNoCheck(pointer) \
|
121
|
-
)
|
122
|
-
|
123
|
-
/*
|
124
|
-
* ItemPointerSet
|
125
|
-
* Sets a disk item pointer to the specified block and offset.
|
126
|
-
*/
|
127
|
-
#define ItemPointerSet(pointer, blockNumber, offNum) \
|
128
|
-
( \
|
129
|
-
AssertMacro(PointerIsValid(pointer)), \
|
130
|
-
BlockIdSet(&((pointer)->ip_blkid), blockNumber), \
|
131
|
-
(pointer)->ip_posid = offNum \
|
132
|
-
)
|
133
|
-
|
134
|
-
/*
|
135
|
-
* ItemPointerSetBlockNumber
|
136
|
-
* Sets a disk item pointer to the specified block.
|
137
|
-
*/
|
138
|
-
#define ItemPointerSetBlockNumber(pointer, blockNumber) \
|
139
|
-
( \
|
140
|
-
AssertMacro(PointerIsValid(pointer)), \
|
141
|
-
BlockIdSet(&((pointer)->ip_blkid), blockNumber) \
|
142
|
-
)
|
143
|
-
|
144
|
-
/*
|
145
|
-
* ItemPointerSetOffsetNumber
|
146
|
-
* Sets a disk item pointer to the specified offset.
|
147
|
-
*/
|
148
|
-
#define ItemPointerSetOffsetNumber(pointer, offsetNumber) \
|
149
|
-
( \
|
150
|
-
AssertMacro(PointerIsValid(pointer)), \
|
151
|
-
(pointer)->ip_posid = (offsetNumber) \
|
152
|
-
)
|
153
|
-
|
154
|
-
/*
|
155
|
-
* ItemPointerCopy
|
156
|
-
* Copies the contents of one disk item pointer to another.
|
157
|
-
*
|
158
|
-
* Should there ever be padding in an ItemPointer this would need to be handled
|
159
|
-
* differently as it's used as hash key.
|
160
|
-
*/
|
161
|
-
#define ItemPointerCopy(fromPointer, toPointer) \
|
162
|
-
( \
|
163
|
-
AssertMacro(PointerIsValid(toPointer)), \
|
164
|
-
AssertMacro(PointerIsValid(fromPointer)), \
|
165
|
-
*(toPointer) = *(fromPointer) \
|
166
|
-
)
|
167
|
-
|
168
|
-
/*
|
169
|
-
* ItemPointerSetInvalid
|
170
|
-
* Sets a disk item pointer to be invalid.
|
171
|
-
*/
|
172
|
-
#define ItemPointerSetInvalid(pointer) \
|
173
|
-
( \
|
174
|
-
AssertMacro(PointerIsValid(pointer)), \
|
175
|
-
BlockIdSet(&((pointer)->ip_blkid), InvalidBlockNumber), \
|
176
|
-
(pointer)->ip_posid = InvalidOffsetNumber \
|
177
|
-
)
|
178
|
-
|
179
|
-
/*
|
180
|
-
* ItemPointerIndicatesMovedPartitions
|
181
|
-
* True iff the block number indicates the tuple has moved to another
|
182
|
-
* partition.
|
183
|
-
*/
|
184
|
-
#define ItemPointerIndicatesMovedPartitions(pointer) \
|
185
|
-
( \
|
186
|
-
ItemPointerGetOffsetNumber(pointer) == MovedPartitionsOffsetNumber && \
|
187
|
-
ItemPointerGetBlockNumberNoCheck(pointer) == MovedPartitionsBlockNumber \
|
188
|
-
)
|
189
|
-
|
190
|
-
/*
|
191
|
-
* ItemPointerSetMovedPartitions
|
192
|
-
* Indicate that the item referenced by the itempointer has moved into a
|
193
|
-
* different partition.
|
194
|
-
*/
|
195
|
-
#define ItemPointerSetMovedPartitions(pointer) \
|
196
|
-
ItemPointerSet((pointer), MovedPartitionsBlockNumber, MovedPartitionsOffsetNumber)
|
197
|
-
|
198
|
-
/* ----------------
|
199
|
-
* externs
|
200
|
-
* ----------------
|
201
|
-
*/
|
202
|
-
|
203
|
-
extern bool ItemPointerEquals(ItemPointer pointer1, ItemPointer pointer2);
|
204
|
-
extern int32 ItemPointerCompare(ItemPointer arg1, ItemPointer arg2);
|
205
|
-
|
206
|
-
#endif /* ITEMPTR_H */
|