pg_query 2.0.3 → 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 +165 -0
- data/README.md +67 -29
- data/Rakefile +8 -23
- data/ext/pg_query/extconf.rb +21 -3
- data/ext/pg_query/include/pg_query.h +29 -4
- data/ext/pg_query/include/pg_query_enum_defs.c +551 -272
- data/ext/pg_query/include/pg_query_fingerprint_conds.c +563 -470
- data/ext/pg_query/include/pg_query_fingerprint_defs.c +5403 -3945
- data/ext/pg_query/include/pg_query_outfuncs_conds.c +402 -330
- data/ext/pg_query/include/pg_query_outfuncs_defs.c +1319 -1059
- data/ext/pg_query/include/pg_query_readfuncs_conds.c +141 -118
- data/ext/pg_query/include/pg_query_readfuncs_defs.c +1685 -1379
- data/ext/pg_query/include/{access → postgres/access}/amapi.h +47 -1
- data/ext/pg_query/include/{access → postgres/access}/attmap.h +5 -3
- data/ext/pg_query/include/{access → postgres/access}/attnum.h +2 -2
- data/ext/pg_query/include/{access → postgres/access}/clog.h +4 -2
- data/ext/pg_query/include/{access → postgres/access}/commit_ts.h +6 -9
- data/ext/pg_query/include/{access → postgres/access}/detoast.h +1 -11
- data/ext/pg_query/include/{access → postgres/access}/genam.h +21 -16
- data/ext/pg_query/include/{access → postgres/access}/gin.h +17 -4
- data/ext/pg_query/include/{access → postgres/access}/htup.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/htup_details.h +80 -88
- data/ext/pg_query/include/{access → postgres/access}/itup.h +61 -52
- 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 +17 -2
- data/ext/pg_query/include/postgres/access/rmgr.h +62 -0
- data/ext/pg_query/include/{access → postgres/access}/rmgrlist.h +24 -24
- 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 +4 -2
- data/ext/pg_query/include/{access → postgres/access}/sysattr.h +1 -1
- data/ext/pg_query/include/{access → postgres/access}/table.h +2 -1
- data/ext/pg_query/include/{access → postgres/access}/tableam.h +337 -62
- data/ext/pg_query/include/postgres/access/toast_compression.h +73 -0
- data/ext/pg_query/include/{access → postgres/access}/transam.h +123 -13
- 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 +60 -100
- data/ext/pg_query/include/{access → postgres/access}/twophase.h +5 -1
- data/ext/pg_query/include/{access → postgres/access}/xact.h +99 -32
- data/ext/pg_query/include/{access → postgres/access}/xlog.h +69 -165
- data/ext/pg_query/include/{access → postgres/access}/xlog_internal.h +147 -73
- data/ext/pg_query/include/postgres/access/xlogbackup.h +41 -0
- data/ext/pg_query/include/{access → postgres/access}/xlogdefs.h +13 -40
- data/ext/pg_query/include/postgres/access/xlogprefetcher.h +55 -0
- data/ext/pg_query/include/{access → postgres/access}/xlogreader.h +154 -37
- data/ext/pg_query/include/{access → postgres/access}/xlogrecord.h +34 -13
- data/ext/pg_query/include/postgres/access/xlogrecovery.h +158 -0
- data/ext/pg_query/include/postgres/archive/archive_module.h +59 -0
- data/ext/pg_query/include/{c.h → postgres/c.h} +245 -188
- data/ext/pg_query/include/{catalog → postgres/catalog}/catalog.h +6 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/catversion.h +6 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/dependency.h +14 -19
- data/ext/pg_query/include/postgres/catalog/genbki.h +143 -0
- data/ext/pg_query/include/{catalog → postgres/catalog}/index.h +20 -5
- data/ext/pg_query/include/postgres/catalog/indexing.h +54 -0
- data/ext/pg_query/include/{catalog → postgres/catalog}/namespace.h +5 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/objectaccess.h +73 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/objectaddress.h +12 -7
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate.h +14 -10
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate_d.h +2 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am.h +4 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute.h +45 -26
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute_d.h +19 -16
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid.h +7 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid_d.h +19 -9
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class.h +45 -15
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class_d.h +31 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation.h +35 -8
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation_d.h +21 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint.h +39 -13
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint_d.h +10 -4
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_control.h +13 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion.h +8 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion_d.h +4 -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 +11 -7
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger.h +9 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index.h +17 -7
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index_d.h +20 -17
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language.h +10 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace.h +7 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass.h +8 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator.h +21 -16
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator_d.h +37 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily.h +8 -4
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily_d.h +6 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table.h +20 -9
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table_d.h +2 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc.h +20 -11
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc_d.h +10 -8
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication.h +49 -6
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin.h +6 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin_d.h +5 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic.h +19 -12
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_d.h +2 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext.h +19 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext_d.h +7 -2
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform.h +8 -5
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger.h +24 -8
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger_d.h +4 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config.h +6 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict.h +8 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser.h +6 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template.h +6 -3
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template_d.h +3 -1
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type.h +56 -24
- data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type_d.h +70 -31
- data/ext/pg_query/include/{catalog → postgres/catalog}/storage.h +9 -7
- data/ext/pg_query/include/{commands → postgres/commands}/async.h +4 -5
- data/ext/pg_query/include/{commands → postgres/commands}/dbcommands.h +3 -1
- data/ext/pg_query/include/{commands → postgres/commands}/defrem.h +12 -24
- data/ext/pg_query/include/{commands → postgres/commands}/event_trigger.h +2 -2
- 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 +6 -4
- data/ext/pg_query/include/{commands → postgres/commands}/trigger.h +36 -25
- data/ext/pg_query/include/{commands → postgres/commands}/user.h +10 -4
- data/ext/pg_query/include/{commands → postgres/commands}/vacuum.h +140 -47
- data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
- data/ext/pg_query/include/{common → postgres/common}/file_perm.h +4 -4
- 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 +2 -6
- data/ext/pg_query/include/{common → postgres/common}/kwlookup.h +2 -2
- data/ext/pg_query/include/postgres/common/pg_prng.h +61 -0
- data/ext/pg_query/include/{common → postgres/common}/relpath.h +21 -14
- 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 +125 -0
- data/ext/pg_query/include/{common/unicode_combining_table.h → postgres/common/unicode_nonspacing_table.h} +138 -8
- 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 +50 -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 +98 -32
- data/ext/pg_query/include/{executor → postgres/executor}/functions.h +17 -3
- data/ext/pg_query/include/{executor → postgres/executor}/instrument.h +33 -16
- data/ext/pg_query/include/{executor → postgres/executor}/spi.h +42 -4
- 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} +33 -8
- data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
- data/ext/pg_query/include/{funcapi.h → postgres/funcapi.h} +22 -10
- 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 +12 -12
- data/ext/pg_query/include/postgres/kwlist_d.h +1119 -0
- data/ext/pg_query/include/postgres/lib/dshash.h +115 -0
- data/ext/pg_query/include/{lib → postgres/lib}/ilist.h +454 -22
- data/ext/pg_query/include/{lib → postgres/lib}/pairingheap.h +1 -1
- data/ext/pg_query/include/{lib → postgres/lib}/simplehash.h +158 -33
- data/ext/pg_query/include/postgres/lib/sort_template.h +432 -0
- data/ext/pg_query/include/{lib → postgres/lib}/stringinfo.h +3 -3
- data/ext/pg_query/include/{libpq → postgres/libpq}/auth.h +12 -4
- data/ext/pg_query/include/{libpq → postgres/libpq}/crypt.h +5 -4
- data/ext/pg_query/include/{libpq → postgres/libpq}/hba.h +54 -8
- data/ext/pg_query/include/{libpq → postgres/libpq}/libpq-be.h +45 -17
- data/ext/pg_query/include/{libpq → postgres/libpq}/libpq.h +31 -20
- data/ext/pg_query/include/{libpq → postgres/libpq}/pqcomm.h +26 -71
- data/ext/pg_query/include/{libpq → postgres/libpq}/pqformat.h +2 -2
- data/ext/pg_query/include/{libpq → postgres/libpq}/pqsignal.h +25 -13
- 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 +125 -25
- data/ext/pg_query/include/{mb → postgres/mb}/stringinfo_mb.h +1 -1
- data/ext/pg_query/include/{miscadmin.h → postgres/miscadmin.h} +96 -65
- data/ext/pg_query/include/{nodes → postgres/nodes}/bitmapset.h +11 -7
- data/ext/pg_query/include/{nodes → postgres/nodes}/execnodes.h +351 -103
- data/ext/pg_query/include/{nodes → postgres/nodes}/extensible.h +8 -4
- data/ext/pg_query/include/{nodes → postgres/nodes}/lockoptions.h +1 -1
- data/ext/pg_query/include/{nodes → postgres/nodes}/makefuncs.h +19 -6
- data/ext/pg_query/include/{nodes → postgres/nodes}/memnodes.h +11 -6
- 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 +100 -496
- 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 +678 -207
- data/ext/pg_query/include/{nodes → postgres/nodes}/pathnodes.h +1282 -454
- data/ext/pg_query/include/{nodes → postgres/nodes}/pg_list.h +103 -73
- data/ext/pg_query/include/{nodes → postgres/nodes}/plannodes.h +474 -133
- data/ext/pg_query/include/{nodes → postgres/nodes}/primnodes.h +754 -254
- data/ext/pg_query/include/{nodes → postgres/nodes}/print.h +1 -1
- data/ext/pg_query/include/postgres/nodes/queryjumble.h +86 -0
- 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/postgres/nodes/value.h +90 -0
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/cost.h +14 -5
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo.h +9 -7
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo_gene.h +1 -1
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/optimizer.h +31 -28
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/paths.h +29 -12
- data/ext/pg_query/include/{optimizer → postgres/optimizer}/planmain.h +15 -17
- data/ext/pg_query/include/{parser → postgres/parser}/analyze.h +20 -5
- data/ext/pg_query/include/postgres/parser/kwlist.h +498 -0
- data/ext/pg_query/include/{parser → postgres/parser}/parse_agg.h +5 -8
- data/ext/pg_query/include/{parser → postgres/parser}/parse_coerce.h +6 -1
- data/ext/pg_query/include/{parser → postgres/parser}/parse_expr.h +2 -3
- data/ext/pg_query/include/{parser → postgres/parser}/parse_func.h +2 -1
- data/ext/pg_query/include/{parser → postgres/parser}/parse_node.h +41 -11
- data/ext/pg_query/include/{parser → postgres/parser}/parse_oper.h +3 -5
- data/ext/pg_query/include/{parser → postgres/parser}/parse_relation.h +11 -5
- data/ext/pg_query/include/{parser → postgres/parser}/parse_type.h +4 -3
- data/ext/pg_query/include/postgres/parser/parser.h +68 -0
- 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 +2 -5
- data/ext/pg_query/include/{partitioning → postgres/partitioning}/partdefs.h +1 -1
- data/ext/pg_query/include/{pg_config.h → postgres/pg_config.h} +216 -228
- data/ext/pg_query/include/{pg_config_manual.h → postgres/pg_config_manual.h} +80 -58
- data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
- data/ext/pg_query/include/{pg_getopt.h → postgres/pg_getopt.h} +6 -6
- data/ext/pg_query/include/{pg_trace.h → postgres/pg_trace.h} +1 -1
- data/ext/pg_query/include/postgres/pgstat.h +778 -0
- data/ext/pg_query/include/{pgtime.h → postgres/pgtime.h} +16 -6
- data/ext/pg_query/include/{pl_gram.h → postgres/pl_gram.h} +116 -116
- 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} +10 -10
- data/ext/pg_query/include/{pl_unreserved_kwlist.h → postgres/pl_unreserved_kwlist.h} +3 -3
- data/ext/pg_query/include/{pl_unreserved_kwlist_d.h → postgres/pl_unreserved_kwlist_d.h} +60 -60
- data/ext/pg_query/include/{plerrcodes.h → postgres/plerrcodes.h} +9 -1
- data/ext/pg_query/include/{plpgsql.h → postgres/plpgsql.h} +79 -86
- data/ext/pg_query/include/{port → postgres/port}/atomics/arch-arm.h +9 -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 +3 -3
- 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 +129 -16
- 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} +107 -111
- 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 +17 -20
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker.h +3 -2
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker_internals.h +2 -2
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgwriter.h +6 -6
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/interrupt.h +1 -1
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/pgarch.h +7 -10
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/postmaster.h +21 -17
- data/ext/pg_query/include/postgres/postmaster/startup.h +41 -0
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/syslogger.h +16 -11
- data/ext/pg_query/include/{postmaster → postgres/postmaster}/walwriter.h +5 -3
- data/ext/pg_query/include/{regex → postgres/regex}/regex.h +27 -22
- data/ext/pg_query/include/{replication → postgres/replication}/logicallauncher.h +8 -5
- data/ext/pg_query/include/postgres/replication/logicalproto.h +274 -0
- data/ext/pg_query/include/postgres/replication/logicalworker.h +32 -0
- data/ext/pg_query/include/{replication → postgres/replication}/origin.h +8 -8
- data/ext/pg_query/include/postgres/replication/reorderbuffer.h +753 -0
- data/ext/pg_query/include/{replication → postgres/replication}/slot.h +42 -12
- data/ext/pg_query/include/{replication → postgres/replication}/syncrep.h +6 -12
- data/ext/pg_query/include/{replication → postgres/replication}/walreceiver.h +158 -20
- data/ext/pg_query/include/{replication → postgres/replication}/walsender.h +20 -20
- data/ext/pg_query/include/{rewrite → postgres/rewrite}/prs2lock.h +1 -1
- data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteHandler.h +1 -6
- 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 +3 -3
- data/ext/pg_query/include/{storage → postgres/storage}/block.h +24 -37
- data/ext/pg_query/include/{storage → postgres/storage}/buf.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/bufmgr.h +196 -95
- data/ext/pg_query/include/{storage → postgres/storage}/bufpage.h +152 -101
- data/ext/pg_query/include/{storage → postgres/storage}/condition_variable.h +14 -3
- data/ext/pg_query/include/{storage → postgres/storage}/dsm.h +6 -6
- data/ext/pg_query/include/{storage → postgres/storage}/dsm_impl.h +6 -2
- data/ext/pg_query/include/{storage → postgres/storage}/fd.h +48 -14
- data/ext/pg_query/include/postgres/storage/fileset.h +40 -0
- data/ext/pg_query/include/{storage → postgres/storage}/ipc.h +5 -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 +96 -57
- data/ext/pg_query/include/{storage → postgres/storage}/large_object.h +2 -2
- data/ext/pg_query/include/{storage → postgres/storage}/latch.h +17 -13
- data/ext/pg_query/include/{storage → postgres/storage}/lmgr.h +7 -1
- data/ext/pg_query/include/{storage → postgres/storage}/lock.h +37 -25
- data/ext/pg_query/include/{storage → postgres/storage}/lockdefs.h +4 -4
- data/ext/pg_query/include/{storage → postgres/storage}/lwlock.h +21 -33
- data/ext/pg_query/include/{storage → postgres/storage}/lwlocknames.h +0 -1
- 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 +9 -7
- data/ext/pg_query/include/{storage → postgres/storage}/pmsignal.h +15 -4
- data/ext/pg_query/include/{storage → postgres/storage}/predicate.h +5 -5
- data/ext/pg_query/include/{storage → postgres/storage}/proc.h +200 -67
- data/ext/pg_query/include/postgres/storage/procarray.h +99 -0
- data/ext/pg_query/include/{storage → postgres/storage}/proclist_types.h +1 -1
- data/ext/pg_query/include/{storage → postgres/storage}/procsignal.h +5 -7
- data/ext/pg_query/include/postgres/storage/relfilelocator.h +99 -0
- data/ext/pg_query/include/{storage → postgres/storage}/s_lock.h +118 -298
- data/ext/pg_query/include/{storage → postgres/storage}/sharedfileset.h +3 -11
- data/ext/pg_query/include/{storage → postgres/storage}/shm_mq.h +5 -4
- 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 +5 -5
- data/ext/pg_query/include/{storage → postgres/storage}/sinvaladt.h +4 -2
- data/ext/pg_query/include/{storage → postgres/storage}/smgr.h +21 -17
- data/ext/pg_query/include/{storage → postgres/storage}/spin.h +2 -2
- data/ext/pg_query/include/{storage → postgres/storage}/standby.h +17 -9
- data/ext/pg_query/include/{storage → postgres/storage}/standbydefs.h +2 -2
- data/ext/pg_query/include/{storage → postgres/storage}/sync.h +9 -5
- data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtag.h +7 -2
- data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtaglist.h +3 -2
- 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 -2
- data/ext/pg_query/include/{tcop → postgres/tcop}/pquery.h +7 -1
- data/ext/pg_query/include/{tcop → postgres/tcop}/tcopprot.h +19 -14
- data/ext/pg_query/include/{tcop → postgres/tcop}/utility.h +7 -3
- data/ext/pg_query/include/{tsearch → postgres/tsearch}/ts_cache.h +3 -5
- data/ext/pg_query/include/{utils → postgres/utils}/acl.h +37 -71
- data/ext/pg_query/include/{utils → postgres/utils}/aclchk_internal.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/array.h +26 -2
- data/ext/pg_query/include/postgres/utils/backend_progress.h +45 -0
- data/ext/pg_query/include/postgres/utils/backend_status.h +342 -0
- data/ext/pg_query/include/{utils → postgres/utils}/builtins.h +20 -11
- data/ext/pg_query/include/{utils → postgres/utils}/bytea.h +3 -2
- 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 +48 -27
- data/ext/pg_query/include/{utils → postgres/utils}/datum.h +9 -1
- data/ext/pg_query/include/{utils → postgres/utils}/dsa.h +5 -1
- data/ext/pg_query/include/{utils → postgres/utils}/elog.h +154 -48
- data/ext/pg_query/include/{utils → postgres/utils}/errcodes.h +2 -0
- 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 +13 -12
- data/ext/pg_query/include/{utils → postgres/utils}/fmgroids.h +1353 -696
- data/ext/pg_query/include/{utils → postgres/utils}/fmgrprotos.h +243 -18
- data/ext/pg_query/include/{utils → postgres/utils}/fmgrtab.h +6 -5
- data/ext/pg_query/include/{utils → postgres/utils}/guc.h +120 -121
- data/ext/pg_query/include/postgres/utils/guc_hooks.h +163 -0
- data/ext/pg_query/include/{utils → postgres/utils}/guc_tables.h +71 -21
- data/ext/pg_query/include/{utils → postgres/utils}/hsearch.h +15 -11
- data/ext/pg_query/include/{utils → postgres/utils}/inval.h +7 -3
- data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
- data/ext/pg_query/include/{utils → postgres/utils}/lsyscache.h +16 -1
- data/ext/pg_query/include/{utils → postgres/utils}/memdebug.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/memutils.h +14 -53
- 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 +38 -9
- data/ext/pg_query/include/{utils → postgres/utils}/palloc.h +33 -4
- data/ext/pg_query/include/{utils → postgres/utils}/partcache.h +3 -2
- data/ext/pg_query/include/{utils → postgres/utils}/pg_locale.h +37 -21
- data/ext/pg_query/include/postgres/utils/pgstat_internal.h +814 -0
- data/ext/pg_query/include/{utils → postgres/utils}/plancache.h +6 -5
- data/ext/pg_query/include/{utils → postgres/utils}/portal.h +12 -1
- data/ext/pg_query/include/{utils → postgres/utils}/probes.h +59 -59
- 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/postgres/utils/regproc.h +39 -0
- data/ext/pg_query/include/{utils → postgres/utils}/rel.h +129 -61
- data/ext/pg_query/include/{utils → postgres/utils}/relcache.h +21 -14
- 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 +9 -1
- data/ext/pg_query/include/{utils → postgres/utils}/sharedtuplestore.h +1 -1
- data/ext/pg_query/include/{utils → postgres/utils}/snapmgr.h +38 -15
- data/ext/pg_query/include/{utils → postgres/utils}/snapshot.h +14 -1
- data/ext/pg_query/include/{utils → postgres/utils}/sortsupport.h +117 -2
- data/ext/pg_query/include/{utils → postgres/utils}/syscache.h +9 -1
- data/ext/pg_query/include/{utils → postgres/utils}/timeout.h +11 -4
- data/ext/pg_query/include/{utils → postgres/utils}/timestamp.h +46 -15
- data/ext/pg_query/include/{utils → postgres/utils}/tuplesort.h +209 -41
- data/ext/pg_query/include/{utils → postgres/utils}/tuplestore.h +2 -2
- data/ext/pg_query/include/{utils → postgres/utils}/typcache.h +24 -17
- data/ext/pg_query/include/{utils → postgres/utils}/varlena.h +17 -3
- data/ext/pg_query/include/postgres/utils/wait_event.h +294 -0
- data/ext/pg_query/include/{utils → postgres/utils}/xml.h +18 -8
- data/ext/pg_query/include/{postgres.h → postgres/varatt.h} +65 -471
- data/ext/pg_query/include/protobuf/pg_query.pb-c.h +7494 -6382
- data/ext/pg_query/include/protobuf/pg_query.pb.h +116922 -84792
- data/ext/pg_query/include/protobuf-c/protobuf-c.h +7 -3
- data/ext/pg_query/include/protobuf-c.h +7 -3
- data/ext/pg_query/pg_query.c +10 -1
- data/ext/pg_query/pg_query.pb-c.c +21026 -17002
- data/ext/pg_query/pg_query_deparse.c +1 -9896
- data/ext/pg_query/pg_query_fingerprint.c +162 -50
- data/ext/pg_query/pg_query_fingerprint.h +3 -1
- data/ext/pg_query/pg_query_internal.h +1 -1
- data/ext/pg_query/pg_query_json_plpgsql.c +56 -12
- data/ext/pg_query/pg_query_normalize.c +259 -64
- data/ext/pg_query/pg_query_outfuncs.h +1 -0
- data/ext/pg_query/pg_query_outfuncs_json.c +71 -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 +86 -21
- data/ext/pg_query/pg_query_readfuncs_protobuf.c +43 -8
- data/ext/pg_query/pg_query_ruby.c +6 -1
- data/ext/pg_query/pg_query_ruby_freebsd.sym +2 -0
- data/ext/pg_query/pg_query_scan.c +3 -2
- data/ext/pg_query/pg_query_split.c +6 -5
- data/ext/pg_query/postgres_deparse.c +11067 -0
- data/ext/pg_query/postgres_deparse.h +9 -0
- data/ext/pg_query/protobuf-c.c +34 -27
- data/ext/pg_query/src_backend_catalog_namespace.c +27 -10
- data/ext/pg_query/src_backend_catalog_pg_proc.c +4 -1
- data/ext/pg_query/src_backend_commands_define.c +11 -1
- data/ext/pg_query/src_backend_nodes_bitmapset.c +13 -70
- data/ext/pg_query/src_backend_nodes_copyfuncs.c +103 -5894
- data/ext/pg_query/src_backend_nodes_equalfuncs.c +102 -3830
- data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
- data/ext/pg_query/src_backend_nodes_list.c +99 -12
- data/ext/pg_query/src_backend_nodes_makefuncs.c +99 -4
- data/ext/pg_query/src_backend_nodes_nodeFuncs.c +325 -131
- data/ext/pg_query/src_backend_nodes_nodes.c +38 -0
- data/ext/pg_query/src_backend_nodes_value.c +28 -19
- data/ext/pg_query/src_backend_parser_gram.c +36104 -32074
- data/ext/pg_query/src_backend_parser_parser.c +53 -8
- data/ext/pg_query/src_backend_parser_scan.c +4893 -3701
- data/ext/pg_query/src_backend_parser_scansup.c +4 -28
- data/ext/pg_query/src_backend_storage_ipc_ipc.c +13 -4
- data/ext/pg_query/src_backend_tcop_postgres.c +133 -105
- data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +140 -0
- data/ext/pg_query/src_backend_utils_adt_datum.c +17 -7
- 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 +489 -0
- data/ext/pg_query/src_backend_utils_adt_ruleutils.c +187 -19
- data/ext/pg_query/src_backend_utils_error_assert.c +17 -18
- data/ext/pg_query/src_backend_utils_error_elog.c +513 -318
- data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +44 -17
- data/ext/pg_query/src_backend_utils_init_globals.c +9 -6
- data/ext/pg_query/src_backend_utils_mb_mbutils.c +74 -131
- 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 +453 -314
- data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
- data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +549 -76
- 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 +420 -0
- data/ext/pg_query/src_common_keywords.c +15 -2
- data/ext/pg_query/src_common_kwlist_d.h +545 -498
- 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 +717 -113
- data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +49 -22
- data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -18
- data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +1136 -1195
- data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +10 -10
- data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +2 -2
- data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +60 -60
- data/ext/pg_query/src_port_pg_bitutils.c +103 -40
- data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
- data/ext/pg_query/src_port_qsort.c +12 -224
- data/ext/pg_query/src_port_snprintf.c +51 -29
- data/ext/pg_query/src_port_strerror.c +9 -19
- data/ext/pg_query/src_port_strlcpy.c +79 -0
- data/lib/pg_query/deparse.rb +7 -1
- data/lib/pg_query/filter_columns.rb +7 -5
- data/lib/pg_query/fingerprint.rb +21 -9
- data/lib/pg_query/node.rb +18 -13
- data/lib/pg_query/param_refs.rb +1 -1
- data/lib/pg_query/parse.rb +141 -50
- data/lib/pg_query/pg_query_pb.rb +175 -3031
- data/lib/pg_query/treewalker.rb +26 -2
- data/lib/pg_query/truncate.rb +54 -8
- data/lib/pg_query/version.rb +1 -1
- data/lib/pg_query.rb +0 -1
- metadata +443 -380
- data/ext/pg_query/guc-file.c +0 -0
- data/ext/pg_query/include/access/rmgr.h +0 -35
- data/ext/pg_query/include/access/xloginsert.h +0 -64
- data/ext/pg_query/include/bootstrap/bootstrap.h +0 -62
- data/ext/pg_query/include/catalog/genbki.h +0 -64
- data/ext/pg_query/include/catalog/indexing.h +0 -366
- data/ext/pg_query/include/commands/variable.h +0 -38
- data/ext/pg_query/include/common/ip.h +0 -37
- data/ext/pg_query/include/common/string.h +0 -19
- data/ext/pg_query/include/getaddrinfo.h +0 -162
- data/ext/pg_query/include/kwlist_d.h +0 -1072
- data/ext/pg_query/include/nodes/value.h +0 -61
- data/ext/pg_query/include/parser/gram.h +0 -1067
- data/ext/pg_query/include/parser/kwlist.h +0 -477
- data/ext/pg_query/include/parser/parse_clause.h +0 -54
- data/ext/pg_query/include/parser/parse_collate.h +0 -27
- data/ext/pg_query/include/parser/parse_target.h +0 -46
- data/ext/pg_query/include/parser/parser.h +0 -41
- data/ext/pg_query/include/pg_config_os.h +0 -8
- data/ext/pg_query/include/pgstat.h +0 -1487
- data/ext/pg_query/include/portability/instr_time.h +0 -256
- data/ext/pg_query/include/postmaster/fork_process.h +0 -17
- 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/reorderbuffer.h +0 -467
- data/ext/pg_query/include/storage/relfilenode.h +0 -99
- data/ext/pg_query/include/utils/dynahash.h +0 -19
- 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/regproc.h +0 -28
- 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_libpq_pqcomm.c +0 -651
- 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 -1831
- 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/lib/pg_query/json_field_names.rb +0 -1402
- /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "aggregate" system catalog (pg_aggregate)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_aggregate.h
|
|
@@ -44,25 +44,25 @@ CATALOG(pg_aggregate,2600,AggregateRelationId)
|
|
|
44
44
|
regproc aggtransfn BKI_LOOKUP(pg_proc);
|
|
45
45
|
|
|
46
46
|
/* final function (0 if none) */
|
|
47
|
-
regproc aggfinalfn BKI_DEFAULT(-)
|
|
47
|
+
regproc aggfinalfn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
48
48
|
|
|
49
49
|
/* combine function (0 if none) */
|
|
50
|
-
regproc aggcombinefn BKI_DEFAULT(-)
|
|
50
|
+
regproc aggcombinefn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
51
51
|
|
|
52
52
|
/* function to convert transtype to bytea (0 if none) */
|
|
53
|
-
regproc aggserialfn BKI_DEFAULT(-)
|
|
53
|
+
regproc aggserialfn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
54
54
|
|
|
55
55
|
/* function to convert bytea to transtype (0 if none) */
|
|
56
|
-
regproc aggdeserialfn BKI_DEFAULT(-)
|
|
56
|
+
regproc aggdeserialfn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
57
57
|
|
|
58
58
|
/* forward function for moving-aggregate mode (0 if none) */
|
|
59
|
-
regproc aggmtransfn BKI_DEFAULT(-)
|
|
59
|
+
regproc aggmtransfn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
60
60
|
|
|
61
61
|
/* inverse function for moving-aggregate mode (0 if none) */
|
|
62
|
-
regproc aggminvtransfn BKI_DEFAULT(-)
|
|
62
|
+
regproc aggminvtransfn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
63
63
|
|
|
64
64
|
/* final function for moving-aggregate mode (0 if none) */
|
|
65
|
-
regproc aggmfinalfn BKI_DEFAULT(-)
|
|
65
|
+
regproc aggmfinalfn BKI_DEFAULT(-) BKI_LOOKUP_OPT(pg_proc);
|
|
66
66
|
|
|
67
67
|
/* true to pass extra dummy arguments to aggfinalfn */
|
|
68
68
|
bool aggfinalextra BKI_DEFAULT(f);
|
|
@@ -77,7 +77,7 @@ CATALOG(pg_aggregate,2600,AggregateRelationId)
|
|
|
77
77
|
char aggmfinalmodify BKI_DEFAULT(r);
|
|
78
78
|
|
|
79
79
|
/* associated sort operator (0 if none) */
|
|
80
|
-
Oid aggsortop BKI_DEFAULT(0)
|
|
80
|
+
Oid aggsortop BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_operator);
|
|
81
81
|
|
|
82
82
|
/* type of aggregate's transition (state) data */
|
|
83
83
|
Oid aggtranstype BKI_LOOKUP(pg_type);
|
|
@@ -86,7 +86,7 @@ CATALOG(pg_aggregate,2600,AggregateRelationId)
|
|
|
86
86
|
int32 aggtransspace BKI_DEFAULT(0);
|
|
87
87
|
|
|
88
88
|
/* type of moving-aggregate state data (0 if none) */
|
|
89
|
-
Oid aggmtranstype BKI_DEFAULT(0)
|
|
89
|
+
Oid aggmtranstype BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_type);
|
|
90
90
|
|
|
91
91
|
/* estimated size of moving-agg state (0 for default est) */
|
|
92
92
|
int32 aggmtransspace BKI_DEFAULT(0);
|
|
@@ -108,6 +108,10 @@ CATALOG(pg_aggregate,2600,AggregateRelationId)
|
|
|
108
108
|
*/
|
|
109
109
|
typedef FormData_pg_aggregate *Form_pg_aggregate;
|
|
110
110
|
|
|
111
|
+
DECLARE_TOAST(pg_aggregate, 4159, 4160);
|
|
112
|
+
|
|
113
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_aggregate_fnoid_index, 2650, AggregateFnoidIndexId, on pg_aggregate using btree(aggfnoid oid_ops));
|
|
114
|
+
|
|
111
115
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
112
116
|
|
|
113
117
|
/*
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_aggregate_d.h
|
|
4
4
|
* Macro definitions for pg_aggregate
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
#define PG_AGGREGATE_D_H
|
|
20
20
|
|
|
21
21
|
#define AggregateRelationId 2600
|
|
22
|
+
#define AggregateFnoidIndexId 2650
|
|
22
23
|
|
|
23
24
|
#define Anum_pg_aggregate_aggfnoid 1
|
|
24
25
|
#define Anum_pg_aggregate_aggkind 2
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "access method" system catalog (pg_am)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_am.h
|
|
@@ -47,6 +47,9 @@ CATALOG(pg_am,2601,AccessMethodRelationId)
|
|
|
47
47
|
*/
|
|
48
48
|
typedef FormData_pg_am *Form_pg_am;
|
|
49
49
|
|
|
50
|
+
DECLARE_UNIQUE_INDEX(pg_am_name_index, 2651, AmNameIndexId, on pg_am using btree(amname name_ops));
|
|
51
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_am_oid_index, 2652, AmOidIndexId, on pg_am using btree(oid oid_ops));
|
|
52
|
+
|
|
50
53
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
51
54
|
|
|
52
55
|
/*
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_am_d.h
|
|
4
4
|
* Macro definitions for pg_am
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
#define PG_AM_D_H
|
|
20
20
|
|
|
21
21
|
#define AccessMethodRelationId 2601
|
|
22
|
+
#define AmNameIndexId 2651
|
|
23
|
+
#define AmOidIndexId 2652
|
|
22
24
|
|
|
23
25
|
#define Anum_pg_am_oid 1
|
|
24
26
|
#define Anum_pg_am_amname 2
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* relations need be included.
|
|
9
9
|
*
|
|
10
10
|
*
|
|
11
|
-
* Portions Copyright (c) 1996-
|
|
11
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
12
12
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
13
13
|
*
|
|
14
14
|
* src/include/catalog/pg_attribute.h
|
|
@@ -36,7 +36,8 @@
|
|
|
36
36
|
*/
|
|
37
37
|
CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,AttributeRelation_Rowtype_Id) BKI_SCHEMA_MACRO
|
|
38
38
|
{
|
|
39
|
-
Oid attrelid;
|
|
39
|
+
Oid attrelid BKI_LOOKUP(pg_class); /* OID of relation containing
|
|
40
|
+
* this attribute */
|
|
40
41
|
NameData attname; /* name of attribute */
|
|
41
42
|
|
|
42
43
|
/*
|
|
@@ -44,18 +45,12 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
44
45
|
* defines the data type of this attribute (e.g. int4). Information in
|
|
45
46
|
* that instance is redundant with the attlen, attbyval, and attalign
|
|
46
47
|
* attributes of this instance, so they had better match or Postgres will
|
|
47
|
-
* fail.
|
|
48
|
+
* fail. In an entry for a dropped column, this field is set to zero
|
|
49
|
+
* since the pg_type entry may no longer exist; but we rely on attlen,
|
|
50
|
+
* attbyval, and attalign to still tell us how large the values in the
|
|
51
|
+
* table are.
|
|
48
52
|
*/
|
|
49
|
-
Oid atttypid;
|
|
50
|
-
|
|
51
|
-
/*
|
|
52
|
-
* attstattarget is the target number of statistics datapoints to collect
|
|
53
|
-
* during VACUUM ANALYZE of this column. A zero here indicates that we do
|
|
54
|
-
* not wish to collect any stats about this column. A "-1" here indicates
|
|
55
|
-
* that no value has been explicitly set for this column, so ANALYZE
|
|
56
|
-
* should use the default setting.
|
|
57
|
-
*/
|
|
58
|
-
int32 attstattarget BKI_DEFAULT(-1);
|
|
53
|
+
Oid atttypid BKI_LOOKUP_OPT(pg_type);
|
|
59
54
|
|
|
60
55
|
/*
|
|
61
56
|
* attlen is a copy of the typlen field from pg_type for this attribute.
|
|
@@ -78,12 +73,6 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
78
73
|
*/
|
|
79
74
|
int16 attnum;
|
|
80
75
|
|
|
81
|
-
/*
|
|
82
|
-
* attndims is the declared number of dimensions, if an array type,
|
|
83
|
-
* otherwise zero.
|
|
84
|
-
*/
|
|
85
|
-
int32 attndims;
|
|
86
|
-
|
|
87
76
|
/*
|
|
88
77
|
* fastgetattr() uses attcacheoff to cache byte offsets of attributes in
|
|
89
78
|
* heap tuples. The value actually stored in pg_attribute (-1) indicates
|
|
@@ -101,12 +90,24 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
101
90
|
*/
|
|
102
91
|
int32 atttypmod BKI_DEFAULT(-1);
|
|
103
92
|
|
|
93
|
+
/*
|
|
94
|
+
* attndims is the declared number of dimensions, if an array type,
|
|
95
|
+
* otherwise zero.
|
|
96
|
+
*/
|
|
97
|
+
int16 attndims;
|
|
98
|
+
|
|
104
99
|
/*
|
|
105
100
|
* attbyval is a copy of the typbyval field from pg_type for this
|
|
106
101
|
* attribute. See atttypid comments above.
|
|
107
102
|
*/
|
|
108
103
|
bool attbyval;
|
|
109
104
|
|
|
105
|
+
/*
|
|
106
|
+
* attalign is a copy of the typalign field from pg_type for this
|
|
107
|
+
* attribute. See atttypid comments above.
|
|
108
|
+
*/
|
|
109
|
+
char attalign;
|
|
110
|
+
|
|
110
111
|
/*----------
|
|
111
112
|
* attstorage tells for VARLENA attributes, what the heap access
|
|
112
113
|
* methods can do to it if a given tuple doesn't fit into a page.
|
|
@@ -116,10 +117,14 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
116
117
|
char attstorage;
|
|
117
118
|
|
|
118
119
|
/*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
120
|
+
* attcompression sets the current compression method of the attribute.
|
|
121
|
+
* Typically this is InvalidCompressionMethod ('\0') to specify use of the
|
|
122
|
+
* current default setting (see default_toast_compression). Otherwise,
|
|
123
|
+
* 'p' selects pglz compression, while 'l' selects LZ4 compression.
|
|
124
|
+
* However, this field is ignored whenever attstorage does not allow
|
|
125
|
+
* compression.
|
|
121
126
|
*/
|
|
122
|
-
char
|
|
127
|
+
char attcompression BKI_DEFAULT('\0');
|
|
123
128
|
|
|
124
129
|
/* This flag represents the "NOT NULL" constraint */
|
|
125
130
|
bool attnotnull;
|
|
@@ -151,10 +156,21 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
151
156
|
bool attislocal BKI_DEFAULT(t);
|
|
152
157
|
|
|
153
158
|
/* Number of times inherited from direct parent relation(s) */
|
|
154
|
-
|
|
159
|
+
int16 attinhcount BKI_DEFAULT(0);
|
|
160
|
+
|
|
161
|
+
/*
|
|
162
|
+
* attstattarget is the target number of statistics datapoints to collect
|
|
163
|
+
* during VACUUM ANALYZE of this column. A zero here indicates that we do
|
|
164
|
+
* not wish to collect any stats about this column. A "-1" here indicates
|
|
165
|
+
* that no value has been explicitly set for this column, so ANALYZE
|
|
166
|
+
* should use the default setting.
|
|
167
|
+
*
|
|
168
|
+
* int16 is sufficient because the max value is currently 10000.
|
|
169
|
+
*/
|
|
170
|
+
int16 attstattarget BKI_DEFAULT(-1);
|
|
155
171
|
|
|
156
|
-
/* attribute's collation */
|
|
157
|
-
Oid attcollation;
|
|
172
|
+
/* attribute's collation, if any */
|
|
173
|
+
Oid attcollation BKI_LOOKUP_OPT(pg_collation);
|
|
158
174
|
|
|
159
175
|
#ifdef CATALOG_VARLEN /* variable-length fields start here */
|
|
160
176
|
/* NOTE: The following fields are not present in tuple descriptors. */
|
|
@@ -180,7 +196,7 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
180
196
|
* ATTRIBUTE_FIXED_PART_SIZE is the size of the fixed-layout,
|
|
181
197
|
* guaranteed-not-null part of a pg_attribute row. This is in fact as much
|
|
182
198
|
* of the row as gets copied into tuple descriptors, so don't expect you
|
|
183
|
-
* can access
|
|
199
|
+
* can access the variable-length fields except in a real tuple!
|
|
184
200
|
*/
|
|
185
201
|
#define ATTRIBUTE_FIXED_PART_SIZE \
|
|
186
202
|
(offsetof(FormData_pg_attribute,attcollation) + sizeof(Oid))
|
|
@@ -192,6 +208,9 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75,
|
|
|
192
208
|
*/
|
|
193
209
|
typedef FormData_pg_attribute *Form_pg_attribute;
|
|
194
210
|
|
|
211
|
+
DECLARE_UNIQUE_INDEX(pg_attribute_relid_attnam_index, 2658, AttributeRelidNameIndexId, on pg_attribute using btree(attrelid oid_ops, attname name_ops));
|
|
212
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_attribute_relid_attnum_index, 2659, AttributeRelidNumIndexId, on pg_attribute using btree(attrelid oid_ops, attnum int2_ops));
|
|
213
|
+
|
|
195
214
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
196
215
|
|
|
197
216
|
#define ATTRIBUTE_IDENTITY_ALWAYS 'a'
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_attribute_d.h
|
|
4
4
|
* Macro definitions for pg_attribute
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -20,19 +20,21 @@
|
|
|
20
20
|
|
|
21
21
|
#define AttributeRelationId 1249
|
|
22
22
|
#define AttributeRelation_Rowtype_Id 75
|
|
23
|
+
#define AttributeRelidNameIndexId 2658
|
|
24
|
+
#define AttributeRelidNumIndexId 2659
|
|
23
25
|
|
|
24
26
|
#define Anum_pg_attribute_attrelid 1
|
|
25
27
|
#define Anum_pg_attribute_attname 2
|
|
26
28
|
#define Anum_pg_attribute_atttypid 3
|
|
27
|
-
#define
|
|
28
|
-
#define
|
|
29
|
-
#define
|
|
30
|
-
#define
|
|
31
|
-
#define
|
|
32
|
-
#define
|
|
33
|
-
#define
|
|
29
|
+
#define Anum_pg_attribute_attlen 4
|
|
30
|
+
#define Anum_pg_attribute_attnum 5
|
|
31
|
+
#define Anum_pg_attribute_attcacheoff 6
|
|
32
|
+
#define Anum_pg_attribute_atttypmod 7
|
|
33
|
+
#define Anum_pg_attribute_attndims 8
|
|
34
|
+
#define Anum_pg_attribute_attbyval 9
|
|
35
|
+
#define Anum_pg_attribute_attalign 10
|
|
34
36
|
#define Anum_pg_attribute_attstorage 11
|
|
35
|
-
#define
|
|
37
|
+
#define Anum_pg_attribute_attcompression 12
|
|
36
38
|
#define Anum_pg_attribute_attnotnull 13
|
|
37
39
|
#define Anum_pg_attribute_atthasdef 14
|
|
38
40
|
#define Anum_pg_attribute_atthasmissing 15
|
|
@@ -41,13 +43,14 @@
|
|
|
41
43
|
#define Anum_pg_attribute_attisdropped 18
|
|
42
44
|
#define Anum_pg_attribute_attislocal 19
|
|
43
45
|
#define Anum_pg_attribute_attinhcount 20
|
|
44
|
-
#define
|
|
45
|
-
#define
|
|
46
|
-
#define
|
|
47
|
-
#define
|
|
48
|
-
#define
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
#define Anum_pg_attribute_attstattarget 21
|
|
47
|
+
#define Anum_pg_attribute_attcollation 22
|
|
48
|
+
#define Anum_pg_attribute_attacl 23
|
|
49
|
+
#define Anum_pg_attribute_attoptions 24
|
|
50
|
+
#define Anum_pg_attribute_attfdwoptions 25
|
|
51
|
+
#define Anum_pg_attribute_attmissingval 26
|
|
52
|
+
|
|
53
|
+
#define Natts_pg_attribute 26
|
|
51
54
|
|
|
52
55
|
|
|
53
56
|
#define ATTRIBUTE_IDENTITY_ALWAYS 'a'
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* pg_shadow and pg_group are now publicly accessible views on pg_authid.
|
|
7
7
|
*
|
|
8
8
|
*
|
|
9
|
-
* Portions Copyright (c) 1996-
|
|
9
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
10
10
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
11
11
|
*
|
|
12
12
|
* src/include/catalog/pg_authid.h
|
|
@@ -38,7 +38,7 @@ CATALOG(pg_authid,1260,AuthIdRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(284
|
|
|
38
38
|
bool rolcreatedb; /* allowed to create databases? */
|
|
39
39
|
bool rolcanlogin; /* allowed to log in as session user? */
|
|
40
40
|
bool rolreplication; /* role used for streaming replication */
|
|
41
|
-
bool rolbypassrls; /* bypasses row
|
|
41
|
+
bool rolbypassrls; /* bypasses row-level security? */
|
|
42
42
|
int32 rolconnlimit; /* max connections allowed (-1=no limit) */
|
|
43
43
|
|
|
44
44
|
/* remaining fields may be null; use heap_getattr to read them! */
|
|
@@ -55,4 +55,9 @@ CATALOG(pg_authid,1260,AuthIdRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(284
|
|
|
55
55
|
*/
|
|
56
56
|
typedef FormData_pg_authid *Form_pg_authid;
|
|
57
57
|
|
|
58
|
+
DECLARE_TOAST_WITH_MACRO(pg_authid, 4175, 4176, PgAuthidToastTable, PgAuthidToastIndex);
|
|
59
|
+
|
|
60
|
+
DECLARE_UNIQUE_INDEX(pg_authid_rolname_index, 2676, AuthIdRolnameIndexId, on pg_authid using btree(rolname name_ops));
|
|
61
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_authid_oid_index, 2677, AuthIdOidIndexId, on pg_authid using btree(oid oid_ops));
|
|
62
|
+
|
|
58
63
|
#endif /* PG_AUTHID_H */
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_authid_d.h
|
|
4
4
|
* Macro definitions for pg_authid
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -20,6 +20,10 @@
|
|
|
20
20
|
|
|
21
21
|
#define AuthIdRelationId 1260
|
|
22
22
|
#define AuthIdRelation_Rowtype_Id 2842
|
|
23
|
+
#define PgAuthidToastTable 4175
|
|
24
|
+
#define PgAuthidToastIndex 4176
|
|
25
|
+
#define AuthIdRolnameIndexId 2676
|
|
26
|
+
#define AuthIdOidIndexId 2677
|
|
23
27
|
|
|
24
28
|
#define Anum_pg_authid_oid 1
|
|
25
29
|
#define Anum_pg_authid_rolname 2
|
|
@@ -37,13 +41,19 @@
|
|
|
37
41
|
#define Natts_pg_authid 12
|
|
38
42
|
|
|
39
43
|
#define BOOTSTRAP_SUPERUSERID 10
|
|
40
|
-
#define
|
|
41
|
-
#define
|
|
42
|
-
#define
|
|
43
|
-
#define
|
|
44
|
-
#define
|
|
45
|
-
#define
|
|
46
|
-
#define
|
|
47
|
-
#define
|
|
44
|
+
#define ROLE_PG_DATABASE_OWNER 6171
|
|
45
|
+
#define ROLE_PG_READ_ALL_DATA 6181
|
|
46
|
+
#define ROLE_PG_WRITE_ALL_DATA 6182
|
|
47
|
+
#define ROLE_PG_MONITOR 3373
|
|
48
|
+
#define ROLE_PG_READ_ALL_SETTINGS 3374
|
|
49
|
+
#define ROLE_PG_READ_ALL_STATS 3375
|
|
50
|
+
#define ROLE_PG_STAT_SCAN_TABLES 3377
|
|
51
|
+
#define ROLE_PG_READ_SERVER_FILES 4569
|
|
52
|
+
#define ROLE_PG_WRITE_SERVER_FILES 4570
|
|
53
|
+
#define ROLE_PG_EXECUTE_SERVER_PROGRAM 4571
|
|
54
|
+
#define ROLE_PG_SIGNAL_BACKEND 4200
|
|
55
|
+
#define ROLE_PG_CHECKPOINT 4544
|
|
56
|
+
#define ROLE_PG_USE_RESERVED_CONNECTIONS 4550
|
|
57
|
+
#define ROLE_PG_CREATE_SUBSCRIPTION 6304
|
|
48
58
|
|
|
49
59
|
#endif /* PG_AUTHID_D_H */
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "relation" system catalog (pg_class)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_class.h
|
|
@@ -38,38 +38,38 @@ CATALOG(pg_class,1259,RelationRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(83,Relat
|
|
|
38
38
|
NameData relname;
|
|
39
39
|
|
|
40
40
|
/* OID of namespace containing this class */
|
|
41
|
-
Oid relnamespace BKI_DEFAULT(
|
|
41
|
+
Oid relnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
42
42
|
|
|
43
|
-
/* OID of entry in pg_type for
|
|
44
|
-
Oid reltype
|
|
43
|
+
/* OID of entry in pg_type for relation's implicit row type, if any */
|
|
44
|
+
Oid reltype BKI_LOOKUP_OPT(pg_type);
|
|
45
45
|
|
|
46
|
-
/* OID of entry in pg_type for underlying composite type */
|
|
47
|
-
Oid reloftype BKI_DEFAULT(0)
|
|
46
|
+
/* OID of entry in pg_type for underlying composite type, if any */
|
|
47
|
+
Oid reloftype BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_type);
|
|
48
48
|
|
|
49
49
|
/* class owner */
|
|
50
|
-
Oid relowner BKI_DEFAULT(
|
|
50
|
+
Oid relowner BKI_DEFAULT(POSTGRES) BKI_LOOKUP(pg_authid);
|
|
51
51
|
|
|
52
52
|
/* access method; 0 if not a table / index */
|
|
53
|
-
Oid relam BKI_DEFAULT(heap)
|
|
53
|
+
Oid relam BKI_DEFAULT(heap) BKI_LOOKUP_OPT(pg_am);
|
|
54
54
|
|
|
55
55
|
/* identifier of physical storage file */
|
|
56
56
|
/* relfilenode == 0 means it is a "mapped" relation, see relmapper.c */
|
|
57
57
|
Oid relfilenode BKI_DEFAULT(0);
|
|
58
58
|
|
|
59
59
|
/* identifier of table space for relation (0 means default for database) */
|
|
60
|
-
Oid reltablespace BKI_DEFAULT(0)
|
|
60
|
+
Oid reltablespace BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_tablespace);
|
|
61
61
|
|
|
62
62
|
/* # of blocks (not always up-to-date) */
|
|
63
63
|
int32 relpages BKI_DEFAULT(0);
|
|
64
64
|
|
|
65
|
-
/* # of tuples (not always up-to-date) */
|
|
66
|
-
float4 reltuples BKI_DEFAULT(
|
|
65
|
+
/* # of tuples (not always up-to-date; -1 means "unknown") */
|
|
66
|
+
float4 reltuples BKI_DEFAULT(-1);
|
|
67
67
|
|
|
68
68
|
/* # of all-visible blocks (not always up-to-date) */
|
|
69
69
|
int32 relallvisible BKI_DEFAULT(0);
|
|
70
70
|
|
|
71
71
|
/* OID of toast table; 0 if none */
|
|
72
|
-
Oid reltoastrelid BKI_DEFAULT(0);
|
|
72
|
+
Oid reltoastrelid BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_class);
|
|
73
73
|
|
|
74
74
|
/* T if has (or has had) any indexes */
|
|
75
75
|
bool relhasindex BKI_DEFAULT(f);
|
|
@@ -119,8 +119,8 @@ CATALOG(pg_class,1259,RelationRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(83,Relat
|
|
|
119
119
|
/* is relation a partition? */
|
|
120
120
|
bool relispartition BKI_DEFAULT(f);
|
|
121
121
|
|
|
122
|
-
/*
|
|
123
|
-
Oid relrewrite BKI_DEFAULT(0);
|
|
122
|
+
/* link to original rel during table rewrite; otherwise 0 */
|
|
123
|
+
Oid relrewrite BKI_DEFAULT(0) BKI_LOOKUP_OPT(pg_class);
|
|
124
124
|
|
|
125
125
|
/* all Xids < this are frozen in this rel */
|
|
126
126
|
TransactionId relfrozenxid BKI_DEFAULT(3); /* FirstNormalTransactionId */
|
|
@@ -152,6 +152,10 @@ CATALOG(pg_class,1259,RelationRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(83,Relat
|
|
|
152
152
|
*/
|
|
153
153
|
typedef FormData_pg_class *Form_pg_class;
|
|
154
154
|
|
|
155
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_class_oid_index, 2662, ClassOidIndexId, on pg_class using btree(oid oid_ops));
|
|
156
|
+
DECLARE_UNIQUE_INDEX(pg_class_relname_nsp_index, 2663, ClassNameNspIndexId, on pg_class using btree(relname name_ops, relnamespace oid_ops));
|
|
157
|
+
DECLARE_INDEX(pg_class_tblspc_relfilenode_index, 3455, ClassTblspcRelfilenodeIndexId, on pg_class using btree(reltablespace oid_ops, relfilenode oid_ops));
|
|
158
|
+
|
|
155
159
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
156
160
|
|
|
157
161
|
#define RELKIND_RELATION 'r' /* ordinary table */
|
|
@@ -178,7 +182,7 @@ typedef FormData_pg_class *Form_pg_class;
|
|
|
178
182
|
/*
|
|
179
183
|
* an explicitly chosen candidate key's columns are used as replica identity.
|
|
180
184
|
* Note this will still be set if the index has been dropped; in that case it
|
|
181
|
-
* has the same meaning as '
|
|
185
|
+
* has the same meaning as 'n'.
|
|
182
186
|
*/
|
|
183
187
|
#define REPLICA_IDENTITY_INDEX 'i'
|
|
184
188
|
|
|
@@ -194,6 +198,32 @@ typedef FormData_pg_class *Form_pg_class;
|
|
|
194
198
|
(relkind) == RELKIND_TOASTVALUE || \
|
|
195
199
|
(relkind) == RELKIND_MATVIEW)
|
|
196
200
|
|
|
201
|
+
#define RELKIND_HAS_PARTITIONS(relkind) \
|
|
202
|
+
((relkind) == RELKIND_PARTITIONED_TABLE || \
|
|
203
|
+
(relkind) == RELKIND_PARTITIONED_INDEX)
|
|
204
|
+
|
|
205
|
+
/*
|
|
206
|
+
* Relation kinds that support tablespaces: All relation kinds with storage
|
|
207
|
+
* support tablespaces, except that we don't support moving sequences around
|
|
208
|
+
* into different tablespaces. Partitioned tables and indexes don't have
|
|
209
|
+
* physical storage, but they have a tablespace settings so that their
|
|
210
|
+
* children can inherit it.
|
|
211
|
+
*/
|
|
212
|
+
#define RELKIND_HAS_TABLESPACE(relkind) \
|
|
213
|
+
((RELKIND_HAS_STORAGE(relkind) || RELKIND_HAS_PARTITIONS(relkind)) \
|
|
214
|
+
&& (relkind) != RELKIND_SEQUENCE)
|
|
215
|
+
|
|
216
|
+
/*
|
|
217
|
+
* Relation kinds with a table access method (rd_tableam). Although sequences
|
|
218
|
+
* use the heap table AM, they are enough of a special case in most uses that
|
|
219
|
+
* they are not included here.
|
|
220
|
+
*/
|
|
221
|
+
#define RELKIND_HAS_TABLE_AM(relkind) \
|
|
222
|
+
((relkind) == RELKIND_RELATION || \
|
|
223
|
+
(relkind) == RELKIND_TOASTVALUE || \
|
|
224
|
+
(relkind) == RELKIND_MATVIEW)
|
|
225
|
+
|
|
226
|
+
extern int errdetail_relkind_not_supported(char relkind);
|
|
197
227
|
|
|
198
228
|
#endif /* EXPOSE_TO_CLIENT_CODE */
|
|
199
229
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* pg_class_d.h
|
|
4
4
|
* Macro definitions for pg_class
|
|
5
5
|
*
|
|
6
|
-
* Portions Copyright (c) 1996-
|
|
6
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
7
7
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
8
|
*
|
|
9
9
|
* NOTES
|
|
@@ -20,6 +20,9 @@
|
|
|
20
20
|
|
|
21
21
|
#define RelationRelationId 1259
|
|
22
22
|
#define RelationRelation_Rowtype_Id 83
|
|
23
|
+
#define ClassOidIndexId 2662
|
|
24
|
+
#define ClassNameNspIndexId 2663
|
|
25
|
+
#define ClassTblspcRelfilenodeIndexId 3455
|
|
23
26
|
|
|
24
27
|
#define Anum_pg_class_oid 1
|
|
25
28
|
#define Anum_pg_class_relname 2
|
|
@@ -82,7 +85,7 @@
|
|
|
82
85
|
/*
|
|
83
86
|
* an explicitly chosen candidate key's columns are used as replica identity.
|
|
84
87
|
* Note this will still be set if the index has been dropped; in that case it
|
|
85
|
-
* has the same meaning as '
|
|
88
|
+
* has the same meaning as 'n'.
|
|
86
89
|
*/
|
|
87
90
|
#define REPLICA_IDENTITY_INDEX 'i'
|
|
88
91
|
|
|
@@ -98,6 +101,32 @@
|
|
|
98
101
|
(relkind) == RELKIND_TOASTVALUE || \
|
|
99
102
|
(relkind) == RELKIND_MATVIEW)
|
|
100
103
|
|
|
104
|
+
#define RELKIND_HAS_PARTITIONS(relkind) \
|
|
105
|
+
((relkind) == RELKIND_PARTITIONED_TABLE || \
|
|
106
|
+
(relkind) == RELKIND_PARTITIONED_INDEX)
|
|
107
|
+
|
|
108
|
+
/*
|
|
109
|
+
* Relation kinds that support tablespaces: All relation kinds with storage
|
|
110
|
+
* support tablespaces, except that we don't support moving sequences around
|
|
111
|
+
* into different tablespaces. Partitioned tables and indexes don't have
|
|
112
|
+
* physical storage, but they have a tablespace settings so that their
|
|
113
|
+
* children can inherit it.
|
|
114
|
+
*/
|
|
115
|
+
#define RELKIND_HAS_TABLESPACE(relkind) \
|
|
116
|
+
((RELKIND_HAS_STORAGE(relkind) || RELKIND_HAS_PARTITIONS(relkind)) \
|
|
117
|
+
&& (relkind) != RELKIND_SEQUENCE)
|
|
118
|
+
|
|
119
|
+
/*
|
|
120
|
+
* Relation kinds with a table access method (rd_tableam). Although sequences
|
|
121
|
+
* use the heap table AM, they are enough of a special case in most uses that
|
|
122
|
+
* they are not included here.
|
|
123
|
+
*/
|
|
124
|
+
#define RELKIND_HAS_TABLE_AM(relkind) \
|
|
125
|
+
((relkind) == RELKIND_RELATION || \
|
|
126
|
+
(relkind) == RELKIND_TOASTVALUE || \
|
|
127
|
+
(relkind) == RELKIND_MATVIEW)
|
|
128
|
+
|
|
129
|
+
extern int errdetail_relkind_not_supported(char relkind);
|
|
101
130
|
|
|
102
131
|
|
|
103
132
|
#endif /* PG_CLASS_D_H */
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* definition of the "collation" system catalog (pg_collation)
|
|
5
5
|
*
|
|
6
6
|
*
|
|
7
|
-
* Portions Copyright (c) 1996-
|
|
7
|
+
* Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
|
|
8
8
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
9
|
*
|
|
10
10
|
* src/include/catalog/pg_collation.h
|
|
@@ -30,16 +30,23 @@ CATALOG(pg_collation,3456,CollationRelationId)
|
|
|
30
30
|
{
|
|
31
31
|
Oid oid; /* oid */
|
|
32
32
|
NameData collname; /* collation name */
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
|
|
34
|
+
/* OID of namespace containing this collation */
|
|
35
|
+
Oid collnamespace BKI_DEFAULT(pg_catalog) BKI_LOOKUP(pg_namespace);
|
|
36
|
+
|
|
37
|
+
/* owner of collation */
|
|
38
|
+
Oid collowner BKI_DEFAULT(POSTGRES) BKI_LOOKUP(pg_authid);
|
|
35
39
|
char collprovider; /* see constants below */
|
|
36
40
|
bool collisdeterministic BKI_DEFAULT(t);
|
|
37
41
|
int32 collencoding; /* encoding for this collation; -1 = "all" */
|
|
38
|
-
NameData collcollate; /* LC_COLLATE setting */
|
|
39
|
-
NameData collctype; /* LC_CTYPE setting */
|
|
40
42
|
#ifdef CATALOG_VARLEN /* variable-length fields start here */
|
|
41
|
-
text
|
|
42
|
-
|
|
43
|
+
text collcollate BKI_DEFAULT(_null_); /* LC_COLLATE setting */
|
|
44
|
+
text collctype BKI_DEFAULT(_null_); /* LC_CTYPE setting */
|
|
45
|
+
text colliculocale BKI_DEFAULT(_null_); /* ICU locale ID */
|
|
46
|
+
text collicurules BKI_DEFAULT(_null_); /* ICU collation rules */
|
|
47
|
+
text collversion BKI_DEFAULT(_null_); /* provider-dependent
|
|
48
|
+
* version of collation
|
|
49
|
+
* data */
|
|
43
50
|
#endif
|
|
44
51
|
} FormData_pg_collation;
|
|
45
52
|
|
|
@@ -50,12 +57,31 @@ CATALOG(pg_collation,3456,CollationRelationId)
|
|
|
50
57
|
*/
|
|
51
58
|
typedef FormData_pg_collation *Form_pg_collation;
|
|
52
59
|
|
|
60
|
+
DECLARE_TOAST(pg_collation, 6175, 6176);
|
|
61
|
+
|
|
62
|
+
DECLARE_UNIQUE_INDEX(pg_collation_name_enc_nsp_index, 3164, CollationNameEncNspIndexId, on pg_collation using btree(collname name_ops, collencoding int4_ops, collnamespace oid_ops));
|
|
63
|
+
DECLARE_UNIQUE_INDEX_PKEY(pg_collation_oid_index, 3085, CollationOidIndexId, on pg_collation using btree(oid oid_ops));
|
|
64
|
+
|
|
53
65
|
#ifdef EXPOSE_TO_CLIENT_CODE
|
|
54
66
|
|
|
55
67
|
#define COLLPROVIDER_DEFAULT 'd'
|
|
56
68
|
#define COLLPROVIDER_ICU 'i'
|
|
57
69
|
#define COLLPROVIDER_LIBC 'c'
|
|
58
70
|
|
|
71
|
+
static inline const char *
|
|
72
|
+
collprovider_name(char c)
|
|
73
|
+
{
|
|
74
|
+
switch (c)
|
|
75
|
+
{
|
|
76
|
+
case COLLPROVIDER_ICU:
|
|
77
|
+
return "icu";
|
|
78
|
+
case COLLPROVIDER_LIBC:
|
|
79
|
+
return "libc";
|
|
80
|
+
default:
|
|
81
|
+
return "???";
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
59
85
|
#endif /* EXPOSE_TO_CLIENT_CODE */
|
|
60
86
|
|
|
61
87
|
|
|
@@ -65,9 +91,10 @@ extern Oid CollationCreate(const char *collname, Oid collnamespace,
|
|
|
65
91
|
bool collisdeterministic,
|
|
66
92
|
int32 collencoding,
|
|
67
93
|
const char *collcollate, const char *collctype,
|
|
94
|
+
const char *colliculocale,
|
|
95
|
+
const char *collicurules,
|
|
68
96
|
const char *collversion,
|
|
69
97
|
bool if_not_exists,
|
|
70
98
|
bool quiet);
|
|
71
|
-
extern void RemoveCollationById(Oid collationOid);
|
|
72
99
|
|
|
73
100
|
#endif /* PG_COLLATION_H */
|