pg_query 5.1.0 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
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 */