pg_query 5.1.0 → 6.0.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.
Files changed (479) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +1 -1
  4. data/Rakefile +2 -2
  5. data/ext/pg_query/include/pg_query.h +4 -3
  6. data/ext/pg_query/include/pg_query_enum_defs.c +424 -154
  7. data/ext/pg_query/include/pg_query_fingerprint_conds.c +68 -4
  8. data/ext/pg_query/include/pg_query_fingerprint_defs.c +2952 -1845
  9. data/ext/pg_query/include/pg_query_outfuncs_conds.c +51 -3
  10. data/ext/pg_query/include/pg_query_outfuncs_defs.c +210 -23
  11. data/ext/pg_query/include/pg_query_readfuncs_conds.c +17 -1
  12. data/ext/pg_query/include/pg_query_readfuncs_defs.c +271 -52
  13. data/ext/pg_query/include/postgres/access/amapi.h +10 -3
  14. data/ext/pg_query/include/postgres/access/attmap.h +1 -1
  15. data/ext/pg_query/include/postgres/access/attnum.h +1 -1
  16. data/ext/pg_query/include/postgres/access/brin_internal.h +116 -0
  17. data/ext/pg_query/include/postgres/access/brin_tuple.h +112 -0
  18. data/ext/pg_query/include/postgres/access/clog.h +2 -3
  19. data/ext/pg_query/include/postgres/access/commit_ts.h +2 -3
  20. data/ext/pg_query/include/postgres/access/detoast.h +1 -1
  21. data/ext/pg_query/include/postgres/access/genam.h +8 -4
  22. data/ext/pg_query/include/postgres/access/gin.h +1 -1
  23. data/ext/pg_query/include/postgres/access/htup.h +1 -1
  24. data/ext/pg_query/include/postgres/access/htup_details.h +11 -11
  25. data/ext/pg_query/include/postgres/access/itup.h +3 -3
  26. data/ext/pg_query/include/postgres/access/parallel.h +1 -2
  27. data/ext/pg_query/include/postgres/access/printtup.h +1 -1
  28. data/ext/pg_query/include/postgres/access/relation.h +1 -1
  29. data/ext/pg_query/include/postgres/access/relscan.h +1 -1
  30. data/ext/pg_query/include/postgres/access/rmgrlist.h +1 -1
  31. data/ext/pg_query/include/postgres/access/sdir.h +1 -1
  32. data/ext/pg_query/include/postgres/access/skey.h +1 -1
  33. data/ext/pg_query/include/postgres/access/slru.h +221 -0
  34. data/ext/pg_query/include/postgres/access/stratnum.h +1 -1
  35. data/ext/pg_query/include/postgres/access/sysattr.h +1 -1
  36. data/ext/pg_query/include/postgres/access/table.h +1 -1
  37. data/ext/pg_query/include/postgres/access/tableam.h +33 -24
  38. data/ext/pg_query/include/postgres/access/tidstore.h +50 -0
  39. data/ext/pg_query/include/postgres/access/toast_compression.h +2 -2
  40. data/ext/pg_query/include/postgres/access/transam.h +7 -7
  41. data/ext/pg_query/include/postgres/access/tsmapi.h +1 -1
  42. data/ext/pg_query/include/postgres/access/tupconvert.h +1 -1
  43. data/ext/pg_query/include/postgres/access/tupdesc.h +5 -5
  44. data/ext/pg_query/include/postgres/access/tupmacs.h +1 -1
  45. data/ext/pg_query/include/postgres/access/twophase.h +2 -2
  46. data/ext/pg_query/include/postgres/access/xact.h +5 -5
  47. data/ext/pg_query/include/postgres/access/xlog.h +20 -12
  48. data/ext/pg_query/include/postgres/access/xlog_internal.h +4 -3
  49. data/ext/pg_query/include/postgres/access/xlogbackup.h +3 -1
  50. data/ext/pg_query/include/postgres/access/xlogdefs.h +5 -5
  51. data/ext/pg_query/include/postgres/access/xlogprefetcher.h +2 -2
  52. data/ext/pg_query/include/postgres/access/xlogreader.h +2 -2
  53. data/ext/pg_query/include/postgres/access/xlogrecord.h +3 -3
  54. data/ext/pg_query/include/postgres/access/xlogrecovery.h +4 -4
  55. data/ext/pg_query/include/postgres/archive/archive_module.h +9 -1
  56. data/ext/pg_query/include/postgres/c.h +31 -36
  57. data/ext/pg_query/include/postgres/catalog/catalog.h +3 -1
  58. data/ext/pg_query/include/postgres/catalog/catversion.h +2 -2
  59. data/ext/pg_query/include/postgres/catalog/dependency.h +17 -59
  60. data/ext/pg_query/include/postgres/catalog/genbki.h +12 -6
  61. data/ext/pg_query/include/postgres/catalog/index.h +22 -18
  62. data/ext/pg_query/include/postgres/catalog/indexing.h +1 -1
  63. data/ext/pg_query/include/postgres/catalog/namespace.h +18 -19
  64. data/ext/pg_query/include/postgres/catalog/objectaccess.h +2 -2
  65. data/ext/pg_query/include/postgres/catalog/objectaddress.h +1 -1
  66. data/ext/pg_query/include/postgres/catalog/pg_aggregate.h +4 -2
  67. data/ext/pg_query/include/postgres/catalog/pg_aggregate_d.h +1 -1
  68. data/ext/pg_query/include/postgres/catalog/pg_am.h +6 -3
  69. data/ext/pg_query/include/postgres/catalog/pg_am_d.h +1 -1
  70. data/ext/pg_query/include/postgres/catalog/pg_attribute.h +31 -14
  71. data/ext/pg_query/include/postgres/catalog/pg_attribute_d.h +3 -3
  72. data/ext/pg_query/include/postgres/catalog/pg_authid.h +6 -3
  73. data/ext/pg_query/include/postgres/catalog/pg_authid_d.h +2 -1
  74. data/ext/pg_query/include/postgres/catalog/pg_class.h +10 -5
  75. data/ext/pg_query/include/postgres/catalog/pg_class_d.h +4 -2
  76. data/ext/pg_query/include/postgres/catalog/pg_collation.h +11 -5
  77. data/ext/pg_query/include/postgres/catalog/pg_collation_d.h +5 -2
  78. data/ext/pg_query/include/postgres/catalog/pg_constraint.h +15 -10
  79. data/ext/pg_query/include/postgres/catalog/pg_constraint_d.h +2 -1
  80. data/ext/pg_query/include/postgres/catalog/pg_control.h +5 -3
  81. data/ext/pg_query/include/postgres/catalog/pg_conversion.h +8 -4
  82. data/ext/pg_query/include/postgres/catalog/pg_conversion_d.h +1 -1
  83. data/ext/pg_query/include/postgres/catalog/pg_database.h +9 -4
  84. data/ext/pg_query/include/postgres/catalog/pg_database_d.h +13 -12
  85. data/ext/pg_query/include/postgres/catalog/pg_depend.h +3 -3
  86. data/ext/pg_query/include/postgres/catalog/pg_depend_d.h +1 -1
  87. data/ext/pg_query/include/postgres/catalog/pg_event_trigger.h +6 -3
  88. data/ext/pg_query/include/postgres/catalog/pg_event_trigger_d.h +1 -1
  89. data/ext/pg_query/include/postgres/catalog/pg_index.h +5 -3
  90. data/ext/pg_query/include/postgres/catalog/pg_index_d.h +1 -1
  91. data/ext/pg_query/include/postgres/catalog/pg_language.h +6 -3
  92. data/ext/pg_query/include/postgres/catalog/pg_language_d.h +1 -1
  93. data/ext/pg_query/include/postgres/catalog/pg_namespace.h +6 -3
  94. data/ext/pg_query/include/postgres/catalog/pg_namespace_d.h +1 -1
  95. data/ext/pg_query/include/postgres/catalog/pg_opclass.h +6 -3
  96. data/ext/pg_query/include/postgres/catalog/pg_opclass_d.h +1 -1
  97. data/ext/pg_query/include/postgres/catalog/pg_operator.h +20 -3
  98. data/ext/pg_query/include/postgres/catalog/pg_operator_d.h +1 -1
  99. data/ext/pg_query/include/postgres/catalog/pg_opfamily.h +6 -3
  100. data/ext/pg_query/include/postgres/catalog/pg_opfamily_d.h +1 -1
  101. data/ext/pg_query/include/postgres/catalog/pg_partitioned_table.h +4 -2
  102. data/ext/pg_query/include/postgres/catalog/pg_partitioned_table_d.h +1 -1
  103. data/ext/pg_query/include/postgres/catalog/pg_proc.h +6 -3
  104. data/ext/pg_query/include/postgres/catalog/pg_proc_d.h +1 -1
  105. data/ext/pg_query/include/postgres/catalog/pg_publication.h +6 -3
  106. data/ext/pg_query/include/postgres/catalog/pg_publication_d.h +1 -1
  107. data/ext/pg_query/include/postgres/catalog/pg_replication_origin.h +6 -3
  108. data/ext/pg_query/include/postgres/catalog/pg_replication_origin_d.h +1 -1
  109. data/ext/pg_query/include/postgres/catalog/pg_statistic.h +10 -4
  110. data/ext/pg_query/include/postgres/catalog/pg_statistic_d.h +7 -3
  111. data/ext/pg_query/include/postgres/catalog/pg_statistic_ext.h +10 -7
  112. data/ext/pg_query/include/postgres/catalog/pg_statistic_ext_d.h +3 -3
  113. data/ext/pg_query/include/postgres/catalog/pg_transform.h +6 -3
  114. data/ext/pg_query/include/postgres/catalog/pg_transform_d.h +1 -1
  115. data/ext/pg_query/include/postgres/catalog/pg_trigger.h +4 -4
  116. data/ext/pg_query/include/postgres/catalog/pg_trigger_d.h +1 -1
  117. data/ext/pg_query/include/postgres/catalog/pg_ts_config.h +6 -3
  118. data/ext/pg_query/include/postgres/catalog/pg_ts_config_d.h +1 -1
  119. data/ext/pg_query/include/postgres/catalog/pg_ts_dict.h +6 -3
  120. data/ext/pg_query/include/postgres/catalog/pg_ts_dict_d.h +1 -1
  121. data/ext/pg_query/include/postgres/catalog/pg_ts_parser.h +6 -3
  122. data/ext/pg_query/include/postgres/catalog/pg_ts_parser_d.h +1 -1
  123. data/ext/pg_query/include/postgres/catalog/pg_ts_template.h +6 -3
  124. data/ext/pg_query/include/postgres/catalog/pg_ts_template_d.h +1 -1
  125. data/ext/pg_query/include/postgres/catalog/pg_type.h +6 -3
  126. data/ext/pg_query/include/postgres/catalog/pg_type_d.h +1 -1
  127. data/ext/pg_query/include/postgres/catalog/storage.h +1 -1
  128. data/ext/pg_query/include/postgres/catalog/syscache_ids.h +104 -0
  129. data/ext/pg_query/include/postgres/commands/async.h +2 -6
  130. data/ext/pg_query/include/postgres/commands/dbcommands.h +1 -1
  131. data/ext/pg_query/include/postgres/commands/defrem.h +6 -6
  132. data/ext/pg_query/include/postgres/commands/event_trigger.h +5 -2
  133. data/ext/pg_query/include/postgres/commands/explain.h +19 -3
  134. data/ext/pg_query/include/postgres/commands/prepare.h +1 -1
  135. data/ext/pg_query/include/postgres/commands/tablespace.h +1 -1
  136. data/ext/pg_query/include/postgres/commands/trigger.h +1 -1
  137. data/ext/pg_query/include/postgres/commands/vacuum.h +28 -26
  138. data/ext/pg_query/include/postgres/common/cryptohash.h +2 -2
  139. data/ext/pg_query/include/postgres/common/file_perm.h +1 -1
  140. data/ext/pg_query/include/postgres/common/file_utils.h +65 -0
  141. data/ext/pg_query/include/postgres/common/hashfn.h +16 -1
  142. data/ext/pg_query/include/postgres/common/hashfn_unstable.h +453 -0
  143. data/ext/pg_query/include/postgres/common/int.h +79 -4
  144. data/ext/pg_query/include/postgres/common/keywords.h +1 -1
  145. data/ext/pg_query/include/postgres/common/kwlookup.h +1 -1
  146. data/ext/pg_query/include/postgres/common/pg_prng.h +2 -1
  147. data/ext/pg_query/include/postgres/common/relpath.h +4 -4
  148. data/ext/pg_query/include/postgres/common/scram-common.h +1 -1
  149. data/ext/pg_query/include/postgres/common/sha2.h +1 -1
  150. data/ext/pg_query/include/postgres/common/string.h +1 -1
  151. data/ext/pg_query/include/postgres/common/unicode_east_asian_fw_table.h +2 -3
  152. data/ext/pg_query/include/postgres/copyfuncs.funcs.c +278 -30
  153. data/ext/pg_query/include/postgres/copyfuncs.switch.c +55 -4
  154. data/ext/pg_query/include/postgres/datatype/timestamp.h +28 -2
  155. data/ext/pg_query/include/postgres/equalfuncs.funcs.c +239 -26
  156. data/ext/pg_query/include/postgres/equalfuncs.switch.c +55 -4
  157. data/ext/pg_query/include/postgres/executor/execdesc.h +1 -1
  158. data/ext/pg_query/include/postgres/executor/executor.h +6 -5
  159. data/ext/pg_query/include/postgres/executor/functions.h +2 -1
  160. data/ext/pg_query/include/postgres/executor/instrument.h +5 -3
  161. data/ext/pg_query/include/postgres/executor/spi.h +2 -8
  162. data/ext/pg_query/include/postgres/executor/tablefunc.h +1 -1
  163. data/ext/pg_query/include/postgres/executor/tuptable.h +31 -2
  164. data/ext/pg_query/include/postgres/fmgr.h +2 -2
  165. data/ext/pg_query/include/postgres/foreign/fdwapi.h +1 -1
  166. data/ext/pg_query/include/postgres/funcapi.h +2 -2
  167. data/ext/pg_query/include/postgres/gram.h +871 -830
  168. data/ext/pg_query/include/postgres/gramparse.h +1 -1
  169. data/ext/pg_query/include/postgres/jit/jit.h +4 -3
  170. data/ext/pg_query/include/postgres/kwlist_d.h +511 -466
  171. data/ext/pg_query/include/postgres/lib/dshash.h +25 -10
  172. data/ext/pg_query/include/postgres/lib/ilist.h +1 -1
  173. data/ext/pg_query/include/postgres/lib/pairingheap.h +1 -1
  174. data/ext/pg_query/include/postgres/lib/simplehash.h +40 -18
  175. data/ext/pg_query/include/postgres/lib/sort_template.h +14 -1
  176. data/ext/pg_query/include/postgres/lib/stringinfo.h +93 -11
  177. data/ext/pg_query/include/postgres/libpq/auth.h +1 -1
  178. data/ext/pg_query/include/postgres/libpq/crypt.h +2 -2
  179. data/ext/pg_query/include/postgres/libpq/hba.h +4 -4
  180. data/ext/pg_query/include/postgres/libpq/libpq-be.h +29 -25
  181. data/ext/pg_query/include/postgres/libpq/libpq.h +6 -7
  182. data/ext/pg_query/include/postgres/libpq/pqcomm.h +26 -20
  183. data/ext/pg_query/include/postgres/libpq/pqformat.h +2 -3
  184. data/ext/pg_query/include/postgres/libpq/pqsignal.h +1 -1
  185. data/ext/pg_query/include/postgres/libpq/protocol.h +89 -0
  186. data/ext/pg_query/include/postgres/libpq/sasl.h +1 -1
  187. data/ext/pg_query/include/postgres/libpq/scram.h +1 -1
  188. data/ext/pg_query/include/postgres/mb/pg_wchar.h +102 -82
  189. data/ext/pg_query/include/postgres/mb/stringinfo_mb.h +1 -1
  190. data/ext/pg_query/include/postgres/miscadmin.h +64 -52
  191. data/ext/pg_query/include/postgres/nodes/bitmapset.h +17 -3
  192. data/ext/pg_query/include/postgres/nodes/execnodes.h +109 -25
  193. data/ext/pg_query/include/postgres/nodes/extensible.h +1 -1
  194. data/ext/pg_query/include/postgres/nodes/lockoptions.h +4 -4
  195. data/ext/pg_query/include/postgres/nodes/makefuncs.h +8 -2
  196. data/ext/pg_query/include/postgres/nodes/memnodes.h +43 -4
  197. data/ext/pg_query/include/postgres/nodes/miscnodes.h +1 -1
  198. data/ext/pg_query/include/postgres/nodes/nodeFuncs.h +1 -1
  199. data/ext/pg_query/include/postgres/nodes/nodes.h +30 -41
  200. data/ext/pg_query/include/postgres/nodes/nodetags.h +464 -444
  201. data/ext/pg_query/include/postgres/nodes/params.h +1 -1
  202. data/ext/pg_query/include/postgres/nodes/parsenodes.h +358 -175
  203. data/ext/pg_query/include/postgres/nodes/pathnodes.h +60 -9
  204. data/ext/pg_query/include/postgres/nodes/pg_list.h +62 -11
  205. data/ext/pg_query/include/postgres/nodes/plannodes.h +11 -10
  206. data/ext/pg_query/include/postgres/nodes/primnodes.h +344 -50
  207. data/ext/pg_query/include/postgres/nodes/print.h +1 -1
  208. data/ext/pg_query/include/postgres/nodes/queryjumble.h +2 -2
  209. data/ext/pg_query/include/postgres/nodes/replnodes.h +23 -2
  210. data/ext/pg_query/include/postgres/nodes/supportnodes.h +1 -1
  211. data/ext/pg_query/include/postgres/nodes/tidbitmap.h +1 -1
  212. data/ext/pg_query/include/postgres/nodes/value.h +1 -1
  213. data/ext/pg_query/include/postgres/optimizer/cost.h +5 -4
  214. data/ext/pg_query/include/postgres/optimizer/geqo.h +1 -1
  215. data/ext/pg_query/include/postgres/optimizer/geqo_gene.h +1 -1
  216. data/ext/pg_query/include/postgres/optimizer/optimizer.h +5 -2
  217. data/ext/pg_query/include/postgres/optimizer/paths.h +13 -8
  218. data/ext/pg_query/include/postgres/optimizer/planmain.h +7 -1
  219. data/ext/pg_query/include/postgres/parser/analyze.h +3 -1
  220. data/ext/pg_query/include/postgres/parser/kwlist.h +22 -2
  221. data/ext/pg_query/include/postgres/parser/parse_agg.h +1 -1
  222. data/ext/pg_query/include/postgres/parser/parse_coerce.h +2 -2
  223. data/ext/pg_query/include/postgres/parser/parse_expr.h +1 -1
  224. data/ext/pg_query/include/postgres/parser/parse_func.h +2 -2
  225. data/ext/pg_query/include/postgres/parser/parse_node.h +3 -2
  226. data/ext/pg_query/include/postgres/parser/parse_oper.h +4 -1
  227. data/ext/pg_query/include/postgres/parser/parse_relation.h +1 -1
  228. data/ext/pg_query/include/postgres/parser/parse_type.h +2 -2
  229. data/ext/pg_query/include/postgres/parser/parser.h +3 -3
  230. data/ext/pg_query/include/postgres/parser/parsetree.h +1 -1
  231. data/ext/pg_query/include/postgres/parser/scanner.h +1 -1
  232. data/ext/pg_query/include/postgres/parser/scansup.h +1 -1
  233. data/ext/pg_query/include/postgres/partitioning/partdefs.h +1 -1
  234. data/ext/pg_query/include/postgres/pg_config.h +34 -34
  235. data/ext/pg_query/include/postgres/pg_config_manual.h +21 -8
  236. data/ext/pg_query/include/postgres/pg_getopt.h +1 -1
  237. data/ext/pg_query/include/postgres/pg_trace.h +1 -1
  238. data/ext/pg_query/include/postgres/pgstat.h +13 -11
  239. data/ext/pg_query/include/postgres/pgtime.h +1 -1
  240. data/ext/pg_query/include/postgres/pl_reserved_kwlist.h +1 -1
  241. data/ext/pg_query/include/postgres/pl_reserved_kwlist_d.h +1 -1
  242. data/ext/pg_query/include/postgres/pl_unreserved_kwlist.h +1 -1
  243. data/ext/pg_query/include/postgres/pl_unreserved_kwlist_d.h +1 -1
  244. data/ext/pg_query/include/postgres/plerrcodes.h +4 -4
  245. data/ext/pg_query/include/postgres/plpgsql.h +15 -13
  246. data/ext/pg_query/include/postgres/port/atomics/arch-arm.h +1 -1
  247. data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +1 -1
  248. data/ext/pg_query/include/postgres/port/atomics/arch-ppc.h +3 -1
  249. data/ext/pg_query/include/postgres/port/atomics/arch-x86.h +3 -1
  250. data/ext/pg_query/include/postgres/port/atomics/fallback.h +1 -1
  251. data/ext/pg_query/include/postgres/port/atomics/generic-gcc.h +38 -1
  252. data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +19 -1
  253. data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +16 -1
  254. data/ext/pg_query/include/postgres/port/atomics/generic.h +38 -2
  255. data/ext/pg_query/include/postgres/port/atomics.h +93 -6
  256. data/ext/pg_query/include/postgres/port/pg_bitutils.h +91 -9
  257. data/ext/pg_query/include/postgres/port/pg_bswap.h +1 -1
  258. data/ext/pg_query/include/postgres/port/pg_crc32c.h +10 -1
  259. data/ext/pg_query/include/postgres/port/pg_iovec.h +117 -0
  260. data/ext/pg_query/include/postgres/port/simd.h +48 -1
  261. data/ext/pg_query/include/postgres/port/win32/sys/socket.h +8 -0
  262. data/ext/pg_query/include/postgres/port/win32_port.h +1 -11
  263. data/ext/pg_query/include/postgres/port.h +7 -3
  264. data/ext/pg_query/include/postgres/portability/instr_time.h +1 -1
  265. data/ext/pg_query/include/postgres/postgres.h +1 -1
  266. data/ext/pg_query/include/postgres/postmaster/autovacuum.h +5 -16
  267. data/ext/pg_query/include/postgres/postmaster/bgworker.h +8 -6
  268. data/ext/pg_query/include/postgres/postmaster/bgworker_internals.h +3 -7
  269. data/ext/pg_query/include/postgres/postmaster/bgwriter.h +3 -3
  270. data/ext/pg_query/include/postgres/postmaster/interrupt.h +1 -1
  271. data/ext/pg_query/include/postgres/postmaster/pgarch.h +2 -2
  272. data/ext/pg_query/include/postgres/postmaster/postmaster.h +25 -5
  273. data/ext/pg_query/include/postgres/postmaster/startup.h +2 -2
  274. data/ext/pg_query/include/postgres/postmaster/syslogger.h +2 -4
  275. data/ext/pg_query/include/postgres/postmaster/walsummarizer.h +35 -0
  276. data/ext/pg_query/include/postgres/postmaster/walwriter.h +2 -2
  277. data/ext/pg_query/include/postgres/regex/regex.h +92 -9
  278. data/ext/pg_query/include/postgres/replication/logicallauncher.h +1 -1
  279. data/ext/pg_query/include/postgres/replication/logicalproto.h +2 -2
  280. data/ext/pg_query/include/postgres/replication/logicalworker.h +2 -1
  281. data/ext/pg_query/include/postgres/replication/origin.h +1 -1
  282. data/ext/pg_query/include/postgres/replication/reorderbuffer.h +18 -28
  283. data/ext/pg_query/include/postgres/replication/slot.h +41 -5
  284. data/ext/pg_query/include/postgres/replication/slotsync.h +38 -0
  285. data/ext/pg_query/include/postgres/replication/syncrep.h +1 -1
  286. data/ext/pg_query/include/postgres/replication/walreceiver.h +37 -11
  287. data/ext/pg_query/include/postgres/replication/walsender.h +5 -3
  288. data/ext/pg_query/include/postgres/rewrite/prs2lock.h +1 -1
  289. data/ext/pg_query/include/postgres/rewrite/rewriteHandler.h +7 -1
  290. data/ext/pg_query/include/postgres/rewrite/rewriteManip.h +2 -2
  291. data/ext/pg_query/include/postgres/rewrite/rewriteSupport.h +1 -1
  292. data/ext/pg_query/include/postgres/storage/block.h +1 -1
  293. data/ext/pg_query/include/postgres/storage/buf.h +1 -1
  294. data/ext/pg_query/include/postgres/storage/bufmgr.h +59 -41
  295. data/ext/pg_query/include/postgres/storage/bufpage.h +1 -1
  296. data/ext/pg_query/include/postgres/storage/condition_variable.h +1 -1
  297. data/ext/pg_query/include/postgres/storage/dsm.h +1 -1
  298. data/ext/pg_query/include/postgres/storage/dsm_impl.h +2 -2
  299. data/ext/pg_query/include/postgres/storage/fd.h +30 -13
  300. data/ext/pg_query/include/postgres/storage/fileset.h +1 -1
  301. data/ext/pg_query/include/postgres/storage/ipc.h +4 -1
  302. data/ext/pg_query/include/postgres/storage/item.h +1 -1
  303. data/ext/pg_query/include/postgres/storage/itemid.h +1 -1
  304. data/ext/pg_query/include/postgres/storage/itemptr.h +1 -1
  305. data/ext/pg_query/include/postgres/storage/large_object.h +1 -1
  306. data/ext/pg_query/include/postgres/storage/latch.h +4 -2
  307. data/ext/pg_query/include/postgres/storage/lmgr.h +8 -2
  308. data/ext/pg_query/include/postgres/storage/lock.h +19 -19
  309. data/ext/pg_query/include/postgres/storage/lockdefs.h +1 -1
  310. data/ext/pg_query/include/postgres/storage/lwlock.h +17 -9
  311. data/ext/pg_query/include/postgres/storage/lwlocknames.h +7 -10
  312. data/ext/pg_query/include/postgres/storage/off.h +1 -1
  313. data/ext/pg_query/include/postgres/storage/pg_sema.h +1 -1
  314. data/ext/pg_query/include/postgres/storage/pg_shmem.h +5 -4
  315. data/ext/pg_query/include/postgres/storage/pmsignal.h +2 -2
  316. data/ext/pg_query/include/postgres/storage/predicate.h +1 -5
  317. data/ext/pg_query/include/postgres/storage/proc.h +48 -23
  318. data/ext/pg_query/include/postgres/storage/procarray.h +5 -1
  319. data/ext/pg_query/include/postgres/storage/proclist_types.h +11 -9
  320. data/ext/pg_query/include/postgres/storage/procnumber.h +43 -0
  321. data/ext/pg_query/include/postgres/storage/procsignal.h +8 -6
  322. data/ext/pg_query/include/postgres/storage/read_stream.h +65 -0
  323. data/ext/pg_query/include/postgres/storage/relfilelocator.h +16 -15
  324. data/ext/pg_query/include/postgres/storage/s_lock.h +7 -27
  325. data/ext/pg_query/include/postgres/storage/sharedfileset.h +1 -1
  326. data/ext/pg_query/include/postgres/storage/shm_mq.h +2 -2
  327. data/ext/pg_query/include/postgres/storage/shm_toc.h +1 -1
  328. data/ext/pg_query/include/postgres/storage/shmem.h +1 -1
  329. data/ext/pg_query/include/postgres/storage/sinval.h +3 -3
  330. data/ext/pg_query/include/postgres/storage/smgr.h +41 -27
  331. data/ext/pg_query/include/postgres/storage/spin.h +1 -1
  332. data/ext/pg_query/include/postgres/storage/standby.h +13 -3
  333. data/ext/pg_query/include/postgres/storage/standbydefs.h +2 -2
  334. data/ext/pg_query/include/postgres/storage/sync.h +4 -4
  335. data/ext/pg_query/include/postgres/tcop/cmdtag.h +1 -2
  336. data/ext/pg_query/include/postgres/tcop/cmdtaglist.h +3 -2
  337. data/ext/pg_query/include/postgres/tcop/deparse_utility.h +2 -2
  338. data/ext/pg_query/include/postgres/tcop/dest.h +3 -2
  339. data/ext/pg_query/include/postgres/tcop/fastpath.h +1 -1
  340. data/ext/pg_query/include/postgres/tcop/pquery.h +1 -1
  341. data/ext/pg_query/include/postgres/tcop/tcopprot.h +9 -5
  342. data/ext/pg_query/include/postgres/tcop/utility.h +2 -2
  343. data/ext/pg_query/include/postgres/tsearch/ts_cache.h +1 -1
  344. data/ext/pg_query/include/postgres/utils/acl.h +19 -7
  345. data/ext/pg_query/include/postgres/utils/aclchk_internal.h +1 -1
  346. data/ext/pg_query/include/postgres/utils/array.h +1 -2
  347. data/ext/pg_query/include/postgres/utils/ascii.h +84 -0
  348. data/ext/pg_query/include/postgres/utils/backend_progress.h +3 -2
  349. data/ext/pg_query/include/postgres/utils/backend_status.h +8 -10
  350. data/ext/pg_query/include/postgres/utils/builtins.h +4 -1
  351. data/ext/pg_query/include/postgres/utils/bytea.h +2 -2
  352. data/ext/pg_query/include/postgres/utils/catcache.h +5 -6
  353. data/ext/pg_query/include/postgres/utils/date.h +1 -1
  354. data/ext/pg_query/include/postgres/utils/datetime.h +4 -1
  355. data/ext/pg_query/include/postgres/utils/datum.h +1 -1
  356. data/ext/pg_query/include/postgres/utils/dsa.h +44 -5
  357. data/ext/pg_query/include/postgres/utils/elog.h +3 -8
  358. data/ext/pg_query/include/postgres/utils/errcodes.h +1 -3
  359. data/ext/pg_query/include/postgres/utils/expandeddatum.h +1 -1
  360. data/ext/pg_query/include/postgres/utils/expandedrecord.h +1 -1
  361. data/ext/pg_query/include/postgres/utils/float.h +1 -1
  362. data/ext/pg_query/include/postgres/utils/fmgroids.h +49 -16
  363. data/ext/pg_query/include/postgres/utils/fmgrprotos.h +47 -14
  364. data/ext/pg_query/include/postgres/utils/fmgrtab.h +1 -1
  365. data/ext/pg_query/include/postgres/utils/guc.h +20 -6
  366. data/ext/pg_query/include/postgres/utils/guc_hooks.h +23 -2
  367. data/ext/pg_query/include/postgres/utils/guc_tables.h +6 -5
  368. data/ext/pg_query/include/postgres/utils/hsearch.h +2 -2
  369. data/ext/pg_query/include/postgres/utils/injection_point.h +44 -0
  370. data/ext/pg_query/include/postgres/utils/inval.h +1 -1
  371. data/ext/pg_query/include/postgres/utils/logtape.h +5 -5
  372. data/ext/pg_query/include/postgres/utils/lsyscache.h +6 -3
  373. data/ext/pg_query/include/postgres/utils/memdebug.h +1 -1
  374. data/ext/pg_query/include/postgres/utils/memutils.h +12 -5
  375. data/ext/pg_query/include/postgres/utils/memutils_internal.h +53 -13
  376. data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +25 -9
  377. data/ext/pg_query/include/postgres/utils/numeric.h +6 -1
  378. data/ext/pg_query/include/postgres/utils/palloc.h +1 -15
  379. data/ext/pg_query/include/postgres/utils/partcache.h +1 -1
  380. data/ext/pg_query/include/postgres/utils/pg_locale.h +8 -7
  381. data/ext/pg_query/include/postgres/utils/pgstat_internal.h +11 -17
  382. data/ext/pg_query/include/postgres/utils/plancache.h +5 -3
  383. data/ext/pg_query/include/postgres/utils/portal.h +9 -9
  384. data/ext/pg_query/include/postgres/utils/queryenvironment.h +2 -2
  385. data/ext/pg_query/include/postgres/utils/regproc.h +1 -1
  386. data/ext/pg_query/include/postgres/utils/rel.h +14 -15
  387. data/ext/pg_query/include/postgres/utils/relcache.h +2 -5
  388. data/ext/pg_query/include/postgres/utils/reltrigger.h +1 -1
  389. data/ext/pg_query/include/postgres/utils/resowner.h +90 -9
  390. data/ext/pg_query/include/postgres/utils/ruleutils.h +1 -1
  391. data/ext/pg_query/include/postgres/utils/sharedtuplestore.h +1 -1
  392. data/ext/pg_query/include/postgres/utils/snapmgr.h +1 -52
  393. data/ext/pg_query/include/postgres/utils/snapshot.h +2 -2
  394. data/ext/pg_query/include/postgres/utils/sortsupport.h +1 -1
  395. data/ext/pg_query/include/postgres/utils/syscache.h +2 -98
  396. data/ext/pg_query/include/postgres/utils/timeout.h +3 -2
  397. data/ext/pg_query/include/postgres/utils/timestamp.h +1 -1
  398. data/ext/pg_query/include/postgres/utils/tuplesort.h +36 -9
  399. data/ext/pg_query/include/postgres/utils/tuplestore.h +2 -5
  400. data/ext/pg_query/include/postgres/utils/typcache.h +2 -1
  401. data/ext/pg_query/include/postgres/utils/varlena.h +1 -1
  402. data/ext/pg_query/include/postgres/utils/wait_event.h +28 -214
  403. data/ext/pg_query/include/postgres/utils/wait_event_types.h +218 -0
  404. data/ext/pg_query/include/postgres/utils/xml.h +4 -4
  405. data/ext/pg_query/include/postgres/varatt.h +1 -1
  406. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +1546 -792
  407. data/ext/pg_query/include/protobuf/pg_query.pb.h +58365 -46595
  408. data/ext/pg_query/pg_query.pb-c.c +6598 -3739
  409. data/ext/pg_query/pg_query_normalize.c +42 -1
  410. data/ext/pg_query/pg_query_outfuncs_json.c +3 -1
  411. data/ext/pg_query/pg_query_parse_plpgsql.c +12 -13
  412. data/ext/pg_query/pg_query_readfuncs_protobuf.c +2 -2
  413. data/ext/pg_query/pg_query_ruby_freebsd.sym +0 -1
  414. data/ext/pg_query/pg_query_scan.c +1 -1
  415. data/ext/pg_query/postgres_deparse.c +409 -21
  416. data/ext/pg_query/src_backend_catalog_namespace.c +241 -66
  417. data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -3
  418. data/ext/pg_query/src_backend_commands_define.c +2 -3
  419. data/ext/pg_query/src_backend_nodes_bitmapset.c +137 -94
  420. data/ext/pg_query/src_backend_nodes_copyfuncs.c +1 -1
  421. data/ext/pg_query/src_backend_nodes_equalfuncs.c +1 -1
  422. data/ext/pg_query/src_backend_nodes_extensible.c +1 -1
  423. data/ext/pg_query/src_backend_nodes_list.c +3 -7
  424. data/ext/pg_query/src_backend_nodes_makefuncs.c +59 -20
  425. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +109 -2
  426. data/ext/pg_query/src_backend_nodes_value.c +1 -1
  427. data/ext/pg_query/src_backend_parser_gram.c +34490 -32135
  428. data/ext/pg_query/src_backend_parser_parser.c +8 -8
  429. data/ext/pg_query/src_backend_parser_scan.c +5637 -3028
  430. data/ext/pg_query/src_backend_parser_scansup.c +2 -1
  431. data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
  432. data/ext/pg_query/src_backend_tcop_postgres.c +34 -10
  433. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +2 -2
  434. data/ext/pg_query/src_backend_utils_adt_datum.c +8 -6
  435. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  436. data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
  437. data/ext/pg_query/src_backend_utils_adt_numutils.c +4 -5
  438. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +101 -28
  439. data/ext/pg_query/src_backend_utils_error_assert.c +1 -1
  440. data/ext/pg_query/src_backend_utils_error_elog.c +47 -42
  441. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +4 -2
  442. data/ext/pg_query/src_backend_utils_init_globals.c +15 -3
  443. data/ext/pg_query/src_backend_utils_mb_mbutils.c +11 -18
  444. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +16 -6
  445. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +8 -5
  446. data/ext/pg_query/src_backend_utils_mmgr_aset.c +308 -238
  447. data/ext/pg_query/src_backend_utils_mmgr_bump.c +728 -0
  448. data/ext/pg_query/src_backend_utils_mmgr_generation.c +273 -197
  449. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +270 -215
  450. data/ext/pg_query/src_backend_utils_mmgr_slab.c +154 -96
  451. data/ext/pg_query/src_common_encnames.c +43 -44
  452. data/ext/pg_query/src_common_hashfn.c +1 -1
  453. data/ext/pg_query/src_common_keywords.c +1 -1
  454. data/ext/pg_query/src_common_kwlist_d.h +511 -466
  455. data/ext/pg_query/src_common_kwlookup.c +1 -1
  456. data/ext/pg_query/src_common_psprintf.c +3 -3
  457. data/ext/pg_query/src_common_stringinfo.c +18 -1
  458. data/ext/pg_query/src_common_wchar.c +45 -108
  459. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +99 -5
  460. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +1 -1
  461. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +242 -143
  462. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  463. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +1 -1
  464. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +19 -1
  465. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +1 -1
  466. data/ext/pg_query/src_port_pg_bitutils.c +173 -28
  467. data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
  468. data/ext/pg_query/src_port_snprintf.c +1 -1
  469. data/ext/pg_query/src_port_strerror.c +1 -3
  470. data/ext/pg_query/src_port_strlcpy.c +1 -1
  471. data/lib/pg_query/param_refs.rb +1 -1
  472. data/lib/pg_query/pg_query_pb.rb +26 -3
  473. data/lib/pg_query/treewalker.rb +38 -11
  474. data/lib/pg_query/truncate.rb +1 -1
  475. data/lib/pg_query/version.rb +1 -1
  476. metadata +25 -11
  477. data/ext/pg_query/include/postgres/storage/backendid.h +0 -37
  478. data/ext/pg_query/include/postgres/storage/sinvaladt.h +0 -45
  479. data/ext/pg_query/src_backend_nodes_nodes.c +0 -38
@@ -0,0 +1,84 @@
1
+ /*-----------------------------------------------------------------------
2
+ * ascii.h
3
+ *
4
+ * Portions Copyright (c) 1999-2024, PostgreSQL Global Development Group
5
+ *
6
+ * src/include/utils/ascii.h
7
+ *
8
+ *-----------------------------------------------------------------------
9
+ */
10
+
11
+ #ifndef _ASCII_H_
12
+ #define _ASCII_H_
13
+
14
+ #include "port/simd.h"
15
+
16
+ extern void ascii_safe_strlcpy(char *dest, const char *src, size_t destsiz);
17
+
18
+ /*
19
+ * Verify a chunk of bytes for valid ASCII.
20
+ *
21
+ * Returns false if the input contains any zero bytes or bytes with the
22
+ * high-bit set. Input len must be a multiple of the chunk size (8 or 16).
23
+ */
24
+ static inline bool
25
+ is_valid_ascii(const unsigned char *s, int len)
26
+ {
27
+ const unsigned char *const s_end = s + len;
28
+ Vector8 chunk;
29
+ Vector8 highbit_cum = vector8_broadcast(0);
30
+ #ifdef USE_NO_SIMD
31
+ Vector8 zero_cum = vector8_broadcast(0x80);
32
+ #endif
33
+
34
+ Assert(len % sizeof(chunk) == 0);
35
+
36
+ while (s < s_end)
37
+ {
38
+ vector8_load(&chunk, s);
39
+
40
+ /* Capture any zero bytes in this chunk. */
41
+ #ifdef USE_NO_SIMD
42
+
43
+ /*
44
+ * First, add 0x7f to each byte. This sets the high bit in each byte,
45
+ * unless it was a zero. If any resulting high bits are zero, the
46
+ * corresponding high bits in the zero accumulator will be cleared.
47
+ *
48
+ * If none of the bytes in the chunk had the high bit set, the max
49
+ * value each byte can have after the addition is 0x7f + 0x7f = 0xfe,
50
+ * and we don't need to worry about carrying over to the next byte. If
51
+ * any input bytes did have the high bit set, it doesn't matter
52
+ * because we check for those separately.
53
+ */
54
+ zero_cum &= (chunk + vector8_broadcast(0x7F));
55
+ #else
56
+
57
+ /*
58
+ * Set all bits in each lane of the highbit accumulator where input
59
+ * bytes are zero.
60
+ */
61
+ highbit_cum = vector8_or(highbit_cum,
62
+ vector8_eq(chunk, vector8_broadcast(0)));
63
+ #endif
64
+
65
+ /* Capture all set bits in this chunk. */
66
+ highbit_cum = vector8_or(highbit_cum, chunk);
67
+
68
+ s += sizeof(chunk);
69
+ }
70
+
71
+ /* Check if any high bits in the high bit accumulator got set. */
72
+ if (vector8_is_highbit_set(highbit_cum))
73
+ return false;
74
+
75
+ #ifdef USE_NO_SIMD
76
+ /* Check if any high bits in the zero accumulator got cleared. */
77
+ if (zero_cum != vector8_broadcast(0x80))
78
+ return false;
79
+ #endif
80
+
81
+ return true;
82
+ }
83
+
84
+ #endif /* _ASCII_H_ */
@@ -6,7 +6,7 @@
6
6
  * backend's command progress counters, without ascribing meaning to the
7
7
  * individual fields. See commands/progress.h and system_views.sql for that.
8
8
  *
9
- * Copyright (c) 2001-2023, PostgreSQL Global Development Group
9
+ * Copyright (c) 2001-2024, PostgreSQL Global Development Group
10
10
  *
11
11
  * src/include/utils/backend_progress.h
12
12
  * ----------
@@ -27,7 +27,7 @@ typedef enum ProgressCommandType
27
27
  PROGRESS_COMMAND_CLUSTER,
28
28
  PROGRESS_COMMAND_CREATE_INDEX,
29
29
  PROGRESS_COMMAND_BASEBACKUP,
30
- PROGRESS_COMMAND_COPY
30
+ PROGRESS_COMMAND_COPY,
31
31
  } ProgressCommandType;
32
32
 
33
33
  #define PGSTAT_NUM_PROGRESS_PARAM 20
@@ -37,6 +37,7 @@ extern void pgstat_progress_start_command(ProgressCommandType cmdtype,
37
37
  Oid relid);
38
38
  extern void pgstat_progress_update_param(int index, int64 val);
39
39
  extern void pgstat_progress_incr_param(int index, int64 incr);
40
+ extern void pgstat_progress_parallel_incr_param(int index, int64 incr);
40
41
  extern void pgstat_progress_update_multi_param(int nparam, const int *index,
41
42
  const int64 *val);
42
43
  extern void pgstat_progress_end_command(void);
@@ -2,7 +2,7 @@
2
2
  * backend_status.h
3
3
  * Definitions related to backend status reporting
4
4
  *
5
- * Copyright (c) 2001-2023, PostgreSQL Global Development Group
5
+ * Copyright (c) 2001-2024, PostgreSQL Global Development Group
6
6
  *
7
7
  * src/include/utils/backend_status.h
8
8
  * ----------
@@ -13,7 +13,7 @@
13
13
  #include "datatype/timestamp.h"
14
14
  #include "libpq/pqcomm.h"
15
15
  #include "miscadmin.h" /* for BackendType */
16
- #include "storage/backendid.h"
16
+ #include "storage/procnumber.h"
17
17
  #include "utils/backend_progress.h"
18
18
 
19
19
 
@@ -29,7 +29,7 @@ typedef enum BackendState
29
29
  STATE_IDLEINTRANSACTION,
30
30
  STATE_FASTPATH,
31
31
  STATE_IDLEINTRANSACTION_ABORTED,
32
- STATE_DISABLED
32
+ STATE_DISABLED,
33
33
  } BackendState;
34
34
 
35
35
 
@@ -87,7 +87,7 @@ typedef struct PgBackendGSSStatus
87
87
  *
88
88
  * Each live backend maintains a PgBackendStatus struct in shared memory
89
89
  * showing its current activity. (The structs are allocated according to
90
- * BackendId, but that is not critical.) Note that this is unrelated to the
90
+ * ProcNumber, but that is not critical.) Note that this is unrelated to the
91
91
  * cumulative stats system (i.e. pgstat.c et al).
92
92
  *
93
93
  * Each auxiliary process also maintains a PgBackendStatus struct in shared
@@ -250,11 +250,9 @@ typedef struct LocalPgBackendStatus
250
250
  PgBackendStatus backendStatus;
251
251
 
252
252
  /*
253
- * The backend ID. For auxiliary processes, this will be set to a value
254
- * greater than MaxBackends (since auxiliary processes do not have proper
255
- * backend IDs).
253
+ * The proc number.
256
254
  */
257
- BackendId backend_id;
255
+ ProcNumber proc_number;
258
256
 
259
257
  /*
260
258
  * The xid of the current transaction if available, InvalidTransactionId
@@ -333,8 +331,8 @@ extern uint64 pgstat_get_my_query_id(void);
333
331
  * ----------
334
332
  */
335
333
  extern int pgstat_fetch_stat_numbackends(void);
336
- extern PgBackendStatus *pgstat_get_beentry_by_backend_id(BackendId beid);
337
- extern LocalPgBackendStatus *pgstat_get_local_beentry_by_backend_id(BackendId beid);
334
+ extern PgBackendStatus *pgstat_get_beentry_by_proc_number(ProcNumber procNumber);
335
+ extern LocalPgBackendStatus *pgstat_get_local_beentry_by_proc_number(ProcNumber procNumber);
338
336
  extern LocalPgBackendStatus *pgstat_get_local_beentry_by_index(int idx);
339
337
  extern char *pgstat_clip_activity(const char *raw_activity);
340
338
 
@@ -4,7 +4,7 @@
4
4
  * Declarations for operations on built-in types.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/utils/builtins.h
@@ -28,6 +28,9 @@ extern bool parse_bool_with_len(const char *value, size_t len, bool *result);
28
28
  /* domains.c */
29
29
  extern void domain_check(Datum value, bool isnull, Oid domainType,
30
30
  void **extra, MemoryContext mcxt);
31
+ extern bool domain_check_safe(Datum value, bool isnull, Oid domainType,
32
+ void **extra, MemoryContext mcxt,
33
+ Node *escontext);
31
34
  extern int errdatatype(Oid datatypeOid);
32
35
  extern int errdomainconstraint(Oid datatypeOid, const char *conname);
33
36
 
@@ -4,7 +4,7 @@
4
4
  * Declarations for BYTEA data type support.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/utils/bytea.h
@@ -19,7 +19,7 @@
19
19
  typedef enum
20
20
  {
21
21
  BYTEA_OUTPUT_ESCAPE,
22
- BYTEA_OUTPUT_HEX
22
+ BYTEA_OUTPUT_HEX,
23
23
  } ByteaOutputType;
24
24
 
25
25
  extern PGDLLIMPORT int bytea_output; /* ByteaOutputType, but int for GUC
@@ -10,7 +10,7 @@
10
10
  * guarantee that there can only be one matching row for a key combination.
11
11
  *
12
12
  *
13
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
13
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
14
14
  * Portions Copyright (c) 1994, Regents of the University of California
15
15
  *
16
16
  * src/include/utils/catcache.h
@@ -51,9 +51,11 @@ typedef struct catcache
51
51
  CCFastEqualFN cc_fastequal[CATCACHE_MAXKEYS]; /* fast equal function for
52
52
  * each key */
53
53
  int cc_keyno[CATCACHE_MAXKEYS]; /* AttrNumber of each key */
54
- dlist_head cc_lists; /* list of CatCList structs */
55
- int cc_ntup; /* # of tuples currently in this cache */
56
54
  int cc_nkeys; /* # of keys (1..CATCACHE_MAXKEYS) */
55
+ int cc_ntup; /* # of tuples currently in this cache */
56
+ int cc_nlist; /* # of CatCLists currently in this cache */
57
+ int cc_nlbuckets; /* # of CatCList hash buckets in this cache */
58
+ dlist_head *cc_lbucket; /* hash buckets for CatCLists */
57
59
  const char *cc_relname; /* name of relation the tuples come from */
58
60
  Oid cc_reloid; /* OID of relation the tuples come from */
59
61
  Oid cc_indexoid; /* OID of index matching cache keys */
@@ -225,7 +227,4 @@ extern void PrepareToInvalidateCacheTuple(Relation relation,
225
227
  HeapTuple newtuple,
226
228
  void (*function) (int, uint32, Oid));
227
229
 
228
- extern void PrintCatCacheLeakWarning(HeapTuple tuple);
229
- extern void PrintCatCacheListLeakWarning(CatCList *list);
230
-
231
230
  #endif /* CATCACHE_H */
@@ -4,7 +4,7 @@
4
4
  * Definitions for the SQL "date" and "time" types.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/utils/date.h
@@ -6,7 +6,7 @@
6
6
  * including date, and time.
7
7
  *
8
8
  *
9
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
9
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
10
10
  * Portions Copyright (c) 1994, Regents of the University of California
11
11
  *
12
12
  * src/include/utils/datetime.h
@@ -348,6 +348,9 @@ extern int DecodeUnits(int field, const char *lowtoken, int *val);
348
348
  extern int DecodeTimezoneName(const char *tzname, int *offset, pg_tz **tz);
349
349
  extern pg_tz *DecodeTimezoneNameToTz(const char *tzname);
350
350
 
351
+ extern int DecodeTimezoneAbbrevPrefix(const char *str,
352
+ int *offset, pg_tz **tz);
353
+
351
354
  extern int j2day(int date);
352
355
 
353
356
  extern struct Node *TemporalSimplify(int32 max_precis, struct Node *node);
@@ -8,7 +8,7 @@
8
8
  * of the Datum. (We do it this way because in most situations the caller
9
9
  * can look up the info just once and use it for many per-datum operations.)
10
10
  *
11
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
11
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
12
12
  * Portions Copyright (c) 1994, Regents of the University of California
13
13
  *
14
14
  * src/include/utils/datum.h
@@ -3,7 +3,7 @@
3
3
  * dsa.h
4
4
  * Dynamic shared memory areas.
5
5
  *
6
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
6
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
7
7
  * Portions Copyright (c) 1994, Regents of the University of California
8
8
  *
9
9
  * IDENTIFICATION
@@ -77,6 +77,31 @@ typedef pg_atomic_uint64 dsa_pointer_atomic;
77
77
  /* A sentinel value for dsa_pointer used to indicate failure to allocate. */
78
78
  #define InvalidDsaPointer ((dsa_pointer) 0)
79
79
 
80
+ /*
81
+ * The number of bits used to represent the offset part of a dsa_pointer.
82
+ * This controls the maximum size of a segment, the maximum possible
83
+ * allocation size and also the maximum number of segments per area.
84
+ */
85
+ #if SIZEOF_DSA_POINTER == 4
86
+ #define DSA_OFFSET_WIDTH 27 /* 32 segments of size up to 128MB */
87
+ #else
88
+ #define DSA_OFFSET_WIDTH 40 /* 1024 segments of size up to 1TB */
89
+ #endif
90
+
91
+ /*
92
+ * The default size of the initial DSM segment that backs a dsa_area created
93
+ * by dsa_create. After creating some number of segments of the initial size
94
+ * we'll double this size, and so on. Larger segments may be created if
95
+ * necessary to satisfy large requests.
96
+ */
97
+ #define DSA_DEFAULT_INIT_SEGMENT_SIZE ((size_t) (1 * 1024 * 1024))
98
+
99
+ /* The minimum size of a DSM segment. */
100
+ #define DSA_MIN_SEGMENT_SIZE ((size_t) (256 * 1024L))
101
+
102
+ /* The maximum size of a DSM segment. */
103
+ #define DSA_MAX_SEGMENT_SIZE ((size_t) 1 << DSA_OFFSET_WIDTH)
104
+
80
105
  /* Check if a dsa_pointer value is valid. */
81
106
  #define DsaPointerIsValid(x) ((x) != InvalidDsaPointer)
82
107
 
@@ -88,6 +113,17 @@ typedef pg_atomic_uint64 dsa_pointer_atomic;
88
113
  #define dsa_allocate0(area, size) \
89
114
  dsa_allocate_extended(area, size, DSA_ALLOC_ZERO)
90
115
 
116
+ /* Create dsa_area with default segment sizes */
117
+ #define dsa_create(tranch_id) \
118
+ dsa_create_ext(tranch_id, DSA_DEFAULT_INIT_SEGMENT_SIZE, \
119
+ DSA_MAX_SEGMENT_SIZE)
120
+
121
+ /* Create dsa_area with default segment sizes in an existing share memory space */
122
+ #define dsa_create_in_place(place, size, tranch_id, segment) \
123
+ dsa_create_in_place_ext(place, size, tranch_id, segment, \
124
+ DSA_DEFAULT_INIT_SEGMENT_SIZE, \
125
+ DSA_MAX_SEGMENT_SIZE)
126
+
91
127
  /*
92
128
  * The type used for dsa_area handles. dsa_handle values can be shared with
93
129
  * other processes, so that they can attach to them. This provides a way to
@@ -102,10 +138,12 @@ typedef dsm_handle dsa_handle;
102
138
  /* Sentinel value to use for invalid dsa_handles. */
103
139
  #define DSA_HANDLE_INVALID ((dsa_handle) DSM_HANDLE_INVALID)
104
140
 
105
-
106
- extern dsa_area *dsa_create(int tranche_id);
107
- extern dsa_area *dsa_create_in_place(void *place, size_t size,
108
- int tranche_id, dsm_segment *segment);
141
+ extern dsa_area *dsa_create_ext(int tranche_id, size_t init_segment_size,
142
+ size_t max_segment_size);
143
+ extern dsa_area *dsa_create_in_place_ext(void *place, size_t size,
144
+ int tranche_id, dsm_segment *segment,
145
+ size_t init_segment_size,
146
+ size_t max_segment_size);
109
147
  extern dsa_area *dsa_attach(dsa_handle handle);
110
148
  extern dsa_area *dsa_attach_in_place(void *place, dsm_segment *segment);
111
149
  extern void dsa_release_in_place(void *place);
@@ -121,6 +159,7 @@ extern dsa_handle dsa_get_handle(dsa_area *area);
121
159
  extern dsa_pointer dsa_allocate_extended(dsa_area *area, size_t size, int flags);
122
160
  extern void dsa_free(dsa_area *area, dsa_pointer dp);
123
161
  extern void *dsa_get_address(dsa_area *area, dsa_pointer dp);
162
+ extern size_t dsa_get_total_size(dsa_area *area);
124
163
  extern void dsa_trim(dsa_area *area);
125
164
  extern void dsa_dump(dsa_area *area);
126
165
 
@@ -4,7 +4,7 @@
4
4
  * POSTGRES error reporting/logging definitions.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/utils/elog.h
@@ -226,6 +226,7 @@ extern int internalerrquery(const char *query);
226
226
  extern int err_generic_string(int field, const char *str);
227
227
 
228
228
  extern int geterrcode(void);
229
+ extern int geterrlevel(void);
229
230
  extern int geterrposition(void);
230
231
  extern int getinternalerrposition(void);
231
232
 
@@ -492,7 +493,7 @@ typedef enum
492
493
  {
493
494
  PGERROR_TERSE, /* single-line error messages */
494
495
  PGERROR_DEFAULT, /* recommended style */
495
- PGERROR_VERBOSE /* all the facts, ma'am */
496
+ PGERROR_VERBOSE, /* all the facts, ma'am */
496
497
  } PGErrorVerbosity;
497
498
 
498
499
  extern PGDLLIMPORT int Log_error_verbosity;
@@ -536,10 +537,4 @@ extern void write_jsonlog(ErrorData *edata);
536
537
  */
537
538
  extern void write_stderr(const char *fmt,...) pg_attribute_printf(1, 2);
538
539
 
539
- /*
540
- * Write a message to STDERR using only async-signal-safe functions. This can
541
- * be used to safely emit a message from a signal handler.
542
- */
543
- extern void write_stderr_signal_safe(const char *fmt);
544
-
545
540
  #endif /* ELOG_H */
@@ -157,6 +157,7 @@
157
157
  #define ERRCODE_NO_ACTIVE_SQL_TRANSACTION MAKE_SQLSTATE('2','5','P','0','1')
158
158
  #define ERRCODE_IN_FAILED_SQL_TRANSACTION MAKE_SQLSTATE('2','5','P','0','2')
159
159
  #define ERRCODE_IDLE_IN_TRANSACTION_SESSION_TIMEOUT MAKE_SQLSTATE('2','5','P','0','3')
160
+ #define ERRCODE_TRANSACTION_TIMEOUT MAKE_SQLSTATE('2','5','P','0','4')
160
161
 
161
162
  /* Class 26 - Invalid SQL Statement Name */
162
163
  #define ERRCODE_INVALID_SQL_STATEMENT_NAME MAKE_SQLSTATE('2','6','0','0','0')
@@ -305,9 +306,6 @@
305
306
  #define ERRCODE_UNDEFINED_FILE MAKE_SQLSTATE('5','8','P','0','1')
306
307
  #define ERRCODE_DUPLICATE_FILE MAKE_SQLSTATE('5','8','P','0','2')
307
308
 
308
- /* Class 72 - Snapshot Failure */
309
- #define ERRCODE_SNAPSHOT_TOO_OLD MAKE_SQLSTATE('7','2','0','0','0')
310
-
311
309
  /* Class F0 - Configuration File Error */
312
310
  #define ERRCODE_CONFIG_FILE_ERROR MAKE_SQLSTATE('F','0','0','0','0')
313
311
  #define ERRCODE_LOCK_FILE_EXISTS MAKE_SQLSTATE('F','0','0','0','1')
@@ -34,7 +34,7 @@
34
34
  * value if they fail partway through.
35
35
  *
36
36
  *
37
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
37
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
38
38
  * Portions Copyright (c) 1994, Regents of the University of California
39
39
  *
40
40
  * src/include/utils/expandeddatum.h
@@ -3,7 +3,7 @@
3
3
  * expandedrecord.h
4
4
  * Declarations for composite expanded objects.
5
5
  *
6
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
6
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
7
7
  * Portions Copyright (c) 1994, Regents of the University of California
8
8
  *
9
9
  * src/include/utils/expandedrecord.h
@@ -3,7 +3,7 @@
3
3
  * float.h
4
4
  * Definitions for the built-in floating-point types
5
5
  *
6
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
6
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
7
7
  * Portions Copyright (c) 1994, Regents of the University of California
8
8
  *
9
9
  *
@@ -6,7 +6,7 @@
6
6
  * These macros can be used to avoid a catalog lookup when a specific
7
7
  * fmgr-callable function needs to be referenced.
8
8
  *
9
- * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
9
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
10
10
  * Portions Copyright (c) 1994, Regents of the University of California
11
11
  *
12
12
  * NOTES
@@ -979,7 +979,7 @@
979
979
  #define F_BITLT 1595
980
980
  #define F_BITCMP 1596
981
981
  #define F_PG_ENCODING_TO_CHAR 1597
982
- #define F_RANDOM 1598
982
+ #define F_RANDOM_ 1598
983
983
  #define F_SETSEED 1599
984
984
  #define F_ASIN 1600
985
985
  #define F_ACOS 1601
@@ -1169,7 +1169,7 @@
1169
1169
  #define F_INT2_SUM 1840
1170
1170
  #define F_INT4_SUM 1841
1171
1171
  #define F_INT8_SUM 1842
1172
- #define F_INTERVAL_ACCUM 1843
1172
+ #define F_INTERVAL_AVG_ACCUM 1843
1173
1173
  #define F_INTERVAL_AVG 1844
1174
1174
  #define F_TO_ASCII_TEXT 1845
1175
1175
  #define F_TO_ASCII_TEXT_INT4 1846
@@ -1816,13 +1816,12 @@
1816
1816
  #define F_REGEXP_SPLIT_TO_TABLE_TEXT_TEXT_TEXT 2766
1817
1817
  #define F_REGEXP_SPLIT_TO_ARRAY_TEXT_TEXT 2767
1818
1818
  #define F_REGEXP_SPLIT_TO_ARRAY_TEXT_TEXT_TEXT 2768
1819
- #define F_PG_STAT_GET_BGWRITER_TIMED_CHECKPOINTS 2769
1820
- #define F_PG_STAT_GET_BGWRITER_REQUESTED_CHECKPOINTS 2770
1821
- #define F_PG_STAT_GET_BGWRITER_BUF_WRITTEN_CHECKPOINTS 2771
1819
+ #define F_PG_STAT_GET_CHECKPOINTER_NUM_TIMED 2769
1820
+ #define F_PG_STAT_GET_CHECKPOINTER_NUM_REQUESTED 2770
1821
+ #define F_PG_STAT_GET_CHECKPOINTER_BUFFERS_WRITTEN 2771
1822
1822
  #define F_PG_STAT_GET_BGWRITER_BUF_WRITTEN_CLEAN 2772
1823
1823
  #define F_PG_STAT_GET_BGWRITER_MAXWRITTEN_CLEAN 2773
1824
1824
  #define F_GINQUERYARRAYEXTRACT 2774
1825
- #define F_PG_STAT_GET_BUF_WRITTEN_BACKEND 2775
1826
1825
  #define F_ANYNONARRAY_IN 2777
1827
1826
  #define F_ANYNONARRAY_OUT 2778
1828
1827
  #define F_PG_STAT_GET_LAST_VACUUM_TIME 2781
@@ -2043,7 +2042,6 @@
2043
2042
  #define F_LEFT 3060
2044
2043
  #define F_RIGHT 3061
2045
2044
  #define F_REVERSE 3062
2046
- #define F_PG_STAT_GET_BUF_FSYNC_BACKEND 3063
2047
2045
  #define F_GIST_POINT_DISTANCE 3064
2048
2046
  #define F_PG_STAT_GET_DB_CONFLICT_TABLESPACE 3065
2049
2047
  #define F_PG_STAT_GET_DB_CONFLICT_LOCK 3066
@@ -2123,8 +2121,8 @@
2123
2121
  #define F_NUMERIC_SUPPORT 3157
2124
2122
  #define F_VARBIT_SUPPORT 3158
2125
2123
  #define F_PG_GET_VIEWDEF_OID_INT4 3159
2126
- #define F_PG_STAT_GET_CHECKPOINT_WRITE_TIME 3160
2127
- #define F_PG_STAT_GET_CHECKPOINT_SYNC_TIME 3161
2124
+ #define F_PG_STAT_GET_CHECKPOINTER_WRITE_TIME 3160
2125
+ #define F_PG_STAT_GET_CHECKPOINTER_SYNC_TIME 3161
2128
2126
  #define F_PG_COLLATION_FOR 3162
2129
2127
  #define F_PG_TRIGGER_DEPTH 3163
2130
2128
  #define F_PG_WAL_LSN_DIFF 3165
@@ -2241,7 +2239,7 @@
2241
2239
  #define F_UNNEST_TSVECTOR 3322
2242
2240
  #define F_TS_DELETE_TSVECTOR__TEXT 3323
2243
2241
  #define F_INT4_AVG_COMBINE 3324
2244
- #define F_INTERVAL_COMBINE 3325
2242
+ #define F_INTERVAL_AVG_COMBINE 3325
2245
2243
  #define F_TSVECTOR_TO_ARRAY 3326
2246
2244
  #define F_ARRAY_TO_TSVECTOR 3327
2247
2245
  #define F_BPCHAR_SORTSUPPORT 3328
@@ -2408,7 +2406,7 @@
2408
2406
  #define F_INT8DEC 3546
2409
2407
  #define F_INT8DEC_ANY 3547
2410
2408
  #define F_NUMERIC_ACCUM_INV 3548
2411
- #define F_INTERVAL_ACCUM_INV 3549
2409
+ #define F_INTERVAL_AVG_ACCUM_INV 3549
2412
2410
  #define F_NETWORK_OVERLAP 3551
2413
2411
  #define F_INET_GIST_CONSISTENT 3553
2414
2412
  #define F_INET_GIST_UNION 3554
@@ -2431,8 +2429,8 @@
2431
2429
  #define F_INT4_AVG_ACCUM_INV 3571
2432
2430
  #define F_INT2INT4_SUM 3572
2433
2431
  #define F_INET_GIST_FETCH 3573
2434
- #define F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_TEXT 3577
2435
- #define F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_BYTEA 3578
2432
+ #define F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_TEXT_BOOL 3577
2433
+ #define F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_BYTEA_BOOL 3578
2436
2434
  #define F_JSONB_INSERT 3579
2437
2435
  #define F_PG_XACT_COMMIT_TIMESTAMP 3581
2438
2436
  #define F_BINARY_UPGRADE_SET_NEXT_PG_TYPE_OID 3582
@@ -2596,6 +2594,7 @@
2596
2594
  #define F_PG_IS_IN_RECOVERY 3810
2597
2595
  #define F_MONEY_INT4 3811
2598
2596
  #define F_MONEY_INT8 3812
2597
+ #define F_XMLTEXT 3813
2599
2598
  #define F_PG_COLLATION_IS_VISIBLE 3815
2600
2599
  #define F_ARRAY_TYPANALYZE 3816
2601
2600
  #define F_ARRAYCONTSEL 3817
@@ -2795,8 +2794,6 @@
2795
2794
  #define F_REGROLERECV 4094
2796
2795
  #define F_REGROLESEND 4095
2797
2796
  #define F_REGROLEIN 4098
2798
- #define F_PG_ROTATE_LOGFILE_OLD 4099
2799
- #define F_PG_READ_FILE_OLD 4100
2800
2797
  #define F_BINARY_UPGRADE_SET_MISSING_VALUE 4101
2801
2798
  #define F_BRIN_INCLUSION_OPCINFO 4105
2802
2799
  #define F_BRIN_INCLUSION_ADD_VALUE 4106
@@ -3039,6 +3036,7 @@
3039
3036
  #define F_BINARY_UPGRADE_SET_NEXT_INDEX_RELFILENODE 4546
3040
3037
  #define F_BINARY_UPGRADE_SET_NEXT_TOAST_RELFILENODE 4547
3041
3038
  #define F_BINARY_UPGRADE_SET_NEXT_PG_TABLESPACE_OID 4548
3039
+ #define F_UNICODE_VERSION 4549
3042
3040
  #define F_PG_EVENT_TRIGGER_TABLE_REWRITE_OID 4566
3043
3041
  #define F_PG_EVENT_TRIGGER_TABLE_REWRITE_REASON 4567
3044
3042
  #define F_PG_EVENT_TRIGGER_DDL_COMMANDS 4568
@@ -3168,7 +3166,9 @@
3168
3166
  #define F_PG_REPLICATION_ORIGIN_PROGRESS 6013
3169
3167
  #define F_PG_SHOW_REPLICATION_ORIGIN_STATUS 6014
3170
3168
  #define F_JSONB_SUBSCRIPT_HANDLER 6098
3169
+ #define F_ICU_UNICODE_VERSION 6099
3171
3170
  #define F_PG_LSN 6103
3171
+ #define F_UNICODE_ASSIGNED 6105
3172
3172
  #define F_PG_STAT_GET_BACKEND_SUBXACT 6107
3173
3173
  #define F_PG_STAT_GET_SUBSCRIPTION 6118
3174
3174
  #define F_PG_GET_PUBLICATION_TABLES 6119
@@ -3310,5 +3310,38 @@
3310
3310
  #define F_PG_STAT_GET_DB_CONFLICT_LOGICALSLOT 6309
3311
3311
  #define F_PG_STAT_GET_LASTSCAN 6310
3312
3312
  #define F_SYSTEM_USER 6311
3313
+ #define F_BINARY_UPGRADE_LOGICAL_SLOT_HAS_CAUGHT_UP 6312
3314
+ #define F_PG_STAT_GET_CHECKPOINTER_STAT_RESET_TIME 6314
3315
+ #define F_PG_BASETYPE 6315
3316
+ #define F_PG_COLUMN_TOAST_CHUNK_ID 6316
3317
+ #define F_TO_REGTYPEMOD 6317
3318
+ #define F_PG_GET_WAIT_EVENTS 6318
3319
+ #define F_BINARY_UPGRADE_ADD_SUB_REL_STATE 6319
3320
+ #define F_BINARY_UPGRADE_REPLORIGIN_ADVANCE 6320
3321
+ #define F_PG_AVAILABLE_WAL_SUMMARIES 6321
3322
+ #define F_PG_WAL_SUMMARY_CONTENTS 6322
3323
+ #define F_PG_GET_WAL_SUMMARIZER_STATE 6323
3324
+ #define F_INTERVAL_AVG_SERIALIZE 6324
3325
+ #define F_INTERVAL_AVG_DESERIALIZE 6325
3326
+ #define F_INTERVAL_SUM 6326
3327
+ #define F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_TIMED 6327
3328
+ #define F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_REQUESTED 6328
3329
+ #define F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_PERFORMED 6329
3330
+ #define F_TO_BIN_INT4 6330
3331
+ #define F_TO_BIN_INT8 6331
3332
+ #define F_TO_OCT_INT4 6332
3333
+ #define F_TO_OCT_INT8 6333
3334
+ #define F_TIMEZONE_TIMESTAMPTZ 6334
3335
+ #define F_TIMEZONE_TIMESTAMP 6335
3336
+ #define F_TIMEZONE_TIMETZ 6336
3337
+ #define F_JSONB_POPULATE_RECORD_VALID 6338
3338
+ #define F_RANDOM_INT4_INT4 6339
3339
+ #define F_RANDOM_INT8_INT8 6340
3340
+ #define F_RANDOM_NUMERIC_NUMERIC 6341
3341
+ #define F_UUID_EXTRACT_TIMESTAMP 6342
3342
+ #define F_UUID_EXTRACT_VERSION 6343
3343
+ #define F_PG_SYNC_REPLICATION_SLOTS 6344
3344
+ #define F_RANGE_CONTAINS_ELEM_SUPPORT 6345
3345
+ #define F_ELEM_CONTAINED_BY_RANGE_SUPPORT 6346
3313
3346
 
3314
3347
  #endif /* FMGROIDS_H */