pg_query 4.2.1 → 5.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 +31 -0
- data/README.md +6 -8
- data/Rakefile +5 -6
- data/ext/pg_query/extconf.rb +14 -4
- data/ext/pg_query/include/pg_query.h +27 -3
- data/ext/pg_query/include/pg_query_enum_defs.c +311 -149
- data/ext/pg_query/include/pg_query_fingerprint_conds.c +545 -489
- data/ext/pg_query/include/pg_query_fingerprint_defs.c +5092 -4432
- data/ext/pg_query/include/pg_query_outfuncs_conds.c +385 -343
- data/ext/pg_query/include/pg_query_outfuncs_defs.c +1294 -1161
- data/ext/pg_query/include/pg_query_readfuncs_conds.c +137 -123
- data/ext/pg_query/include/pg_query_readfuncs_defs.c +1657 -1496
- data/ext/pg_query/include/{access → postgres/access}/amapi.h +3 -1
- data/ext/pg_query/include/{access → postgres/access}/attmap.h +5 -3
- data/ext/pg_query/include/{access → postgres/access}/attnum.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/clog.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/commit_ts.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/detoast.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/genam.h +7 -5
- data/ext/pg_query/include/{access → postgres/access}/gin.h +16 -3
- data/ext/pg_query/include/{access → postgres/access}/htup.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/htup_details.h +6 -2
- data/ext/pg_query/include/{access → postgres/access}/itup.h +61 -58
- data/ext/pg_query/include/{access → postgres/access}/parallel.h +2 -2
- data/ext/pg_query/include/{access → postgres/access}/printtup.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/relation.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/relscan.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/rmgrlist.h +2 -2
- data/ext/pg_query/include/{access → postgres/access}/sdir.h +12 -3
- data/ext/pg_query/include/{access → postgres/access}/skey.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/stratnum.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/sysattr.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/table.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/tableam.h +68 -45
- data/ext/pg_query/include/{access → postgres/access}/toast_compression.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/transam.h +1 -1
- data/ext/pg_query/include/postgres/access/tsmapi.h +82 -0
- data/ext/pg_query/include/{access → postgres/access}/tupconvert.h +5 -2
- data/ext/pg_query/include/{access → postgres/access}/tupdesc.h +2 -2
- data/ext/pg_query/include/{access → postgres/access}/tupmacs.h +58 -98
- data/ext/pg_query/include/{access → postgres/access}/twophase.h +2 -2
- data/ext/pg_query/include/{access → postgres/access}/xact.h +25 -18
- data/ext/pg_query/include/{access → postgres/access}/xlog.h +15 -16
- data/ext/pg_query/include/{access → postgres/access}/xlog_internal.h +100 -62
- data/ext/pg_query/include/postgres/access/xlogbackup.h +41 -0
- data/ext/pg_query/include/{access → postgres/access}/xlogdefs.h +6 -25
- data/ext/pg_query/include/{access → postgres/access}/xlogprefetcher.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/xlogreader.h +7 -6
- data/ext/pg_query/include/{access → postgres/access}/xlogrecord.h +17 -5
- data/ext/pg_query/include/{access → postgres/access}/xlogrecovery.h +4 -3
- data/ext/pg_query/include/postgres/archive/archive_module.h +59 -0
- data/ext/pg_query/include/{c.h → postgres/c.h} +144 -156
- data/ext/pg_query/include/{catalog → postgres/catalog}/catalog.h +4 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/catversion.h +6 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/dependency.h +5 -4
- data/ext/pg_query/include/{catalog → postgres/catalog}/genbki.h +7 -6
- data/ext/pg_query/include/{catalog → postgres/catalog}/index.h +4 -4
- data/ext/pg_query/include/{catalog → postgres/catalog}/indexing.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/namespace.h +2 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/objectaccess.h +10 -8
- data/ext/pg_query/include/{catalog → postgres/catalog}/objectaddress.h +3 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute.h +19 -17
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute_d.h +19 -19
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation_d.h +4 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint.h +2 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_control.h +9 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion.h +2 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion_d.h +1 -1
- data/ext/pg_query/include/postgres/catalog/pg_database.h +124 -0
- data/ext/pg_query/include/postgres/catalog/pg_database_d.h +52 -0
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily.h +3 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily_d.h +4 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication.h +2 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type_d.h +1 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/storage.h +6 -6
- data/ext/pg_query/include/{commands → postgres/commands}/async.h +1 -1
- data/ext/pg_query/include/{commands → postgres/commands}/dbcommands.h +2 -1
- data/ext/pg_query/include/{commands → postgres/commands}/defrem.h +2 -1
- data/ext/pg_query/include/{commands → postgres/commands}/event_trigger.h +1 -1
- data/ext/pg_query/include/{commands → postgres/commands}/explain.h +3 -1
- data/ext/pg_query/include/{commands → postgres/commands}/prepare.h +1 -1
- data/ext/pg_query/include/{commands → postgres/commands}/tablespace.h +4 -4
- data/ext/pg_query/include/{commands → postgres/commands}/trigger.h +15 -14
- data/ext/pg_query/include/{commands → postgres/commands}/user.h +9 -3
- data/ext/pg_query/include/{commands → postgres/commands}/vacuum.h +60 -14
- data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
- data/ext/pg_query/include/{common → postgres/common}/file_perm.h +1 -1
- data/ext/pg_query/include/{common → postgres/common}/hashfn.h +1 -1
- data/ext/pg_query/include/postgres/common/int.h +437 -0
- data/ext/pg_query/include/{common → postgres/common}/keywords.h +1 -1
- data/ext/pg_query/include/{common → postgres/common}/kwlookup.h +2 -2
- data/ext/pg_query/include/{common → postgres/common}/pg_prng.h +3 -2
- data/ext/pg_query/include/{common → postgres/common}/relpath.h +20 -13
- 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/{common → postgres/common}/string.h +5 -3
- data/ext/pg_query/include/{common → postgres/common}/unicode_east_asian_fw_table.h +10 -10
- data/ext/pg_query/include/{common/unicode_combining_table.h → postgres/common/unicode_nonspacing_table.h} +31 -13
- data/ext/pg_query/include/postgres/copyfuncs.funcs.c +5013 -0
- data/ext/pg_query/include/postgres/copyfuncs.switch.c +938 -0
- data/ext/pg_query/include/{datatype → postgres/datatype}/timestamp.h +11 -4
- data/ext/pg_query/include/postgres/equalfuncs.funcs.c +3097 -0
- data/ext/pg_query/include/postgres/equalfuncs.switch.c +785 -0
- data/ext/pg_query/include/{executor → postgres/executor}/execdesc.h +1 -1
- data/ext/pg_query/include/{executor → postgres/executor}/executor.h +34 -17
- data/ext/pg_query/include/{executor → postgres/executor}/functions.h +1 -1
- data/ext/pg_query/include/{executor → postgres/executor}/instrument.h +1 -1
- data/ext/pg_query/include/{executor → postgres/executor}/spi.h +2 -2
- data/ext/pg_query/include/{executor → postgres/executor}/tablefunc.h +1 -1
- data/ext/pg_query/include/{executor → postgres/executor}/tuptable.h +18 -11
- data/ext/pg_query/include/{fmgr.h → postgres/fmgr.h} +21 -2
- data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
- data/ext/pg_query/include/{funcapi.h → postgres/funcapi.h} +12 -12
- data/ext/pg_query/include/postgres/gram.h +1127 -0
- data/ext/pg_query/include/{parser → postgres}/gramparse.h +4 -4
- data/ext/pg_query/include/{jit → postgres/jit}/jit.h +2 -2
- data/ext/pg_query/include/postgres/kwlist_d.h +1119 -0
- data/ext/pg_query/include/{lib → postgres/lib}/dshash.h +4 -1
- data/ext/pg_query/include/{lib → postgres/lib}/ilist.h +435 -22
- data/ext/pg_query/include/{lib → postgres/lib}/pairingheap.h +1 -1
- data/ext/pg_query/include/{lib → postgres/lib}/simplehash.h +9 -9
- data/ext/pg_query/include/{lib → postgres/lib}/sort_template.h +1 -1
- data/ext/pg_query/include/{lib → postgres/lib}/stringinfo.h +3 -3
- data/ext/pg_query/include/{libpq → postgres/libpq}/auth.h +8 -2
- data/ext/pg_query/include/{libpq → postgres/libpq}/crypt.h +1 -1
- data/ext/pg_query/include/{libpq → postgres/libpq}/hba.h +24 -17
- data/ext/pg_query/include/{libpq → postgres/libpq}/libpq-be.h +36 -25
- data/ext/pg_query/include/{libpq → postgres/libpq}/libpq.h +1 -1
- data/ext/pg_query/include/{libpq → postgres/libpq}/pqcomm.h +10 -41
- data/ext/pg_query/include/{libpq → postgres/libpq}/pqformat.h +2 -2
- data/ext/pg_query/include/{libpq → postgres/libpq}/pqsignal.h +22 -10
- 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/{mb → postgres/mb}/pg_wchar.h +35 -18
- data/ext/pg_query/include/{mb → postgres/mb}/stringinfo_mb.h +1 -1
- data/ext/pg_query/include/{miscadmin.h → postgres/miscadmin.h} +27 -15
- data/ext/pg_query/include/{nodes → postgres/nodes}/bitmapset.h +11 -7
- data/ext/pg_query/include/{nodes → postgres/nodes}/execnodes.h +83 -30
- data/ext/pg_query/include/{nodes → postgres/nodes}/extensible.h +5 -3
- data/ext/pg_query/include/{nodes → postgres/nodes}/lockoptions.h +1 -1
- data/ext/pg_query/include/{nodes → postgres/nodes}/makefuncs.h +14 -2
- data/ext/pg_query/include/{nodes → postgres/nodes}/memnodes.h +7 -4
- data/ext/pg_query/include/postgres/nodes/miscnodes.h +56 -0
- data/ext/pg_query/include/{nodes → postgres/nodes}/nodeFuncs.h +89 -29
- data/ext/pg_query/include/{nodes → postgres/nodes}/nodes.h +96 -511
- data/ext/pg_query/include/postgres/nodes/nodetags.h +471 -0
- data/ext/pg_query/include/{nodes → postgres/nodes}/params.h +3 -3
- data/ext/pg_query/include/{nodes → postgres/nodes}/parsenodes.h +377 -139
- data/ext/pg_query/include/{nodes → postgres/nodes}/pathnodes.h +1090 -440
- data/ext/pg_query/include/{nodes → postgres/nodes}/pg_list.h +30 -7
- data/ext/pg_query/include/{nodes → postgres/nodes}/plannodes.h +367 -124
- data/ext/pg_query/include/{nodes → postgres/nodes}/primnodes.h +670 -222
- data/ext/pg_query/include/{nodes → postgres/nodes}/print.h +1 -1
- data/ext/pg_query/include/{utils → postgres/nodes}/queryjumble.h +5 -7
- data/ext/pg_query/include/postgres/nodes/replnodes.h +111 -0
- data/ext/pg_query/include/postgres/nodes/supportnodes.h +346 -0
- data/ext/pg_query/include/{nodes → postgres/nodes}/tidbitmap.h +1 -1
- data/ext/pg_query/include/{nodes → postgres/nodes}/value.h +12 -2
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/cost.h +6 -4
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo.h +1 -1
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo_gene.h +1 -1
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/optimizer.h +8 -8
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/paths.h +16 -7
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/planmain.h +3 -6
- data/ext/pg_query/include/{parser → postgres/parser}/analyze.h +4 -3
- data/ext/pg_query/include/{parser → postgres/parser}/kwlist.h +12 -1
- data/ext/pg_query/include/{parser → postgres/parser}/parse_agg.h +4 -2
- data/ext/pg_query/include/{parser → postgres/parser}/parse_coerce.h +3 -1
- data/ext/pg_query/include/{parser → postgres/parser}/parse_expr.h +1 -1
- data/ext/pg_query/include/{parser → postgres/parser}/parse_func.h +1 -1
- data/ext/pg_query/include/{parser → postgres/parser}/parse_node.h +22 -4
- data/ext/pg_query/include/{parser → postgres/parser}/parse_oper.h +3 -3
- data/ext/pg_query/include/{parser → postgres/parser}/parse_relation.h +8 -3
- data/ext/pg_query/include/{parser → postgres/parser}/parse_type.h +4 -3
- data/ext/pg_query/include/{parser → postgres/parser}/parser.h +4 -4
- data/ext/pg_query/include/{parser → postgres/parser}/parsetree.h +1 -1
- data/ext/pg_query/include/{parser → postgres/parser}/scanner.h +2 -2
- data/ext/pg_query/include/{parser → postgres/parser}/scansup.h +1 -1
- data/ext/pg_query/include/{partitioning → postgres/partitioning}/partdefs.h +1 -1
- data/ext/pg_query/include/{pg_config.h → postgres/pg_config.h} +158 -218
- data/ext/pg_query/include/{pg_config_manual.h → postgres/pg_config_manual.h} +8 -46
- data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
- data/ext/pg_query/include/{pg_getopt.h → postgres/pg_getopt.h} +1 -1
- data/ext/pg_query/include/{pg_trace.h → postgres/pg_trace.h} +1 -1
- data/ext/pg_query/include/{pgstat.h → postgres/pgstat.h} +173 -94
- data/ext/pg_query/include/{pgtime.h → postgres/pgtime.h} +3 -3
- data/ext/pg_query/include/{pl_gram.h → postgres/pl_gram.h} +66 -64
- data/ext/pg_query/include/{pl_reserved_kwlist.h → postgres/pl_reserved_kwlist.h} +1 -1
- data/ext/pg_query/include/{pl_reserved_kwlist_d.h → postgres/pl_reserved_kwlist_d.h} +1 -1
- data/ext/pg_query/include/{pl_unreserved_kwlist.h → postgres/pl_unreserved_kwlist.h} +2 -1
- data/ext/pg_query/include/{pl_unreserved_kwlist_d.h → postgres/pl_unreserved_kwlist_d.h} +48 -46
- data/ext/pg_query/include/{plpgsql.h → postgres/plpgsql.h} +28 -33
- data/ext/pg_query/include/{port → postgres/port}/atomics/arch-arm.h +3 -3
- data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +17 -0
- data/ext/pg_query/include/{port → postgres/port}/atomics/arch-ppc.h +21 -21
- data/ext/pg_query/include/{port → postgres/port}/atomics/arch-x86.h +2 -2
- data/ext/pg_query/include/{port → postgres/port}/atomics/fallback.h +3 -3
- data/ext/pg_query/include/{port → postgres/port}/atomics/generic-gcc.h +1 -1
- data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +101 -0
- data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +106 -0
- data/ext/pg_query/include/{port → postgres/port}/atomics/generic.h +1 -1
- data/ext/pg_query/include/{port → postgres/port}/atomics.h +2 -7
- data/ext/pg_query/include/{port → postgres/port}/pg_bitutils.h +62 -25
- data/ext/pg_query/include/{port → postgres/port}/pg_bswap.h +1 -1
- data/ext/pg_query/include/{port → postgres/port}/pg_crc32c.h +1 -1
- data/ext/pg_query/include/postgres/port/simd.h +375 -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 +26 -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 +594 -0
- data/ext/pg_query/include/{port.h → postgres/port.h} +42 -75
- 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_ext.h → postgres/postgres_ext.h} +0 -1
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/autovacuum.h +1 -4
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker.h +2 -2
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker_internals.h +1 -1
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgwriter.h +2 -2
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/interrupt.h +1 -1
- data/ext/pg_query/include/postgres/postmaster/pgarch.h +36 -0
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/postmaster.h +6 -3
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/startup.h +3 -1
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/syslogger.h +2 -2
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/walwriter.h +3 -1
- data/ext/pg_query/include/{regex → postgres/regex}/regex.h +9 -6
- data/ext/pg_query/include/{replication → postgres/replication}/logicallauncher.h +6 -1
- data/ext/pg_query/include/{replication → postgres/replication}/logicalproto.h +30 -10
- data/ext/pg_query/include/postgres/replication/logicalworker.h +32 -0
- data/ext/pg_query/include/{replication → postgres/replication}/origin.h +4 -4
- data/ext/pg_query/include/{replication → postgres/replication}/reorderbuffer.h +113 -45
- data/ext/pg_query/include/{replication → postgres/replication}/slot.h +25 -6
- data/ext/pg_query/include/{replication → postgres/replication}/syncrep.h +2 -8
- data/ext/pg_query/include/{replication → postgres/replication}/walreceiver.h +15 -9
- data/ext/pg_query/include/{replication → postgres/replication}/walsender.h +13 -13
- data/ext/pg_query/include/{rewrite → postgres/rewrite}/prs2lock.h +1 -1
- data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteHandler.h +1 -4
- data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteManip.h +11 -2
- data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteSupport.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/backendid.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/block.h +24 -31
- data/ext/pg_query/include/{storage → postgres/storage}/buf.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/bufmgr.h +183 -87
- data/ext/pg_query/include/{storage → postgres/storage}/bufpage.h +146 -93
- data/ext/pg_query/include/{storage → postgres/storage}/condition_variable.h +2 -2
- data/ext/pg_query/include/{storage → postgres/storage}/dsm.h +3 -6
- data/ext/pg_query/include/{storage → postgres/storage}/dsm_impl.h +4 -1
- data/ext/pg_query/include/{storage → postgres/storage}/fd.h +24 -20
- data/ext/pg_query/include/{storage → postgres/storage}/fileset.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/ipc.h +2 -2
- data/ext/pg_query/include/{storage → postgres/storage}/item.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/itemid.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/itemptr.h +94 -57
- data/ext/pg_query/include/{storage → postgres/storage}/large_object.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/latch.h +9 -1
- data/ext/pg_query/include/{storage → postgres/storage}/lmgr.h +6 -1
- data/ext/pg_query/include/{storage → postgres/storage}/lock.h +21 -13
- data/ext/pg_query/include/{storage → postgres/storage}/lockdefs.h +3 -3
- data/ext/pg_query/include/{storage → postgres/storage}/lwlock.h +16 -2
- data/ext/pg_query/include/{storage → postgres/storage}/off.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/pg_sema.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/pg_shmem.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/pmsignal.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/predicate.h +2 -2
- data/ext/pg_query/include/{storage → postgres/storage}/proc.h +22 -17
- data/ext/pg_query/include/{storage → postgres/storage}/procarray.h +3 -2
- data/ext/pg_query/include/{storage → postgres/storage}/proclist_types.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/procsignal.h +3 -1
- data/ext/pg_query/include/postgres/storage/relfilelocator.h +99 -0
- data/ext/pg_query/include/{storage → postgres/storage}/s_lock.h +66 -309
- data/ext/pg_query/include/{storage → postgres/storage}/sharedfileset.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/shm_mq.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/shm_toc.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/shmem.h +1 -23
- data/ext/pg_query/include/{storage → postgres/storage}/sinval.h +3 -3
- data/ext/pg_query/include/{storage → postgres/storage}/sinvaladt.h +4 -2
- data/ext/pg_query/include/{storage → postgres/storage}/smgr.h +12 -10
- data/ext/pg_query/include/{storage → postgres/storage}/spin.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/standby.h +9 -8
- data/ext/pg_query/include/{storage → postgres/storage}/standbydefs.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/sync.h +3 -3
- data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtag.h +7 -2
- data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtaglist.h +1 -1
- data/ext/pg_query/include/{tcop → postgres/tcop}/deparse_utility.h +1 -1
- data/ext/pg_query/include/{tcop → postgres/tcop}/dest.h +1 -3
- data/ext/pg_query/include/{tcop → postgres/tcop}/fastpath.h +1 -1
- data/ext/pg_query/include/{tcop → postgres/tcop}/pquery.h +1 -1
- data/ext/pg_query/include/{tcop → postgres/tcop}/tcopprot.h +3 -6
- data/ext/pg_query/include/{tcop → postgres/tcop}/utility.h +1 -1
- data/ext/pg_query/include/{tsearch → postgres/tsearch}/ts_cache.h +2 -4
- data/ext/pg_query/include/{utils → postgres/utils}/acl.h +26 -81
- data/ext/pg_query/include/{utils → postgres/utils}/aclchk_internal.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/array.h +19 -1
- data/ext/pg_query/include/{utils → postgres/utils}/backend_progress.h +2 -1
- data/ext/pg_query/include/{utils → postgres/utils}/backend_status.h +24 -3
- data/ext/pg_query/include/{utils → postgres/utils}/builtins.h +15 -6
- data/ext/pg_query/include/{utils → postgres/utils}/bytea.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/catcache.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/date.h +37 -9
- data/ext/pg_query/include/{utils → postgres/utils}/datetime.h +41 -21
- data/ext/pg_query/include/{utils → postgres/utils}/datum.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/dsa.h +5 -1
- data/ext/pg_query/include/{utils → postgres/utils}/elog.h +104 -29
- data/ext/pg_query/include/{utils → postgres/utils}/expandeddatum.h +14 -3
- data/ext/pg_query/include/{utils → postgres/utils}/expandedrecord.h +14 -4
- data/ext/pg_query/include/{utils → postgres/utils}/float.h +7 -6
- data/ext/pg_query/include/{utils → postgres/utils}/fmgroids.h +54 -1
- data/ext/pg_query/include/{utils → postgres/utils}/fmgrprotos.h +45 -3
- data/ext/pg_query/include/{utils → postgres/utils}/fmgrtab.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/guc.h +59 -86
- data/ext/pg_query/include/postgres/utils/guc_hooks.h +163 -0
- data/ext/pg_query/include/{utils → postgres/utils}/guc_tables.h +49 -3
- data/ext/pg_query/include/{utils → postgres/utils}/hsearch.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/inval.h +3 -3
- data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
- data/ext/pg_query/include/{utils → postgres/utils}/lsyscache.h +5 -1
- data/ext/pg_query/include/{utils → postgres/utils}/memdebug.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/memutils.h +7 -51
- data/ext/pg_query/include/postgres/utils/memutils_internal.h +136 -0
- data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +237 -0
- data/ext/pg_query/include/{utils → postgres/utils}/numeric.h +20 -5
- data/ext/pg_query/include/{utils → postgres/utils}/palloc.h +9 -2
- data/ext/pg_query/include/{utils → postgres/utils}/partcache.h +3 -2
- data/ext/pg_query/include/{utils → postgres/utils}/pg_locale.h +22 -14
- data/ext/pg_query/include/{utils → postgres/utils}/pgstat_internal.h +37 -7
- data/ext/pg_query/include/{utils → postgres/utils}/plancache.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/portal.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/probes.h +6 -6
- data/ext/pg_query/include/postgres/utils/ps_status.h +47 -0
- data/ext/pg_query/include/{utils → postgres/utils}/queryenvironment.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/regproc.h +3 -3
- data/ext/pg_query/include/{utils → postgres/utils}/rel.h +60 -43
- data/ext/pg_query/include/{utils → postgres/utils}/relcache.h +13 -8
- data/ext/pg_query/include/{utils → postgres/utils}/reltrigger.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/resowner.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/ruleutils.h +6 -1
- data/ext/pg_query/include/{utils → postgres/utils}/sharedtuplestore.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/snapmgr.h +4 -2
- data/ext/pg_query/include/{utils → postgres/utils}/snapshot.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/sortsupport.h +2 -2
- data/ext/pg_query/include/{utils → postgres/utils}/syscache.h +4 -1
- data/ext/pg_query/include/{utils → postgres/utils}/timeout.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/timestamp.h +41 -11
- data/ext/pg_query/include/{utils → postgres/utils}/tuplesort.h +189 -35
- data/ext/pg_query/include/{utils → postgres/utils}/tuplestore.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/typcache.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/varlena.h +13 -1
- data/ext/pg_query/include/{utils → postgres/utils}/wait_event.h +9 -4
- data/ext/pg_query/include/{utils → postgres/utils}/xml.h +15 -5
- data/ext/pg_query/include/{postgres.h → postgres/varatt.h} +7 -457
- data/ext/pg_query/include/protobuf/pg_query.pb-c.h +6186 -5585
- data/ext/pg_query/include/protobuf/pg_query.pb.h +112443 -91222
- data/ext/pg_query/pg_query.c +10 -1
- data/ext/pg_query/pg_query.pb-c.c +19755 -17757
- data/ext/pg_query/pg_query_deparse.c +1 -10635
- data/ext/pg_query/pg_query_fingerprint.c +12 -8
- 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 -0
- data/ext/pg_query/pg_query_normalize.c +1 -1
- data/ext/pg_query/pg_query_outfuncs_json.c +6 -0
- data/ext/pg_query/pg_query_outfuncs_protobuf.c +3 -2
- data/ext/pg_query/pg_query_parse.c +47 -5
- data/ext/pg_query/pg_query_parse_plpgsql.c +7 -5
- data/ext/pg_query/pg_query_readfuncs_protobuf.c +1 -0
- data/ext/pg_query/pg_query_ruby.c +5 -0
- data/ext/pg_query/pg_query_ruby_freebsd.sym +2 -0
- data/ext/pg_query/pg_query_scan.c +1 -1
- data/ext/pg_query/pg_query_split.c +3 -3
- data/ext/pg_query/postgres_deparse.c +11067 -0
- data/ext/pg_query/postgres_deparse.h +9 -0
- data/ext/pg_query/src_backend_catalog_namespace.c +7 -2
- data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -1
- data/ext/pg_query/src_backend_commands_define.c +1 -1
- data/ext/pg_query/src_backend_nodes_bitmapset.c +11 -70
- data/ext/pg_query/src_backend_nodes_copyfuncs.c +96 -6202
- data/ext/pg_query/src_backend_nodes_equalfuncs.c +95 -4068
- data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
- data/ext/pg_query/src_backend_nodes_list.c +14 -2
- data/ext/pg_query/src_backend_nodes_makefuncs.c +95 -1
- data/ext/pg_query/src_backend_nodes_nodeFuncs.c +283 -132
- data/ext/pg_query/src_backend_nodes_nodes.c +38 -0
- data/ext/pg_query/src_backend_nodes_value.c +1 -1
- data/ext/pg_query/src_backend_parser_gram.c +33208 -31806
- data/ext/pg_query/src_backend_parser_parser.c +28 -2
- data/ext/pg_query/src_backend_parser_scan.c +4318 -3329
- data/ext/pg_query/src_backend_parser_scansup.c +1 -1
- data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
- data/ext/pg_query/src_backend_tcop_postgres.c +66 -87
- data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +1 -1
- data/ext/pg_query/src_backend_utils_adt_datum.c +5 -7
- data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
- data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
- data/ext/pg_query/src_backend_utils_adt_numutils.c +489 -0
- data/ext/pg_query/src_backend_utils_adt_ruleutils.c +79 -5
- data/ext/pg_query/src_backend_utils_error_assert.c +4 -7
- data/ext/pg_query/src_backend_utils_error_elog.c +371 -249
- data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +33 -1
- data/ext/pg_query/src_backend_utils_init_globals.c +6 -3
- data/ext/pg_query/src_backend_utils_mb_mbutils.c +21 -67
- data/ext/pg_query/src_backend_utils_misc_guc_tables.c +492 -0
- data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +163 -0
- data/ext/pg_query/src_backend_utils_mmgr_aset.c +449 -312
- data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
- data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +398 -49
- data/ext/pg_query/src_backend_utils_mmgr_slab.c +1021 -0
- data/ext/pg_query/src_common_encnames.c +4 -1
- data/ext/pg_query/src_common_hashfn.c +1 -1
- data/ext/pg_query/src_common_keywords.c +1 -1
- data/ext/pg_query/src_common_kwlist_d.h +534 -510
- data/ext/pg_query/src_common_kwlookup.c +1 -1
- data/ext/pg_query/src_common_psprintf.c +1 -1
- data/ext/pg_query/src_common_stringinfo.c +4 -4
- data/ext/pg_query/src_common_wchar.c +9 -8
- data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +661 -694
- 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 +1 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +1 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +48 -46
- data/ext/pg_query/src_port_pg_bitutils.c +79 -5
- data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
- data/ext/pg_query/src_port_snprintf.c +6 -10
- data/ext/pg_query/src_port_strerror.c +1 -1
- data/ext/pg_query/src_port_strlcpy.c +79 -0
- data/lib/pg_query/fingerprint.rb +2 -3
- data/lib/pg_query/node.rb +16 -11
- data/lib/pg_query/parse.rb +1 -1
- data/lib/pg_query/pg_query_pb.rb +166 -3191
- data/lib/pg_query/treewalker.rb +23 -5
- data/lib/pg_query/version.rb +1 -1
- metadata +432 -380
- data/ext/pg_query/guc-file.c +0 -0
- data/ext/pg_query/include/catalog/pg_parameter_acl.h +0 -60
- data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +0 -34
- data/ext/pg_query/include/commands/variable.h +0 -38
- data/ext/pg_query/include/common/ip.h +0 -31
- data/ext/pg_query/include/getaddrinfo.h +0 -162
- data/ext/pg_query/include/kwlist_d.h +0 -1095
- data/ext/pg_query/include/parser/gram.h +0 -1101
- data/ext/pg_query/include/pg_config_os.h +0 -8
- data/ext/pg_query/include/portability/instr_time.h +0 -256
- data/ext/pg_query/include/postmaster/auxprocess.h +0 -20
- data/ext/pg_query/include/postmaster/fork_process.h +0 -17
- data/ext/pg_query/include/postmaster/pgarch.h +0 -73
- data/ext/pg_query/include/replication/logicalworker.h +0 -19
- data/ext/pg_query/include/storage/relfilenode.h +0 -99
- data/ext/pg_query/include/utils/dynahash.h +0 -20
- 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/ps_status.h +0 -25
- data/ext/pg_query/include/utils/rls.h +0 -50
- data/ext/pg_query/include/utils/tzparser.h +0 -39
- data/ext/pg_query/src_backend_postmaster_postmaster.c +0 -2201
- data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -371
- data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1116
- data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1993
- data/ext/pg_query/src_common_pg_prng.c +0 -152
- data/ext/pg_query/src_common_string.c +0 -92
- data/ext/pg_query/src_port_pgsleep.c +0 -69
- data/ext/pg_query/src_port_strnlen.c +0 -39
- /data/ext/pg_query/include/{access → postgres/access}/rmgr.h +0 -0
- /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
- /data/ext/pg_query/include/{plerrcodes.h → postgres/plerrcodes.h} +0 -0
- /data/ext/pg_query/include/{storage → postgres/storage}/lwlocknames.h +0 -0
- /data/ext/pg_query/include/{utils → postgres/utils}/errcodes.h +0 -0
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* fmgr.c
|
|
10
10
|
* The Postgres function manager.
|
|
11
11
|
*
|
|
12
|
-
* Portions Copyright (c) 1996-
|
|
12
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
13
13
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
14
14
|
*
|
|
15
15
|
*
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
#include "lib/stringinfo.h"
|
|
30
30
|
#include "miscadmin.h"
|
|
31
31
|
#include "nodes/makefuncs.h"
|
|
32
|
+
#include "nodes/miscnodes.h"
|
|
32
33
|
#include "nodes/nodeFuncs.h"
|
|
33
34
|
#include "pgstat.h"
|
|
34
35
|
#include "utils/acl.h"
|
|
@@ -366,6 +367,37 @@ FunctionCall6Coll(FmgrInfo *flinfo, Oid collation, Datum arg1, Datum arg2,
|
|
|
366
367
|
*/
|
|
367
368
|
|
|
368
369
|
|
|
370
|
+
/*
|
|
371
|
+
* Call a previously-looked-up datatype input function, with non-exception
|
|
372
|
+
* handling of "soft" errors.
|
|
373
|
+
*
|
|
374
|
+
* This is basically like InputFunctionCall, but the converted Datum is
|
|
375
|
+
* returned into *result while the function result is true for success or
|
|
376
|
+
* false for failure. Also, the caller may pass an ErrorSaveContext node.
|
|
377
|
+
* (We declare that as "fmNodePtr" to avoid including nodes.h in fmgr.h.)
|
|
378
|
+
*
|
|
379
|
+
* If escontext points to an ErrorSaveContext, any "soft" errors detected by
|
|
380
|
+
* the input function will be reported by filling the escontext struct and
|
|
381
|
+
* returning false. (The caller can choose to test SOFT_ERROR_OCCURRED(),
|
|
382
|
+
* but checking the function result instead is usually cheaper.)
|
|
383
|
+
*
|
|
384
|
+
* If escontext does not point to an ErrorSaveContext, errors are reported
|
|
385
|
+
* via ereport(ERROR), so that there is no functional difference from
|
|
386
|
+
* InputFunctionCall; the result will always be true if control returns.
|
|
387
|
+
*/
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
/*
|
|
391
|
+
* Call a directly-named datatype input function, with non-exception
|
|
392
|
+
* handling of "soft" errors.
|
|
393
|
+
*
|
|
394
|
+
* This is like InputFunctionCallSafe, except that it is given a direct
|
|
395
|
+
* pointer to the C function to call. We assume that that function is
|
|
396
|
+
* strict. Also, the function cannot be one that needs to
|
|
397
|
+
* look at FmgrInfo, since there won't be any.
|
|
398
|
+
*/
|
|
399
|
+
|
|
400
|
+
|
|
369
401
|
/*
|
|
370
402
|
* Call a previously-looked-up datatype output function.
|
|
371
403
|
*
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* globals.c
|
|
14
14
|
* global variable declarations
|
|
15
15
|
*
|
|
16
|
-
* Portions Copyright (c) 1996-
|
|
16
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
17
17
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
18
18
|
*
|
|
19
19
|
*
|
|
@@ -91,7 +91,7 @@ __thread volatile uint32 CritSectionCount = 0;
|
|
|
91
91
|
/* full path to lib directory */
|
|
92
92
|
|
|
93
93
|
#ifdef EXEC_BACKEND
|
|
94
|
-
|
|
94
|
+
/* full path to backend */
|
|
95
95
|
|
|
96
96
|
/* note: currently this is not valid in backend processes */
|
|
97
97
|
#endif
|
|
@@ -154,7 +154,10 @@ __thread bool ExitOnAnyError = false;
|
|
|
154
154
|
|
|
155
155
|
|
|
156
156
|
|
|
157
|
-
|
|
157
|
+
/* GUC parameters for vacuum */
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
158
161
|
|
|
159
162
|
|
|
160
163
|
|
|
@@ -17,6 +17,8 @@
|
|
|
17
17
|
* - pg_mbstrlen_with_len
|
|
18
18
|
* - pg_mblen
|
|
19
19
|
* - SetDatabaseEncoding
|
|
20
|
+
* - GetMessageEncoding
|
|
21
|
+
* - MessageEncoding
|
|
20
22
|
*--------------------------------------------------------------------
|
|
21
23
|
*/
|
|
22
24
|
|
|
@@ -45,7 +47,7 @@
|
|
|
45
47
|
* the result is validly encoded according to the destination encoding.
|
|
46
48
|
*
|
|
47
49
|
*
|
|
48
|
-
* Portions Copyright (c) 1996-
|
|
50
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
49
51
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
50
52
|
*
|
|
51
53
|
*
|
|
@@ -62,6 +64,7 @@
|
|
|
62
64
|
#include "utils/builtins.h"
|
|
63
65
|
#include "utils/memutils.h"
|
|
64
66
|
#include "utils/syscache.h"
|
|
67
|
+
#include "varatt.h"
|
|
65
68
|
|
|
66
69
|
/*
|
|
67
70
|
* We maintain a simple linked list caching the fmgr lookup info for the
|
|
@@ -104,6 +107,7 @@ static __thread const pg_enc2name *ClientEncoding = &pg_enc2name_tbl[PG_SQL_ASCI
|
|
|
104
107
|
|
|
105
108
|
static __thread const pg_enc2name *DatabaseEncoding = &pg_enc2name_tbl[PG_SQL_ASCII];
|
|
106
109
|
|
|
110
|
+
static __thread const pg_enc2name *MessageEncoding = &pg_enc2name_tbl[PG_SQL_ASCII];
|
|
107
111
|
|
|
108
112
|
|
|
109
113
|
/*
|
|
@@ -184,7 +188,7 @@ pg_get_client_encoding(void)
|
|
|
184
188
|
*
|
|
185
189
|
* The output is null-terminated.
|
|
186
190
|
*
|
|
187
|
-
* If destlen < srclen *
|
|
191
|
+
* If destlen < srclen * MAX_CONVERSION_INPUT_LENGTH + 1, the converted output
|
|
188
192
|
* wouldn't necessarily fit in the output buffer, and the function will not
|
|
189
193
|
* convert the whole input.
|
|
190
194
|
*
|
|
@@ -339,12 +343,20 @@ pg_unicode_to_server(pg_wchar c, unsigned char *s)
|
|
|
339
343
|
FunctionCall6(Utf8ToServerConvProc,
|
|
340
344
|
Int32GetDatum(PG_UTF8),
|
|
341
345
|
Int32GetDatum(server_encoding),
|
|
342
|
-
CStringGetDatum(c_as_utf8),
|
|
343
|
-
CStringGetDatum(s),
|
|
346
|
+
CStringGetDatum((char *) c_as_utf8),
|
|
347
|
+
CStringGetDatum((char *) s),
|
|
344
348
|
Int32GetDatum(c_as_utf8_len),
|
|
345
349
|
BoolGetDatum(false));
|
|
346
350
|
}
|
|
347
351
|
|
|
352
|
+
/*
|
|
353
|
+
* Convert a single Unicode code point into a string in the server encoding.
|
|
354
|
+
*
|
|
355
|
+
* Same as pg_unicode_to_server(), except that we don't throw errors,
|
|
356
|
+
* but simply return false on conversion failure.
|
|
357
|
+
*/
|
|
358
|
+
|
|
359
|
+
|
|
348
360
|
|
|
349
361
|
/* convert a multibyte string to a wchar */
|
|
350
362
|
|
|
@@ -586,7 +598,11 @@ GetDatabaseEncodingName(void)
|
|
|
586
598
|
* not attached to a database, and under a database encoding lacking iconv
|
|
587
599
|
* support (MULE_INTERNAL).
|
|
588
600
|
*/
|
|
589
|
-
|
|
601
|
+
int
|
|
602
|
+
GetMessageEncoding(void)
|
|
603
|
+
{
|
|
604
|
+
return MessageEncoding->encoding;
|
|
605
|
+
}
|
|
590
606
|
|
|
591
607
|
|
|
592
608
|
/*
|
|
@@ -761,68 +777,6 @@ report_invalid_encoding(int encoding, const char *mbstr, int len)
|
|
|
761
777
|
* null. Returns NULL iff failed. Before MessageEncoding initialization, "str"
|
|
762
778
|
* should be ASCII-only; this will function as though MessageEncoding is UTF8.
|
|
763
779
|
*/
|
|
764
|
-
WCHAR *
|
|
765
|
-
pgwin32_message_to_UTF16(const char *str, int len, int *utf16len)
|
|
766
|
-
{
|
|
767
|
-
int msgenc = GetMessageEncoding();
|
|
768
|
-
WCHAR *utf16;
|
|
769
|
-
int dstlen;
|
|
770
|
-
UINT codepage;
|
|
771
|
-
|
|
772
|
-
if (msgenc == PG_SQL_ASCII)
|
|
773
|
-
/* No conversion is possible, and SQL_ASCII is never utf16. */
|
|
774
|
-
return NULL;
|
|
775
780
|
|
|
776
|
-
codepage = pg_enc2name_tbl[msgenc].codepage;
|
|
777
|
-
|
|
778
|
-
/*
|
|
779
|
-
* Use MultiByteToWideChar directly if there is a corresponding codepage,
|
|
780
|
-
* or double conversion through UTF8 if not. Double conversion is needed,
|
|
781
|
-
* for example, in an ENCODING=LATIN8, LC_CTYPE=C database.
|
|
782
|
-
*/
|
|
783
|
-
if (codepage != 0)
|
|
784
|
-
{
|
|
785
|
-
utf16 = (WCHAR *) palloc(sizeof(WCHAR) * (len + 1));
|
|
786
|
-
dstlen = MultiByteToWideChar(codepage, 0, str, len, utf16, len);
|
|
787
|
-
utf16[dstlen] = (WCHAR) 0;
|
|
788
|
-
}
|
|
789
|
-
else
|
|
790
|
-
{
|
|
791
|
-
char *utf8;
|
|
792
|
-
|
|
793
|
-
/*
|
|
794
|
-
* XXX pg_do_encoding_conversion() requires a transaction. In the
|
|
795
|
-
* absence of one, hope for the input to be valid UTF8.
|
|
796
|
-
*/
|
|
797
|
-
if (IsTransactionState())
|
|
798
|
-
{
|
|
799
|
-
utf8 = (char *) pg_do_encoding_conversion((unsigned char *) str,
|
|
800
|
-
len,
|
|
801
|
-
msgenc,
|
|
802
|
-
PG_UTF8);
|
|
803
|
-
if (utf8 != str)
|
|
804
|
-
len = strlen(utf8);
|
|
805
|
-
}
|
|
806
|
-
else
|
|
807
|
-
utf8 = (char *) str;
|
|
808
|
-
|
|
809
|
-
utf16 = (WCHAR *) palloc(sizeof(WCHAR) * (len + 1));
|
|
810
|
-
dstlen = MultiByteToWideChar(CP_UTF8, 0, utf8, len, utf16, len);
|
|
811
|
-
utf16[dstlen] = (WCHAR) 0;
|
|
812
|
-
|
|
813
|
-
if (utf8 != str)
|
|
814
|
-
pfree(utf8);
|
|
815
|
-
}
|
|
816
|
-
|
|
817
|
-
if (dstlen == 0 && len > 0)
|
|
818
|
-
{
|
|
819
|
-
pfree(utf16);
|
|
820
|
-
return NULL; /* error */
|
|
821
|
-
}
|
|
822
|
-
|
|
823
|
-
if (utf16len)
|
|
824
|
-
*utf16len = dstlen;
|
|
825
|
-
return utf16;
|
|
826
|
-
}
|
|
827
781
|
|
|
828
782
|
#endif /* WIN32 */
|
|
@@ -0,0 +1,492 @@
|
|
|
1
|
+
/*--------------------------------------------------------------------
|
|
2
|
+
* Symbols referenced in this file:
|
|
3
|
+
* - log_min_messages
|
|
4
|
+
* - backtrace_functions
|
|
5
|
+
* - check_function_bodies
|
|
6
|
+
*--------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/*--------------------------------------------------------------------
|
|
10
|
+
*
|
|
11
|
+
* guc_tables.c
|
|
12
|
+
*
|
|
13
|
+
* Static tables for the Grand Unified Configuration scheme.
|
|
14
|
+
*
|
|
15
|
+
* Many of these tables are const. However, ConfigureNamesBool[]
|
|
16
|
+
* and so on are not, because the structs in those arrays are actually
|
|
17
|
+
* the live per-variable state data that guc.c manipulates. While many of
|
|
18
|
+
* their fields are intended to be constant, some fields change at runtime.
|
|
19
|
+
*
|
|
20
|
+
*
|
|
21
|
+
* Copyright (c) 2000-2023, PostgreSQL Global Development Group
|
|
22
|
+
* Written by Peter Eisentraut <peter_e@gmx.net>.
|
|
23
|
+
*
|
|
24
|
+
* IDENTIFICATION
|
|
25
|
+
* src/backend/utils/misc/guc_tables.c
|
|
26
|
+
*
|
|
27
|
+
*--------------------------------------------------------------------
|
|
28
|
+
*/
|
|
29
|
+
#include "postgres.h"
|
|
30
|
+
|
|
31
|
+
#include <float.h>
|
|
32
|
+
#include <limits.h>
|
|
33
|
+
#ifdef HAVE_SYSLOG
|
|
34
|
+
#include <syslog.h>
|
|
35
|
+
#endif
|
|
36
|
+
|
|
37
|
+
#include "access/commit_ts.h"
|
|
38
|
+
#include "access/gin.h"
|
|
39
|
+
#include "access/toast_compression.h"
|
|
40
|
+
#include "access/twophase.h"
|
|
41
|
+
#include "access/xlog_internal.h"
|
|
42
|
+
#include "access/xlogprefetcher.h"
|
|
43
|
+
#include "access/xlogrecovery.h"
|
|
44
|
+
#include "archive/archive_module.h"
|
|
45
|
+
#include "catalog/namespace.h"
|
|
46
|
+
#include "catalog/storage.h"
|
|
47
|
+
#include "commands/async.h"
|
|
48
|
+
#include "commands/tablespace.h"
|
|
49
|
+
#include "commands/trigger.h"
|
|
50
|
+
#include "commands/user.h"
|
|
51
|
+
#include "commands/vacuum.h"
|
|
52
|
+
#include "common/scram-common.h"
|
|
53
|
+
#include "jit/jit.h"
|
|
54
|
+
#include "libpq/auth.h"
|
|
55
|
+
#include "libpq/libpq.h"
|
|
56
|
+
#include "libpq/scram.h"
|
|
57
|
+
#include "nodes/queryjumble.h"
|
|
58
|
+
#include "optimizer/cost.h"
|
|
59
|
+
#include "optimizer/geqo.h"
|
|
60
|
+
#include "optimizer/optimizer.h"
|
|
61
|
+
#include "optimizer/paths.h"
|
|
62
|
+
#include "optimizer/planmain.h"
|
|
63
|
+
#include "parser/parse_expr.h"
|
|
64
|
+
#include "parser/parser.h"
|
|
65
|
+
#include "pgstat.h"
|
|
66
|
+
#include "postmaster/autovacuum.h"
|
|
67
|
+
#include "postmaster/bgworker_internals.h"
|
|
68
|
+
#include "postmaster/bgwriter.h"
|
|
69
|
+
#include "postmaster/postmaster.h"
|
|
70
|
+
#include "postmaster/startup.h"
|
|
71
|
+
#include "postmaster/syslogger.h"
|
|
72
|
+
#include "postmaster/walwriter.h"
|
|
73
|
+
#include "replication/logicallauncher.h"
|
|
74
|
+
#include "replication/slot.h"
|
|
75
|
+
#include "replication/syncrep.h"
|
|
76
|
+
#include "storage/bufmgr.h"
|
|
77
|
+
#include "storage/large_object.h"
|
|
78
|
+
#include "storage/pg_shmem.h"
|
|
79
|
+
#include "storage/predicate.h"
|
|
80
|
+
#include "storage/standby.h"
|
|
81
|
+
#include "tcop/tcopprot.h"
|
|
82
|
+
#include "tsearch/ts_cache.h"
|
|
83
|
+
#include "utils/builtins.h"
|
|
84
|
+
#include "utils/bytea.h"
|
|
85
|
+
#include "utils/float.h"
|
|
86
|
+
#include "utils/guc_hooks.h"
|
|
87
|
+
#include "utils/guc_tables.h"
|
|
88
|
+
#include "utils/memutils.h"
|
|
89
|
+
#include "utils/pg_locale.h"
|
|
90
|
+
#include "utils/portal.h"
|
|
91
|
+
#include "utils/ps_status.h"
|
|
92
|
+
#include "utils/inval.h"
|
|
93
|
+
#include "utils/xml.h"
|
|
94
|
+
|
|
95
|
+
/* This value is normally passed in from the Makefile */
|
|
96
|
+
#ifndef PG_KRB_SRVTAB
|
|
97
|
+
#define PG_KRB_SRVTAB ""
|
|
98
|
+
#endif
|
|
99
|
+
|
|
100
|
+
/* XXX these should appear in other modules' header files */
|
|
101
|
+
extern bool Log_disconnections;
|
|
102
|
+
extern int CommitDelay;
|
|
103
|
+
extern int CommitSiblings;
|
|
104
|
+
extern char *default_tablespace;
|
|
105
|
+
extern char *temp_tablespaces;
|
|
106
|
+
extern bool ignore_checksum_failure;
|
|
107
|
+
extern bool ignore_invalid_pages;
|
|
108
|
+
|
|
109
|
+
#ifdef TRACE_SYNCSCAN
|
|
110
|
+
extern bool trace_syncscan;
|
|
111
|
+
#endif
|
|
112
|
+
#ifdef DEBUG_BOUNDED_SORT
|
|
113
|
+
extern bool optimize_bounded_sort;
|
|
114
|
+
#endif
|
|
115
|
+
|
|
116
|
+
/*
|
|
117
|
+
* Options for enum values defined in this module.
|
|
118
|
+
*
|
|
119
|
+
* NOTE! Option values may not contain double quotes!
|
|
120
|
+
*/
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
StaticAssertDecl(lengthof(bytea_output_options) == (BYTEA_OUTPUT_HEX + 2),
|
|
125
|
+
"array length mismatch");
|
|
126
|
+
|
|
127
|
+
/*
|
|
128
|
+
* We have different sets for client and server message level options because
|
|
129
|
+
* they sort slightly different (see "log" level), and because "fatal"/"panic"
|
|
130
|
+
* aren't sensible for client_min_messages.
|
|
131
|
+
*/
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
StaticAssertDecl(lengthof(intervalstyle_options) == (INTSTYLE_ISO_8601 + 2),
|
|
141
|
+
"array length mismatch");
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
StaticAssertDecl(lengthof(log_error_verbosity_options) == (PGERROR_VERBOSE + 2),
|
|
146
|
+
"array length mismatch");
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
StaticAssertDecl(lengthof(log_statement_options) == (LOGSTMT_ALL + 2),
|
|
151
|
+
"array length mismatch");
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
StaticAssertDecl(lengthof(session_replication_role_options) == (SESSION_REPLICATION_ROLE_LOCAL + 2),
|
|
158
|
+
"array length mismatch");
|
|
159
|
+
|
|
160
|
+
#ifdef HAVE_SYSLOG
|
|
161
|
+
#else
|
|
162
|
+
#endif
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
StaticAssertDecl(lengthof(track_function_options) == (TRACK_FUNC_ALL + 2),
|
|
167
|
+
"array length mismatch");
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
StaticAssertDecl(lengthof(stats_fetch_consistency) == (PGSTAT_FETCH_CONSISTENCY_SNAPSHOT + 2),
|
|
172
|
+
"array length mismatch");
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
StaticAssertDecl(lengthof(xmlbinary_options) == (XMLBINARY_HEX + 2),
|
|
177
|
+
"array length mismatch");
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
StaticAssertDecl(lengthof(xmloption_options) == (XMLOPTION_CONTENT + 2),
|
|
182
|
+
"array length mismatch");
|
|
183
|
+
|
|
184
|
+
/*
|
|
185
|
+
* Although only "on", "off", and "safe_encoding" are documented, we
|
|
186
|
+
* accept all the likely variants of "on" and "off".
|
|
187
|
+
*/
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
/*
|
|
191
|
+
* Although only "on", "off", and "auto" are documented, we accept
|
|
192
|
+
* all the likely variants of "on" and "off".
|
|
193
|
+
*/
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
/*
|
|
197
|
+
* Although only "on", "off", and "partition" are documented, we
|
|
198
|
+
* accept all the likely variants of "on" and "off".
|
|
199
|
+
*/
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
/*
|
|
203
|
+
* Although only "on", "off", "remote_apply", "remote_write", and "local" are
|
|
204
|
+
* documented, we accept all the likely variants of "on" and "off".
|
|
205
|
+
*/
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
/*
|
|
209
|
+
* Although only "on", "off", "try" are documented, we accept all the likely
|
|
210
|
+
* variants of "on" and "off".
|
|
211
|
+
*/
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
StaticAssertDecl(lengthof(ssl_protocol_versions_info) == (PG_TLS1_3_VERSION + 2),
|
|
227
|
+
"array length mismatch");
|
|
228
|
+
|
|
229
|
+
#ifdef HAVE_SYNCFS
|
|
230
|
+
#endif
|
|
231
|
+
|
|
232
|
+
#ifndef WIN32
|
|
233
|
+
#endif
|
|
234
|
+
#ifndef EXEC_BACKEND
|
|
235
|
+
#endif
|
|
236
|
+
#ifdef WIN32
|
|
237
|
+
#endif
|
|
238
|
+
|
|
239
|
+
#ifdef USE_LZ4
|
|
240
|
+
#endif
|
|
241
|
+
|
|
242
|
+
#ifdef USE_LZ4
|
|
243
|
+
#endif
|
|
244
|
+
#ifdef USE_ZSTD
|
|
245
|
+
#endif
|
|
246
|
+
|
|
247
|
+
/*
|
|
248
|
+
* Options for enum values stored in other modules
|
|
249
|
+
*/
|
|
250
|
+
extern const struct config_enum_entry wal_level_options[];
|
|
251
|
+
extern const struct config_enum_entry archive_mode_options[];
|
|
252
|
+
extern const struct config_enum_entry recovery_target_action_options[];
|
|
253
|
+
extern const struct config_enum_entry sync_method_options[];
|
|
254
|
+
extern const struct config_enum_entry dynamic_shared_memory_options[];
|
|
255
|
+
|
|
256
|
+
/*
|
|
257
|
+
* GUC option variables that are exported from this module
|
|
258
|
+
*/
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
/* this is sort of all three above
|
|
269
|
+
* together */
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
__thread bool check_function_bodies = true;
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
/*
|
|
278
|
+
* This GUC exists solely for backward compatibility, check its definition for
|
|
279
|
+
* details.
|
|
280
|
+
*/
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
__thread int log_min_messages = WARNING;
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
__thread char *backtrace_functions;
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
/*
|
|
317
|
+
* SSL renegotiation was been removed in PostgreSQL 9.5, but we tolerate it
|
|
318
|
+
* being set to zero (meaning never renegotiate) for backward compatibility.
|
|
319
|
+
* This avoids breaking compatibility with clients that have never supported
|
|
320
|
+
* renegotiation and therefore always try to zero it.
|
|
321
|
+
*/
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
/*
|
|
325
|
+
* This really belongs in pg_shmem.c, but is defined here so that it doesn't
|
|
326
|
+
* need to be duplicated in all the different implementations of pg_shmem.c.
|
|
327
|
+
*/
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
/*
|
|
332
|
+
* These variables are all dummies that don't do anything, except in some
|
|
333
|
+
* cases provide the value for SHOW to display. The real state is elsewhere
|
|
334
|
+
* and is kept in sync by assign_hooks.
|
|
335
|
+
*/
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
#ifdef HAVE_SYSLOG
|
|
346
|
+
#define DEFAULT_SYSLOG_FACILITY LOG_LOCAL0
|
|
347
|
+
#else
|
|
348
|
+
#define DEFAULT_SYSLOG_FACILITY 0
|
|
349
|
+
#endif
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
#ifdef USE_ASSERT_CHECKING
|
|
369
|
+
#define DEFAULT_ASSERT_ENABLED true
|
|
370
|
+
#else
|
|
371
|
+
#define DEFAULT_ASSERT_ENABLED false
|
|
372
|
+
#endif
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
/* should be static, but commands/variable.c needs to get at this */
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
/* should be static, but guc.c needs to get at this */
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
/*
|
|
389
|
+
* Displayable names for context types (enum GucContext)
|
|
390
|
+
*
|
|
391
|
+
* Note: these strings are deliberately not localized.
|
|
392
|
+
*/
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
StaticAssertDecl(lengthof(GucContext_Names) == (PGC_USERSET + 1),
|
|
396
|
+
"array length mismatch");
|
|
397
|
+
|
|
398
|
+
/*
|
|
399
|
+
* Displayable names for source types (enum GucSource)
|
|
400
|
+
*
|
|
401
|
+
* Note: these strings are deliberately not localized.
|
|
402
|
+
*/
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
StaticAssertDecl(lengthof(GucSource_Names) == (PGC_S_SESSION + 1),
|
|
406
|
+
"array length mismatch");
|
|
407
|
+
|
|
408
|
+
/*
|
|
409
|
+
* Displayable names for the groupings defined in enum config_group
|
|
410
|
+
*/
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
StaticAssertDecl(lengthof(config_group_names) == (DEVELOPER_OPTIONS + 2),
|
|
414
|
+
"array length mismatch");
|
|
415
|
+
|
|
416
|
+
/*
|
|
417
|
+
* Displayable names for GUC variable types (enum config_type)
|
|
418
|
+
*
|
|
419
|
+
* Note: these strings are deliberately not localized.
|
|
420
|
+
*/
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
StaticAssertDecl(lengthof(config_type_names) == (PGC_ENUM + 1),
|
|
424
|
+
"array length mismatch");
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
/*
|
|
428
|
+
* Contents of GUC tables
|
|
429
|
+
*
|
|
430
|
+
* See src/backend/utils/misc/README for design notes.
|
|
431
|
+
*
|
|
432
|
+
* TO ADD AN OPTION:
|
|
433
|
+
*
|
|
434
|
+
* 1. Declare a global variable of type bool, int, double, or char*
|
|
435
|
+
* and make use of it.
|
|
436
|
+
*
|
|
437
|
+
* 2. Decide at what times it's safe to set the option. See guc.h for
|
|
438
|
+
* details.
|
|
439
|
+
*
|
|
440
|
+
* 3. Decide on a name, a default value, upper and lower bounds (if
|
|
441
|
+
* applicable), etc.
|
|
442
|
+
*
|
|
443
|
+
* 4. Add a record below.
|
|
444
|
+
*
|
|
445
|
+
* 5. Add it to src/backend/utils/misc/postgresql.conf.sample, if
|
|
446
|
+
* appropriate.
|
|
447
|
+
*
|
|
448
|
+
* 6. Don't forget to document the option (at least in config.sgml).
|
|
449
|
+
*
|
|
450
|
+
* 7. If it's a new GUC_LIST_QUOTE option, you must add it to
|
|
451
|
+
* variable_is_guc_list_quote() in src/bin/pg_dump/dumputils.c.
|
|
452
|
+
*/
|
|
453
|
+
|
|
454
|
+
#ifdef BTREE_BUILD_STATS
|
|
455
|
+
#endif
|
|
456
|
+
#ifdef LOCK_DEBUG
|
|
457
|
+
#endif
|
|
458
|
+
#ifdef TRACE_SORT
|
|
459
|
+
#endif
|
|
460
|
+
#ifdef TRACE_SYNCSCAN
|
|
461
|
+
#endif
|
|
462
|
+
#ifdef DEBUG_BOUNDED_SORT
|
|
463
|
+
#endif
|
|
464
|
+
#ifdef WAL_DEBUG
|
|
465
|
+
#endif
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
#ifdef LOCK_DEBUG
|
|
469
|
+
#endif
|
|
470
|
+
#ifdef DISCARD_CACHES_ENABLED
|
|
471
|
+
#if defined(CLOBBER_CACHE_RECURSIVELY)
|
|
472
|
+
#else
|
|
473
|
+
#endif
|
|
474
|
+
#else /* not DISCARD_CACHES_ENABLED */
|
|
475
|
+
#endif /* not DISCARD_CACHES_ENABLED */
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
#ifdef USE_SSL
|
|
482
|
+
#else
|
|
483
|
+
#endif
|
|
484
|
+
#ifdef USE_OPENSSL
|
|
485
|
+
#else
|
|
486
|
+
#endif
|
|
487
|
+
#ifdef USE_SSL
|
|
488
|
+
#else
|
|
489
|
+
#endif
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
|