pg_query 4.2.2 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (486) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +6 -8
  4. data/Rakefile +3 -3
  5. data/ext/pg_query/extconf.rb +1 -3
  6. data/ext/pg_query/include/access/amapi.h +3 -1
  7. data/ext/pg_query/include/access/attmap.h +5 -3
  8. data/ext/pg_query/include/access/attnum.h +1 -1
  9. data/ext/pg_query/include/access/clog.h +1 -1
  10. data/ext/pg_query/include/access/commit_ts.h +1 -1
  11. data/ext/pg_query/include/access/detoast.h +1 -1
  12. data/ext/pg_query/include/access/genam.h +7 -5
  13. data/ext/pg_query/include/access/gin.h +16 -3
  14. data/ext/pg_query/include/access/htup.h +1 -1
  15. data/ext/pg_query/include/access/htup_details.h +6 -2
  16. data/ext/pg_query/include/access/itup.h +61 -58
  17. data/ext/pg_query/include/access/parallel.h +2 -2
  18. data/ext/pg_query/include/access/printtup.h +1 -1
  19. data/ext/pg_query/include/access/relation.h +1 -1
  20. data/ext/pg_query/include/access/relscan.h +1 -1
  21. data/ext/pg_query/include/access/rmgrlist.h +2 -2
  22. data/ext/pg_query/include/access/sdir.h +12 -3
  23. data/ext/pg_query/include/access/skey.h +1 -1
  24. data/ext/pg_query/include/access/stratnum.h +1 -1
  25. data/ext/pg_query/include/access/sysattr.h +1 -1
  26. data/ext/pg_query/include/access/table.h +1 -1
  27. data/ext/pg_query/include/access/tableam.h +68 -45
  28. data/ext/pg_query/include/access/toast_compression.h +1 -1
  29. data/ext/pg_query/include/access/transam.h +1 -1
  30. data/ext/pg_query/include/access/tsmapi.h +82 -0
  31. data/ext/pg_query/include/access/tupconvert.h +5 -2
  32. data/ext/pg_query/include/access/tupdesc.h +2 -2
  33. data/ext/pg_query/include/access/tupmacs.h +58 -98
  34. data/ext/pg_query/include/access/twophase.h +2 -2
  35. data/ext/pg_query/include/access/xact.h +25 -18
  36. data/ext/pg_query/include/access/xlog.h +15 -16
  37. data/ext/pg_query/include/access/xlog_internal.h +100 -62
  38. data/ext/pg_query/include/access/xlogbackup.h +41 -0
  39. data/ext/pg_query/include/access/xlogdefs.h +6 -25
  40. data/ext/pg_query/include/access/xlogprefetcher.h +1 -1
  41. data/ext/pg_query/include/access/xlogreader.h +7 -6
  42. data/ext/pg_query/include/access/xlogrecord.h +17 -5
  43. data/ext/pg_query/include/access/xlogrecovery.h +4 -3
  44. data/ext/pg_query/include/archive/archive_module.h +59 -0
  45. data/ext/pg_query/include/c.h +144 -156
  46. data/ext/pg_query/include/catalog/catalog.h +4 -3
  47. data/ext/pg_query/include/catalog/catversion.h +6 -2
  48. data/ext/pg_query/include/catalog/dependency.h +5 -4
  49. data/ext/pg_query/include/catalog/genbki.h +7 -6
  50. data/ext/pg_query/include/catalog/index.h +4 -4
  51. data/ext/pg_query/include/catalog/indexing.h +1 -1
  52. data/ext/pg_query/include/catalog/namespace.h +2 -2
  53. data/ext/pg_query/include/catalog/objectaccess.h +10 -8
  54. data/ext/pg_query/include/catalog/objectaddress.h +3 -3
  55. data/ext/pg_query/include/catalog/pg_aggregate.h +1 -1
  56. data/ext/pg_query/include/catalog/pg_aggregate_d.h +1 -1
  57. data/ext/pg_query/include/catalog/pg_am.h +1 -1
  58. data/ext/pg_query/include/catalog/pg_am_d.h +1 -1
  59. data/ext/pg_query/include/catalog/pg_attribute.h +19 -17
  60. data/ext/pg_query/include/catalog/pg_attribute_d.h +19 -19
  61. data/ext/pg_query/include/catalog/pg_authid.h +1 -1
  62. data/ext/pg_query/include/catalog/pg_authid_d.h +3 -1
  63. data/ext/pg_query/include/catalog/pg_class.h +1 -1
  64. data/ext/pg_query/include/catalog/pg_class_d.h +1 -1
  65. data/ext/pg_query/include/catalog/pg_collation.h +3 -1
  66. data/ext/pg_query/include/catalog/pg_collation_d.h +4 -3
  67. data/ext/pg_query/include/catalog/pg_constraint.h +2 -2
  68. data/ext/pg_query/include/catalog/pg_constraint_d.h +1 -1
  69. data/ext/pg_query/include/catalog/pg_control.h +9 -1
  70. data/ext/pg_query/include/catalog/pg_conversion.h +2 -2
  71. data/ext/pg_query/include/catalog/pg_conversion_d.h +1 -1
  72. data/ext/pg_query/include/catalog/pg_database.h +124 -0
  73. data/ext/pg_query/include/catalog/pg_database_d.h +52 -0
  74. data/ext/pg_query/include/catalog/pg_depend.h +1 -1
  75. data/ext/pg_query/include/catalog/pg_depend_d.h +1 -1
  76. data/ext/pg_query/include/catalog/pg_event_trigger.h +1 -1
  77. data/ext/pg_query/include/catalog/pg_event_trigger_d.h +1 -1
  78. data/ext/pg_query/include/catalog/pg_index.h +1 -1
  79. data/ext/pg_query/include/catalog/pg_index_d.h +1 -1
  80. data/ext/pg_query/include/catalog/pg_language.h +1 -1
  81. data/ext/pg_query/include/catalog/pg_language_d.h +1 -1
  82. data/ext/pg_query/include/catalog/pg_namespace.h +1 -1
  83. data/ext/pg_query/include/catalog/pg_namespace_d.h +1 -1
  84. data/ext/pg_query/include/catalog/pg_opclass.h +1 -1
  85. data/ext/pg_query/include/catalog/pg_opclass_d.h +1 -1
  86. data/ext/pg_query/include/catalog/pg_operator.h +1 -1
  87. data/ext/pg_query/include/catalog/pg_operator_d.h +1 -1
  88. data/ext/pg_query/include/catalog/pg_opfamily.h +3 -2
  89. data/ext/pg_query/include/catalog/pg_opfamily_d.h +4 -2
  90. data/ext/pg_query/include/catalog/pg_partitioned_table.h +1 -1
  91. data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +1 -1
  92. data/ext/pg_query/include/catalog/pg_proc.h +1 -1
  93. data/ext/pg_query/include/catalog/pg_proc_d.h +1 -1
  94. data/ext/pg_query/include/catalog/pg_publication.h +2 -5
  95. data/ext/pg_query/include/catalog/pg_publication_d.h +1 -1
  96. data/ext/pg_query/include/catalog/pg_replication_origin.h +1 -1
  97. data/ext/pg_query/include/catalog/pg_replication_origin_d.h +1 -1
  98. data/ext/pg_query/include/catalog/pg_statistic.h +1 -1
  99. data/ext/pg_query/include/catalog/pg_statistic_d.h +1 -1
  100. data/ext/pg_query/include/catalog/pg_statistic_ext.h +1 -1
  101. data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +1 -1
  102. data/ext/pg_query/include/catalog/pg_transform.h +1 -1
  103. data/ext/pg_query/include/catalog/pg_transform_d.h +1 -1
  104. data/ext/pg_query/include/catalog/pg_trigger.h +1 -1
  105. data/ext/pg_query/include/catalog/pg_trigger_d.h +1 -1
  106. data/ext/pg_query/include/catalog/pg_ts_config.h +1 -1
  107. data/ext/pg_query/include/catalog/pg_ts_config_d.h +1 -1
  108. data/ext/pg_query/include/catalog/pg_ts_dict.h +1 -1
  109. data/ext/pg_query/include/catalog/pg_ts_dict_d.h +1 -1
  110. data/ext/pg_query/include/catalog/pg_ts_parser.h +1 -1
  111. data/ext/pg_query/include/catalog/pg_ts_parser_d.h +1 -1
  112. data/ext/pg_query/include/catalog/pg_ts_template.h +1 -1
  113. data/ext/pg_query/include/catalog/pg_ts_template_d.h +1 -1
  114. data/ext/pg_query/include/catalog/pg_type.h +1 -1
  115. data/ext/pg_query/include/catalog/pg_type_d.h +1 -1
  116. data/ext/pg_query/include/catalog/storage.h +6 -6
  117. data/ext/pg_query/include/commands/async.h +1 -1
  118. data/ext/pg_query/include/commands/dbcommands.h +2 -1
  119. data/ext/pg_query/include/commands/defrem.h +2 -1
  120. data/ext/pg_query/include/commands/event_trigger.h +1 -1
  121. data/ext/pg_query/include/commands/explain.h +3 -1
  122. data/ext/pg_query/include/commands/prepare.h +1 -1
  123. data/ext/pg_query/include/commands/tablespace.h +4 -4
  124. data/ext/pg_query/include/commands/trigger.h +15 -14
  125. data/ext/pg_query/include/commands/user.h +9 -3
  126. data/ext/pg_query/include/commands/vacuum.h +60 -14
  127. data/ext/pg_query/include/common/cryptohash.h +39 -0
  128. data/ext/pg_query/include/common/file_perm.h +1 -1
  129. data/ext/pg_query/include/common/hashfn.h +1 -1
  130. data/ext/pg_query/include/common/int.h +437 -0
  131. data/ext/pg_query/include/common/ip.h +4 -2
  132. data/ext/pg_query/include/common/keywords.h +1 -1
  133. data/ext/pg_query/include/common/kwlookup.h +2 -2
  134. data/ext/pg_query/include/common/pg_prng.h +3 -2
  135. data/ext/pg_query/include/common/relpath.h +20 -13
  136. data/ext/pg_query/include/common/scram-common.h +70 -0
  137. data/ext/pg_query/include/common/sha2.h +32 -0
  138. data/ext/pg_query/include/common/string.h +5 -3
  139. data/ext/pg_query/include/common/unicode_east_asian_fw_table.h +10 -10
  140. data/ext/pg_query/include/common/{unicode_combining_table.h → unicode_nonspacing_table.h} +31 -13
  141. data/ext/pg_query/include/copyfuncs.funcs.c +5013 -0
  142. data/ext/pg_query/include/copyfuncs.switch.c +938 -0
  143. data/ext/pg_query/include/datatype/timestamp.h +11 -4
  144. data/ext/pg_query/include/equalfuncs.funcs.c +3097 -0
  145. data/ext/pg_query/include/equalfuncs.switch.c +785 -0
  146. data/ext/pg_query/include/executor/execdesc.h +1 -1
  147. data/ext/pg_query/include/executor/executor.h +34 -17
  148. data/ext/pg_query/include/executor/functions.h +1 -1
  149. data/ext/pg_query/include/executor/instrument.h +1 -1
  150. data/ext/pg_query/include/executor/spi.h +2 -2
  151. data/ext/pg_query/include/executor/tablefunc.h +1 -1
  152. data/ext/pg_query/include/executor/tuptable.h +18 -11
  153. data/ext/pg_query/include/fmgr.h +21 -2
  154. data/ext/pg_query/include/foreign/fdwapi.h +294 -0
  155. data/ext/pg_query/include/funcapi.h +12 -12
  156. data/ext/pg_query/include/gram.h +1127 -0
  157. data/ext/pg_query/include/{parser/gramparse.h → gramparse.h} +4 -4
  158. data/ext/pg_query/include/jit/jit.h +2 -2
  159. data/ext/pg_query/include/kwlist_d.h +534 -510
  160. data/ext/pg_query/include/lib/dshash.h +4 -1
  161. data/ext/pg_query/include/lib/ilist.h +435 -22
  162. data/ext/pg_query/include/lib/pairingheap.h +1 -1
  163. data/ext/pg_query/include/lib/simplehash.h +9 -9
  164. data/ext/pg_query/include/lib/sort_template.h +1 -1
  165. data/ext/pg_query/include/lib/stringinfo.h +3 -3
  166. data/ext/pg_query/include/libpq/auth.h +8 -2
  167. data/ext/pg_query/include/libpq/crypt.h +1 -1
  168. data/ext/pg_query/include/libpq/hba.h +24 -17
  169. data/ext/pg_query/include/libpq/libpq-be.h +36 -25
  170. data/ext/pg_query/include/libpq/libpq.h +1 -1
  171. data/ext/pg_query/include/libpq/pqcomm.h +10 -41
  172. data/ext/pg_query/include/libpq/pqformat.h +2 -2
  173. data/ext/pg_query/include/libpq/pqsignal.h +22 -10
  174. data/ext/pg_query/include/libpq/sasl.h +136 -0
  175. data/ext/pg_query/include/libpq/scram.h +37 -0
  176. data/ext/pg_query/include/mb/pg_wchar.h +35 -18
  177. data/ext/pg_query/include/mb/stringinfo_mb.h +1 -1
  178. data/ext/pg_query/include/miscadmin.h +26 -14
  179. data/ext/pg_query/include/nodes/bitmapset.h +11 -7
  180. data/ext/pg_query/include/nodes/execnodes.h +83 -30
  181. data/ext/pg_query/include/nodes/extensible.h +5 -3
  182. data/ext/pg_query/include/nodes/lockoptions.h +1 -1
  183. data/ext/pg_query/include/nodes/makefuncs.h +14 -2
  184. data/ext/pg_query/include/nodes/memnodes.h +7 -4
  185. data/ext/pg_query/include/nodes/miscnodes.h +56 -0
  186. data/ext/pg_query/include/nodes/nodeFuncs.h +89 -29
  187. data/ext/pg_query/include/nodes/nodes.h +95 -510
  188. data/ext/pg_query/include/nodes/nodetags.h +471 -0
  189. data/ext/pg_query/include/nodes/params.h +3 -3
  190. data/ext/pg_query/include/nodes/parsenodes.h +377 -139
  191. data/ext/pg_query/include/nodes/pathnodes.h +1090 -440
  192. data/ext/pg_query/include/nodes/pg_list.h +30 -7
  193. data/ext/pg_query/include/nodes/plannodes.h +367 -124
  194. data/ext/pg_query/include/nodes/primnodes.h +670 -222
  195. data/ext/pg_query/include/nodes/print.h +1 -1
  196. data/ext/pg_query/include/{utils → nodes}/queryjumble.h +5 -7
  197. data/ext/pg_query/include/nodes/replnodes.h +111 -0
  198. data/ext/pg_query/include/nodes/supportnodes.h +346 -0
  199. data/ext/pg_query/include/nodes/tidbitmap.h +1 -1
  200. data/ext/pg_query/include/nodes/value.h +12 -2
  201. data/ext/pg_query/include/optimizer/cost.h +6 -4
  202. data/ext/pg_query/include/optimizer/geqo.h +1 -1
  203. data/ext/pg_query/include/optimizer/geqo_gene.h +1 -1
  204. data/ext/pg_query/include/optimizer/optimizer.h +8 -8
  205. data/ext/pg_query/include/optimizer/paths.h +16 -7
  206. data/ext/pg_query/include/optimizer/planmain.h +3 -6
  207. data/ext/pg_query/include/parser/analyze.h +4 -3
  208. data/ext/pg_query/include/parser/kwlist.h +12 -1
  209. data/ext/pg_query/include/parser/parse_agg.h +4 -2
  210. data/ext/pg_query/include/parser/parse_coerce.h +3 -1
  211. data/ext/pg_query/include/parser/parse_expr.h +1 -1
  212. data/ext/pg_query/include/parser/parse_func.h +1 -1
  213. data/ext/pg_query/include/parser/parse_node.h +22 -4
  214. data/ext/pg_query/include/parser/parse_oper.h +3 -3
  215. data/ext/pg_query/include/parser/parse_relation.h +8 -3
  216. data/ext/pg_query/include/parser/parse_type.h +4 -3
  217. data/ext/pg_query/include/parser/parser.h +1 -1
  218. data/ext/pg_query/include/parser/parsetree.h +1 -1
  219. data/ext/pg_query/include/parser/scanner.h +2 -2
  220. data/ext/pg_query/include/parser/scansup.h +1 -1
  221. data/ext/pg_query/include/partitioning/partdefs.h +1 -1
  222. data/ext/pg_query/include/pg_config.h +23 -217
  223. data/ext/pg_query/include/pg_config_manual.h +8 -46
  224. data/ext/pg_query/include/pg_getopt.h +1 -1
  225. data/ext/pg_query/include/pg_query.h +27 -3
  226. data/ext/pg_query/include/pg_query_enum_defs.c +311 -149
  227. data/ext/pg_query/include/pg_query_fingerprint_conds.c +545 -489
  228. data/ext/pg_query/include/pg_query_fingerprint_defs.c +5092 -4432
  229. data/ext/pg_query/include/pg_query_outfuncs_conds.c +385 -343
  230. data/ext/pg_query/include/pg_query_outfuncs_defs.c +1294 -1161
  231. data/ext/pg_query/include/pg_query_readfuncs_conds.c +137 -123
  232. data/ext/pg_query/include/pg_query_readfuncs_defs.c +1657 -1496
  233. data/ext/pg_query/include/pg_trace.h +1 -1
  234. data/ext/pg_query/include/pgstat.h +172 -93
  235. data/ext/pg_query/include/pgtime.h +3 -3
  236. data/ext/pg_query/include/pl_gram.h +64 -62
  237. data/ext/pg_query/include/pl_reserved_kwlist.h +1 -1
  238. data/ext/pg_query/include/pl_reserved_kwlist_d.h +1 -1
  239. data/ext/pg_query/include/pl_unreserved_kwlist.h +2 -1
  240. data/ext/pg_query/include/pl_unreserved_kwlist_d.h +48 -46
  241. data/ext/pg_query/include/plpgsql.h +17 -22
  242. data/ext/pg_query/include/port/atomics/arch-arm.h +3 -3
  243. data/ext/pg_query/include/port/atomics/arch-ppc.h +21 -21
  244. data/ext/pg_query/include/port/atomics/arch-x86.h +2 -2
  245. data/ext/pg_query/include/port/atomics/fallback.h +3 -3
  246. data/ext/pg_query/include/port/atomics/generic-gcc.h +1 -1
  247. data/ext/pg_query/include/port/atomics/generic.h +1 -1
  248. data/ext/pg_query/include/port/atomics.h +2 -7
  249. data/ext/pg_query/include/port/pg_bitutils.h +62 -25
  250. data/ext/pg_query/include/port/pg_bswap.h +1 -1
  251. data/ext/pg_query/include/port/pg_crc32c.h +1 -1
  252. data/ext/pg_query/include/port/simd.h +375 -0
  253. data/ext/pg_query/include/port.h +42 -75
  254. data/ext/pg_query/include/portability/instr_time.h +81 -140
  255. data/ext/pg_query/include/postgres.h +205 -434
  256. data/ext/pg_query/include/postgres_ext.h +0 -1
  257. data/ext/pg_query/include/postmaster/autovacuum.h +1 -4
  258. data/ext/pg_query/include/postmaster/auxprocess.h +1 -1
  259. data/ext/pg_query/include/postmaster/bgworker.h +2 -2
  260. data/ext/pg_query/include/postmaster/bgworker_internals.h +1 -1
  261. data/ext/pg_query/include/postmaster/bgwriter.h +2 -2
  262. data/ext/pg_query/include/postmaster/fork_process.h +1 -1
  263. data/ext/pg_query/include/postmaster/interrupt.h +1 -1
  264. data/ext/pg_query/include/postmaster/pgarch.h +1 -38
  265. data/ext/pg_query/include/postmaster/postmaster.h +5 -2
  266. data/ext/pg_query/include/postmaster/startup.h +3 -1
  267. data/ext/pg_query/include/postmaster/syslogger.h +2 -2
  268. data/ext/pg_query/include/postmaster/walwriter.h +3 -1
  269. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +6186 -5585
  270. data/ext/pg_query/include/protobuf/pg_query.pb.h +112443 -91222
  271. data/ext/pg_query/include/regex/regex.h +9 -6
  272. data/ext/pg_query/include/replication/logicallauncher.h +6 -1
  273. data/ext/pg_query/include/replication/logicalproto.h +30 -10
  274. data/ext/pg_query/include/replication/logicalworker.h +14 -1
  275. data/ext/pg_query/include/replication/origin.h +4 -4
  276. data/ext/pg_query/include/replication/reorderbuffer.h +113 -45
  277. data/ext/pg_query/include/replication/slot.h +25 -6
  278. data/ext/pg_query/include/replication/syncrep.h +2 -8
  279. data/ext/pg_query/include/replication/walreceiver.h +15 -9
  280. data/ext/pg_query/include/replication/walsender.h +13 -13
  281. data/ext/pg_query/include/rewrite/prs2lock.h +1 -1
  282. data/ext/pg_query/include/rewrite/rewriteHandler.h +1 -4
  283. data/ext/pg_query/include/rewrite/rewriteManip.h +11 -2
  284. data/ext/pg_query/include/rewrite/rewriteSupport.h +1 -1
  285. data/ext/pg_query/include/src_backend_nodes_copyfuncs.funcs.c +5321 -0
  286. data/ext/pg_query/include/src_backend_nodes_equalfuncs.funcs.c +3354 -0
  287. data/ext/pg_query/include/storage/backendid.h +1 -1
  288. data/ext/pg_query/include/storage/block.h +24 -31
  289. data/ext/pg_query/include/storage/buf.h +1 -1
  290. data/ext/pg_query/include/storage/bufmgr.h +183 -87
  291. data/ext/pg_query/include/storage/bufpage.h +146 -93
  292. data/ext/pg_query/include/storage/condition_variable.h +2 -2
  293. data/ext/pg_query/include/storage/dsm.h +3 -6
  294. data/ext/pg_query/include/storage/dsm_impl.h +4 -1
  295. data/ext/pg_query/include/storage/fd.h +24 -20
  296. data/ext/pg_query/include/storage/fileset.h +1 -1
  297. data/ext/pg_query/include/storage/ipc.h +1 -1
  298. data/ext/pg_query/include/storage/item.h +1 -1
  299. data/ext/pg_query/include/storage/itemid.h +1 -1
  300. data/ext/pg_query/include/storage/itemptr.h +94 -57
  301. data/ext/pg_query/include/storage/large_object.h +1 -1
  302. data/ext/pg_query/include/storage/latch.h +9 -1
  303. data/ext/pg_query/include/storage/lmgr.h +6 -1
  304. data/ext/pg_query/include/storage/lock.h +21 -13
  305. data/ext/pg_query/include/storage/lockdefs.h +3 -3
  306. data/ext/pg_query/include/storage/lwlock.h +16 -2
  307. data/ext/pg_query/include/storage/off.h +1 -1
  308. data/ext/pg_query/include/storage/pg_sema.h +1 -1
  309. data/ext/pg_query/include/storage/pg_shmem.h +1 -1
  310. data/ext/pg_query/include/storage/pmsignal.h +1 -1
  311. data/ext/pg_query/include/storage/predicate.h +2 -2
  312. data/ext/pg_query/include/storage/proc.h +22 -17
  313. data/ext/pg_query/include/storage/procarray.h +3 -2
  314. data/ext/pg_query/include/storage/proclist_types.h +1 -1
  315. data/ext/pg_query/include/storage/procsignal.h +3 -1
  316. data/ext/pg_query/include/storage/relfilelocator.h +99 -0
  317. data/ext/pg_query/include/storage/s_lock.h +66 -309
  318. data/ext/pg_query/include/storage/sharedfileset.h +1 -1
  319. data/ext/pg_query/include/storage/shm_mq.h +1 -1
  320. data/ext/pg_query/include/storage/shm_toc.h +1 -1
  321. data/ext/pg_query/include/storage/shmem.h +1 -23
  322. data/ext/pg_query/include/storage/sinval.h +3 -3
  323. data/ext/pg_query/include/storage/sinvaladt.h +4 -2
  324. data/ext/pg_query/include/storage/smgr.h +12 -10
  325. data/ext/pg_query/include/storage/spin.h +1 -1
  326. data/ext/pg_query/include/storage/standby.h +9 -8
  327. data/ext/pg_query/include/storage/standbydefs.h +1 -1
  328. data/ext/pg_query/include/storage/sync.h +3 -3
  329. data/ext/pg_query/include/tcop/cmdtag.h +7 -2
  330. data/ext/pg_query/include/tcop/cmdtaglist.h +1 -1
  331. data/ext/pg_query/include/tcop/deparse_utility.h +1 -1
  332. data/ext/pg_query/include/tcop/dest.h +1 -3
  333. data/ext/pg_query/include/tcop/fastpath.h +1 -1
  334. data/ext/pg_query/include/tcop/pquery.h +1 -1
  335. data/ext/pg_query/include/tcop/tcopprot.h +1 -4
  336. data/ext/pg_query/include/tcop/utility.h +1 -1
  337. data/ext/pg_query/include/tsearch/ts_cache.h +2 -4
  338. data/ext/pg_query/include/utils/acl.h +26 -81
  339. data/ext/pg_query/include/utils/aclchk_internal.h +1 -1
  340. data/ext/pg_query/include/utils/array.h +19 -1
  341. data/ext/pg_query/include/utils/backend_progress.h +2 -1
  342. data/ext/pg_query/include/utils/backend_status.h +24 -3
  343. data/ext/pg_query/include/utils/builtins.h +14 -5
  344. data/ext/pg_query/include/utils/bytea.h +1 -1
  345. data/ext/pg_query/include/utils/catcache.h +1 -1
  346. data/ext/pg_query/include/utils/date.h +37 -9
  347. data/ext/pg_query/include/utils/datetime.h +41 -21
  348. data/ext/pg_query/include/utils/datum.h +1 -1
  349. data/ext/pg_query/include/utils/dsa.h +5 -1
  350. data/ext/pg_query/include/utils/elog.h +101 -26
  351. data/ext/pg_query/include/utils/expandeddatum.h +14 -3
  352. data/ext/pg_query/include/utils/expandedrecord.h +14 -4
  353. data/ext/pg_query/include/utils/float.h +7 -6
  354. data/ext/pg_query/include/utils/fmgroids.h +54 -1
  355. data/ext/pg_query/include/utils/fmgrprotos.h +45 -3
  356. data/ext/pg_query/include/utils/fmgrtab.h +1 -1
  357. data/ext/pg_query/include/utils/guc.h +55 -82
  358. data/ext/pg_query/include/utils/guc_hooks.h +163 -0
  359. data/ext/pg_query/include/utils/guc_tables.h +49 -3
  360. data/ext/pg_query/include/utils/hsearch.h +1 -1
  361. data/ext/pg_query/include/utils/inval.h +3 -3
  362. data/ext/pg_query/include/utils/logtape.h +77 -0
  363. data/ext/pg_query/include/utils/lsyscache.h +5 -1
  364. data/ext/pg_query/include/utils/memdebug.h +1 -1
  365. data/ext/pg_query/include/utils/memutils.h +5 -49
  366. data/ext/pg_query/include/utils/memutils_internal.h +136 -0
  367. data/ext/pg_query/include/utils/memutils_memorychunk.h +237 -0
  368. data/ext/pg_query/include/utils/numeric.h +20 -5
  369. data/ext/pg_query/include/utils/palloc.h +8 -1
  370. data/ext/pg_query/include/utils/partcache.h +3 -2
  371. data/ext/pg_query/include/utils/pg_locale.h +22 -14
  372. data/ext/pg_query/include/utils/pgstat_internal.h +37 -7
  373. data/ext/pg_query/include/utils/pidfile.h +1 -1
  374. data/ext/pg_query/include/utils/plancache.h +1 -1
  375. data/ext/pg_query/include/utils/portal.h +1 -1
  376. data/ext/pg_query/include/utils/probes.h +6 -6
  377. data/ext/pg_query/include/utils/ps_status.h +23 -1
  378. data/ext/pg_query/include/utils/queryenvironment.h +1 -1
  379. data/ext/pg_query/include/utils/regproc.h +3 -3
  380. data/ext/pg_query/include/utils/rel.h +60 -43
  381. data/ext/pg_query/include/utils/relcache.h +13 -8
  382. data/ext/pg_query/include/utils/reltrigger.h +1 -1
  383. data/ext/pg_query/include/utils/resowner.h +1 -1
  384. data/ext/pg_query/include/utils/ruleutils.h +6 -1
  385. data/ext/pg_query/include/utils/sharedtuplestore.h +1 -1
  386. data/ext/pg_query/include/utils/snapmgr.h +4 -2
  387. data/ext/pg_query/include/utils/snapshot.h +1 -1
  388. data/ext/pg_query/include/utils/sortsupport.h +2 -2
  389. data/ext/pg_query/include/utils/syscache.h +4 -1
  390. data/ext/pg_query/include/utils/timeout.h +1 -1
  391. data/ext/pg_query/include/utils/timestamp.h +41 -11
  392. data/ext/pg_query/include/utils/tuplesort.h +189 -35
  393. data/ext/pg_query/include/utils/tuplestore.h +1 -1
  394. data/ext/pg_query/include/utils/typcache.h +1 -1
  395. data/ext/pg_query/include/utils/varlena.h +13 -1
  396. data/ext/pg_query/include/utils/wait_event.h +9 -4
  397. data/ext/pg_query/include/utils/xml.h +15 -5
  398. data/ext/pg_query/include/varatt.h +358 -0
  399. data/ext/pg_query/pg_query.c +1 -1
  400. data/ext/pg_query/pg_query.pb-c.c +19755 -17757
  401. data/ext/pg_query/pg_query_fingerprint.c +8 -3
  402. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  403. data/ext/pg_query/pg_query_internal.h +1 -1
  404. data/ext/pg_query/pg_query_json_plpgsql.c +1 -0
  405. data/ext/pg_query/pg_query_normalize.c +1 -1
  406. data/ext/pg_query/pg_query_outfuncs_protobuf.c +2 -2
  407. data/ext/pg_query/pg_query_parse.c +46 -4
  408. data/ext/pg_query/pg_query_parse_plpgsql.c +1 -1
  409. data/ext/pg_query/pg_query_scan.c +1 -1
  410. data/ext/pg_query/pg_query_split.c +2 -2
  411. data/ext/pg_query/postgres_deparse.c +511 -109
  412. data/ext/pg_query/src_backend_catalog_namespace.c +7 -2
  413. data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -1
  414. data/ext/pg_query/src_backend_commands_define.c +1 -1
  415. data/ext/pg_query/src_backend_nodes_bitmapset.c +11 -70
  416. data/ext/pg_query/src_backend_nodes_copyfuncs.c +96 -6202
  417. data/ext/pg_query/src_backend_nodes_equalfuncs.c +95 -4068
  418. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  419. data/ext/pg_query/src_backend_nodes_list.c +14 -2
  420. data/ext/pg_query/src_backend_nodes_makefuncs.c +95 -1
  421. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +283 -132
  422. data/ext/pg_query/src_backend_nodes_value.c +1 -1
  423. data/ext/pg_query/src_backend_parser_gram.c +33208 -31806
  424. data/ext/pg_query/src_backend_parser_parser.c +28 -2
  425. data/ext/pg_query/src_backend_parser_scan.c +4318 -3329
  426. data/ext/pg_query/src_backend_parser_scansup.c +1 -1
  427. data/ext/pg_query/src_backend_postmaster_postmaster.c +129 -110
  428. data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
  429. data/ext/pg_query/src_backend_tcop_postgres.c +66 -87
  430. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +1 -1
  431. data/ext/pg_query/src_backend_utils_adt_datum.c +5 -7
  432. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  433. data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
  434. data/ext/pg_query/src_backend_utils_adt_numutils.c +489 -0
  435. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +79 -5
  436. data/ext/pg_query/src_backend_utils_error_assert.c +4 -7
  437. data/ext/pg_query/src_backend_utils_error_elog.c +354 -97
  438. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +33 -1
  439. data/ext/pg_query/src_backend_utils_init_globals.c +5 -2
  440. data/ext/pg_query/src_backend_utils_mb_mbutils.c +13 -4
  441. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +494 -0
  442. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +163 -0
  443. data/ext/pg_query/src_backend_utils_mmgr_aset.c +449 -312
  444. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
  445. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +398 -49
  446. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1021 -0
  447. data/ext/pg_query/src_common_encnames.c +4 -1
  448. data/ext/pg_query/src_common_hashfn.c +1 -1
  449. data/ext/pg_query/src_common_keywords.c +1 -1
  450. data/ext/pg_query/src_common_kwlist_d.h +534 -510
  451. data/ext/pg_query/src_common_kwlookup.c +1 -1
  452. data/ext/pg_query/src_common_psprintf.c +1 -1
  453. data/ext/pg_query/src_common_stringinfo.c +4 -4
  454. data/ext/pg_query/src_common_wchar.c +9 -8
  455. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1 -1
  456. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -1
  457. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +661 -694
  458. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  459. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +1 -1
  460. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +1 -1
  461. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +48 -46
  462. data/ext/pg_query/src_port_pg_bitutils.c +1 -1
  463. data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
  464. data/ext/pg_query/src_port_snprintf.c +3 -7
  465. data/ext/pg_query/src_port_strerror.c +1 -1
  466. data/ext/pg_query/src_port_strnlen.c +1 -1
  467. data/lib/pg_query/pg_query_pb.rb +166 -3191
  468. data/lib/pg_query/treewalker.rb +7 -2
  469. data/lib/pg_query/version.rb +1 -1
  470. metadata +43 -24
  471. data/ext/pg_query/include/catalog/pg_parameter_acl.h +0 -60
  472. data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +0 -34
  473. data/ext/pg_query/include/commands/variable.h +0 -38
  474. data/ext/pg_query/include/getaddrinfo.h +0 -162
  475. data/ext/pg_query/include/parser/gram.h +0 -1101
  476. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  477. data/ext/pg_query/include/utils/dynahash.h +0 -20
  478. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  479. data/ext/pg_query/include/utils/rls.h +0 -50
  480. data/ext/pg_query/include/utils/tzparser.h +0 -39
  481. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -371
  482. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1116
  483. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1993
  484. data/ext/pg_query/src_common_pg_prng.c +0 -152
  485. data/ext/pg_query/src_common_string.c +0 -92
  486. data/ext/pg_query/src_port_pgsleep.c +0 -69
@@ -32,7 +32,7 @@
32
32
  #define BLCKSZ 8192
33
33
 
34
34
  /* Saved arguments from configure */
35
- #define CONFIGURE_ARGS " '--without-readline' '--without-zlib'"
35
+ #define CONFIGURE_ARGS " '--without-readline' '--without-zlib' '--without-icu'"
36
36
 
37
37
  /* Define to the default TCP port number on which the server listens and to
38
38
  which clients will try to connect. This can be overridden at run-time, but
@@ -44,7 +44,7 @@
44
44
  #define DEF_PGPORT_STR "5432"
45
45
 
46
46
  /* Define to the file name extension of dynamically-loadable modules. */
47
- #define DLSUFFIX ".so"
47
+ #define DLSUFFIX ".dylib"
48
48
 
49
49
  /* Define to build with GSSAPI support. (--with-gssapi) */
50
50
  /* #undef ENABLE_GSS */
@@ -56,13 +56,6 @@
56
56
  (--enable-thread-safety) */
57
57
  #define ENABLE_THREAD_SAFETY 1
58
58
 
59
- /* Define to 1 if gettimeofday() takes only 1 argument. */
60
- /* #undef GETTIMEOFDAY_1ARG */
61
-
62
- #ifdef GETTIMEOFDAY_1ARG
63
- # define gettimeofday(a,b) gettimeofday(a)
64
- #endif
65
-
66
59
  /* Define to 1 if you have the `append_history' function. */
67
60
  /* #undef HAVE_APPEND_HISTORY */
68
61
 
@@ -84,9 +77,6 @@
84
77
  /* Define to 1 if you have the `BIO_meth_new' function. */
85
78
  /* #undef HAVE_BIO_METH_NEW */
86
79
 
87
- /* Define to 1 if you have the `clock_gettime' function. */
88
- #define HAVE_CLOCK_GETTIME 1
89
-
90
80
  /* Define to 1 if your compiler handles computed gotos. */
91
81
  #define HAVE_COMPUTED_GOTO 1
92
82
 
@@ -142,18 +132,6 @@
142
132
  don't. */
143
133
  #define HAVE_DECL_PWRITEV 1
144
134
 
145
- /* Define to 1 if you have the declaration of `RTLD_GLOBAL', and to 0 if you
146
- don't. */
147
- #define HAVE_DECL_RTLD_GLOBAL 1
148
-
149
- /* Define to 1 if you have the declaration of `RTLD_NOW', and to 0 if you
150
- don't. */
151
- #define HAVE_DECL_RTLD_NOW 1
152
-
153
- /* Define to 1 if you have the declaration of `sigwait', and to 0 if you
154
- don't. */
155
- #define HAVE_DECL_SIGWAIT 1
156
-
157
135
  /* Define to 1 if you have the declaration of `strlcat', and to 0 if you
158
136
  don't. */
159
137
  #define HAVE_DECL_STRLCAT 1
@@ -166,17 +144,6 @@
166
144
  don't. */
167
145
  #define HAVE_DECL_STRNLEN 1
168
146
 
169
- /* Define to 1 if you have the declaration of `strtoll', and to 0 if you
170
- don't. */
171
- #define HAVE_DECL_STRTOLL 1
172
-
173
- /* Define to 1 if you have the declaration of `strtoull', and to 0 if you
174
- don't. */
175
- #define HAVE_DECL_STRTOULL 1
176
-
177
- /* Define to 1 if you have the `dlopen' function. */
178
- #define HAVE_DLOPEN 1
179
-
180
147
  /* Define to 1 if you have the <editline/history.h> header file. */
181
148
  /* #undef HAVE_EDITLINE_HISTORY_H */
182
149
 
@@ -189,21 +156,9 @@
189
156
  /* Define to 1 if you have the `explicit_bzero' function. */
190
157
  /* #undef HAVE_EXPLICIT_BZERO */
191
158
 
192
- /* Define to 1 if you have the `fdatasync' function. */
193
- #define HAVE_FDATASYNC 1
194
-
195
- /* Define to 1 if you have the `fls' function. */
196
- #define HAVE_FLS 1
197
-
198
159
  /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
199
160
  #define HAVE_FSEEKO 1
200
161
 
201
- /* Define to 1 if your compiler understands __func__. */
202
- #define HAVE_FUNCNAME__FUNC 1
203
-
204
- /* Define to 1 if your compiler understands __FUNCTION__. */
205
- /* #undef HAVE_FUNCNAME__FUNCTION */
206
-
207
162
  /* Define to 1 if you have __atomic_compare_exchange_n(int *, int *, int). */
208
163
  #define HAVE_GCC__ATOMIC_INT32_CAS 1
209
164
 
@@ -224,12 +179,6 @@
224
179
  */
225
180
  #define HAVE_GCC__SYNC_INT64_CAS 1
226
181
 
227
- /* Define to 1 if you have the `getaddrinfo' function. */
228
- #define HAVE_GETADDRINFO 1
229
-
230
- /* Define to 1 if you have the `gethostbyname_r' function. */
231
- /* #undef HAVE_GETHOSTBYNAME_R */
232
-
233
182
  /* Define to 1 if you have the `getifaddrs' function. */
234
183
  #define HAVE_GETIFADDRS 1
235
184
 
@@ -248,17 +197,11 @@
248
197
  /* Define to 1 if you have the `getpeerucred' function. */
249
198
  /* #undef HAVE_GETPEERUCRED */
250
199
 
251
- /* Define to 1 if you have the `getpwuid_r' function. */
252
- #define HAVE_GETPWUID_R 1
253
-
254
- /* Define to 1 if you have the `getrlimit' function. */
255
- #define HAVE_GETRLIMIT 1
200
+ /* Define to 1 if you have the <gssapi_ext.h> header file. */
201
+ /* #undef HAVE_GSSAPI_EXT_H */
256
202
 
257
- /* Define to 1 if you have the `getrusage' function. */
258
- #define HAVE_GETRUSAGE 1
259
-
260
- /* Define to 1 if you have the `gettimeofday' function. */
261
- /* #undef HAVE_GETTIMEOFDAY */
203
+ /* Define to 1 if you have the <gssapi/gssapi_ext.h> header file. */
204
+ /* #undef HAVE_GSSAPI_GSSAPI_EXT_H */
262
205
 
263
206
  /* Define to 1 if you have the <gssapi/gssapi.h> header file. */
264
207
  /* #undef HAVE_GSSAPI_GSSAPI_H */
@@ -305,9 +248,6 @@
305
248
  /* Define to 1 if you have the global variable 'int timezone'. */
306
249
  #define HAVE_INT_TIMEZONE 1
307
250
 
308
- /* Define to 1 if you have support for IPv6. */
309
- #define HAVE_IPV6 1
310
-
311
251
  /* Define to 1 if __builtin_constant_p(x) implies "i"(x) acceptance. */
312
252
  /* #undef HAVE_I_CONSTRAINT__BUILTIN_CONSTANT_P */
313
253
 
@@ -317,9 +257,6 @@
317
257
  /* Define to 1 if you have the <langinfo.h> header file. */
318
258
  #define HAVE_LANGINFO_H 1
319
259
 
320
- /* Define to 1 if you have the <ldap.h> header file. */
321
- /* #undef HAVE_LDAP_H */
322
-
323
260
  /* Define to 1 if you have the `ldap_initialize' function. */
324
261
  /* #undef HAVE_LDAP_INITIALIZE */
325
262
 
@@ -362,9 +299,6 @@
362
299
  /* Define to 1 if you have the `zstd' library (-lzstd). */
363
300
  /* #undef HAVE_LIBZSTD */
364
301
 
365
- /* Define to 1 if you have the `link' function. */
366
- #define HAVE_LINK 1
367
-
368
302
  /* Define to 1 if the system has the type `locale_t'. */
369
303
  #define HAVE_LOCALE_T 1
370
304
 
@@ -386,18 +320,9 @@
386
320
  /* Define to 1 if you have the `memset_s' function. */
387
321
  #define HAVE_MEMSET_S 1
388
322
 
389
- /* Define to 1 if the system has the type `MINIDUMP_TYPE'. */
390
- /* #undef HAVE_MINIDUMP_TYPE */
391
-
392
323
  /* Define to 1 if you have the `mkdtemp' function. */
393
324
  #define HAVE_MKDTEMP 1
394
325
 
395
- /* Define to 1 if you have the <netinet/tcp.h> header file. */
396
- #define HAVE_NETINET_TCP_H 1
397
-
398
- /* Define to 1 if you have the <net/if.h> header file. */
399
- #define HAVE_NET_IF_H 1
400
-
401
326
  /* Define to 1 if you have the `OPENSSL_init_ssl' function. */
402
327
  /* #undef HAVE_OPENSSL_INIT_SSL */
403
328
 
@@ -407,36 +332,15 @@
407
332
  /* Define to 1 if you have the <pam/pam_appl.h> header file. */
408
333
  /* #undef HAVE_PAM_PAM_APPL_H */
409
334
 
410
- /* Define to 1 if you have the `poll' function. */
411
- #define HAVE_POLL 1
412
-
413
- /* Define to 1 if you have the <poll.h> header file. */
414
- #define HAVE_POLL_H 1
415
-
416
- /* Define to 1 if you have a POSIX-conforming sigwait declaration. */
417
- #define HAVE_POSIX_DECL_SIGWAIT 1
418
-
419
335
  /* Define to 1 if you have the `posix_fadvise' function. */
420
336
  /* #undef HAVE_POSIX_FADVISE */
421
337
 
422
338
  /* Define to 1 if you have the `posix_fallocate' function. */
423
339
  /* #undef HAVE_POSIX_FALLOCATE */
424
340
 
425
- /* Define to 1 if the assembler supports PPC's LWARX mutex hint bit. */
426
- /* #undef HAVE_PPC_LWARX_MUTEX_HINT */
427
-
428
341
  /* Define to 1 if you have the `ppoll' function. */
429
342
  /* #undef HAVE_PPOLL */
430
343
 
431
- /* Define to 1 if you have the `pread' function. */
432
- #define HAVE_PREAD 1
433
-
434
- /* Define to 1 if you have the `pstat' function. */
435
- /* #undef HAVE_PSTAT */
436
-
437
- /* Define to 1 if the PS_STRINGS thing exists. */
438
- /* #undef HAVE_PS_STRINGS */
439
-
440
344
  /* Define if you have POSIX threads libraries and header files. */
441
345
  #define HAVE_PTHREAD 1
442
346
 
@@ -449,9 +353,6 @@
449
353
  /* Have PTHREAD_PRIO_INHERIT. */
450
354
  #define HAVE_PTHREAD_PRIO_INHERIT 1
451
355
 
452
- /* Define to 1 if you have the `pwrite' function. */
453
- #define HAVE_PWRITE 1
454
-
455
356
  /* Define to 1 if you have the <readline.h> header file. */
456
357
  /* #undef HAVE_READLINE_H */
457
358
 
@@ -461,12 +362,6 @@
461
362
  /* Define to 1 if you have the <readline/readline.h> header file. */
462
363
  /* #undef HAVE_READLINE_READLINE_H */
463
364
 
464
- /* Define to 1 if you have the `readlink' function. */
465
- #define HAVE_READLINK 1
466
-
467
- /* Define to 1 if you have the `readv' function. */
468
- #define HAVE_READV 1
469
-
470
365
  /* Define to 1 if you have the `rl_completion_matches' function. */
471
366
  /* #undef HAVE_RL_COMPLETION_MATCHES */
472
367
 
@@ -494,27 +389,21 @@
494
389
  /* Define to 1 if you have the <security/pam_appl.h> header file. */
495
390
  /* #undef HAVE_SECURITY_PAM_APPL_H */
496
391
 
497
- /* Define to 1 if you have the `setenv' function. */
498
- #define HAVE_SETENV 1
499
-
500
392
  /* Define to 1 if you have the `setproctitle' function. */
501
393
  /* #undef HAVE_SETPROCTITLE */
502
394
 
503
395
  /* Define to 1 if you have the `setproctitle_fast' function. */
504
396
  /* #undef HAVE_SETPROCTITLE_FAST */
505
397
 
506
- /* Define to 1 if you have the `setsid' function. */
507
- #define HAVE_SETSID 1
508
-
509
- /* Define to 1 if you have the `shm_open' function. */
510
- #define HAVE_SHM_OPEN 1
511
-
512
398
  /* Define to 1 if the system has the type `socklen_t'. */
513
399
  #define HAVE_SOCKLEN_T 1
514
400
 
515
401
  /* Define to 1 if you have spinlocks. */
516
402
  #define HAVE_SPINLOCKS 1
517
403
 
404
+ /* Define to 1 if you have the `SSL_CTX_set_cert_cb' function. */
405
+ /* #undef HAVE_SSL_CTX_SET_CERT_CB */
406
+
518
407
  /* Define to 1 if stdbool.h conforms to C99. */
519
408
  #define HAVE_STDBOOL_H 1
520
409
 
@@ -548,57 +437,15 @@
548
437
  /* Define to 1 if you have the `strsignal' function. */
549
438
  #define HAVE_STRSIGNAL 1
550
439
 
551
- /* Define to 1 if you have the `strtof' function. */
552
- #define HAVE_STRTOF 1
553
-
554
- /* Define to 1 if you have the `strtoll' function. */
555
- #define HAVE_STRTOLL 1
556
-
557
- /* Define to 1 if you have the `strtoq' function. */
558
- /* #undef HAVE_STRTOQ */
559
-
560
- /* Define to 1 if you have the `strtoull' function. */
561
- #define HAVE_STRTOULL 1
562
-
563
- /* Define to 1 if you have the `strtouq' function. */
564
- /* #undef HAVE_STRTOUQ */
565
-
566
- /* Define to 1 if the system has the type `struct addrinfo'. */
567
- #define HAVE_STRUCT_ADDRINFO 1
568
-
569
- /* Define to 1 if the system has the type `struct cmsgcred'. */
570
- /* #undef HAVE_STRUCT_CMSGCRED */
571
-
572
440
  /* Define to 1 if the system has the type `struct option'. */
573
441
  #define HAVE_STRUCT_OPTION 1
574
442
 
575
443
  /* Define to 1 if `sa_len' is a member of `struct sockaddr'. */
576
444
  #define HAVE_STRUCT_SOCKADDR_SA_LEN 1
577
445
 
578
- /* Define to 1 if the system has the type `struct sockaddr_storage'. */
579
- #define HAVE_STRUCT_SOCKADDR_STORAGE 1
580
-
581
- /* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */
582
- #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1
583
-
584
- /* Define to 1 if `ss_len' is a member of `struct sockaddr_storage'. */
585
- #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1
586
-
587
- /* Define to 1 if `__ss_family' is a member of `struct sockaddr_storage'. */
588
- /* #undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY */
589
-
590
- /* Define to 1 if `__ss_len' is a member of `struct sockaddr_storage'. */
591
- /* #undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN */
592
-
593
- /* Define to 1 if the system has the type `struct sockaddr_un'. */
594
- #define HAVE_STRUCT_SOCKADDR_UN 1
595
-
596
446
  /* Define to 1 if `tm_zone' is a member of `struct tm'. */
597
447
  #define HAVE_STRUCT_TM_TM_ZONE 1
598
448
 
599
- /* Define to 1 if you have the `symlink' function. */
600
- #define HAVE_SYMLINK 1
601
-
602
449
  /* Define to 1 if you have the `syncfs' function. */
603
450
  /* #undef HAVE_SYNCFS */
604
451
 
@@ -614,9 +461,6 @@
614
461
  /* Define to 1 if you have the <sys/event.h> header file. */
615
462
  #define HAVE_SYS_EVENT_H 1
616
463
 
617
- /* Define to 1 if you have the <sys/ipc.h> header file. */
618
- #define HAVE_SYS_IPC_H 1
619
-
620
464
  /* Define to 1 if you have the <sys/personality.h> header file. */
621
465
  /* #undef HAVE_SYS_PERSONALITY_H */
622
466
 
@@ -626,45 +470,18 @@
626
470
  /* Define to 1 if you have the <sys/procctl.h> header file. */
627
471
  /* #undef HAVE_SYS_PROCCTL_H */
628
472
 
629
- /* Define to 1 if you have the <sys/pstat.h> header file. */
630
- /* #undef HAVE_SYS_PSTAT_H */
631
-
632
- /* Define to 1 if you have the <sys/resource.h> header file. */
633
- #define HAVE_SYS_RESOURCE_H 1
634
-
635
- /* Define to 1 if you have the <sys/select.h> header file. */
636
- #define HAVE_SYS_SELECT_H 1
637
-
638
- /* Define to 1 if you have the <sys/sem.h> header file. */
639
- #define HAVE_SYS_SEM_H 1
640
-
641
- /* Define to 1 if you have the <sys/shm.h> header file. */
642
- #define HAVE_SYS_SHM_H 1
643
-
644
473
  /* Define to 1 if you have the <sys/signalfd.h> header file. */
645
474
  /* #undef HAVE_SYS_SIGNALFD_H */
646
475
 
647
- /* Define to 1 if you have the <sys/sockio.h> header file. */
648
- #define HAVE_SYS_SOCKIO_H 1
649
-
650
476
  /* Define to 1 if you have the <sys/stat.h> header file. */
651
477
  #define HAVE_SYS_STAT_H 1
652
478
 
653
- /* Define to 1 if you have the <sys/tas.h> header file. */
654
- /* #undef HAVE_SYS_TAS_H */
655
-
656
479
  /* Define to 1 if you have the <sys/types.h> header file. */
657
480
  #define HAVE_SYS_TYPES_H 1
658
481
 
659
482
  /* Define to 1 if you have the <sys/ucred.h> header file. */
660
483
  #define HAVE_SYS_UCRED_H 1
661
484
 
662
- /* Define to 1 if you have the <sys/uio.h> header file. */
663
- #define HAVE_SYS_UIO_H 1
664
-
665
- /* Define to 1 if you have the <sys/un.h> header file. */
666
- #define HAVE_SYS_UN_H 1
667
-
668
485
  /* Define to 1 if you have the <termios.h> header file. */
669
486
  #define HAVE_TERMIOS_H 1
670
487
 
@@ -686,9 +503,6 @@
686
503
  /* Define to 1 if you have the <unistd.h> header file. */
687
504
  #define HAVE_UNISTD_H 1
688
505
 
689
- /* Define to 1 if you have the `unsetenv' function. */
690
- #define HAVE_UNSETENV 1
691
-
692
506
  /* Define to 1 if you have the `uselocale' function. */
693
507
  #define HAVE_USELOCALE 1
694
508
 
@@ -707,17 +521,14 @@
707
521
  /* Define to 1 if you have the <uuid/uuid.h> header file. */
708
522
  /* #undef HAVE_UUID_UUID_H */
709
523
 
524
+ /* Define to 1 if your compiler knows the visibility("hidden") attribute. */
525
+ #define HAVE_VISIBILITY_ATTRIBUTE 1
526
+
710
527
  /* Define to 1 if you have the `wcstombs_l' function. */
711
528
  #define HAVE_WCSTOMBS_L 1
712
529
 
713
- /* Define to 1 if you have the <wctype.h> header file. */
714
- #define HAVE_WCTYPE_H 1
715
-
716
- /* Define to 1 if you have the <winldap.h> header file. */
717
- /* #undef HAVE_WINLDAP_H */
718
-
719
- /* Define to 1 if you have the `writev' function. */
720
- #define HAVE_WRITEV 1
530
+ /* Define to 1 if you have the `X509_get_signature_info' function. */
531
+ /* #undef HAVE_X509_GET_SIGNATURE_INFO */
721
532
 
722
533
  /* Define to 1 if you have the `X509_get_signature_nid' function. */
723
534
  /* #undef HAVE_X509_GET_SIGNATURE_NID */
@@ -773,12 +584,6 @@
773
584
  /* Define to 1 if your compiler understands _Static_assert. */
774
585
  #define HAVE__STATIC_ASSERT 1
775
586
 
776
- /* Define to 1 if you have the `__strtoll' function. */
777
- /* #undef HAVE___STRTOLL */
778
-
779
- /* Define to 1 if you have the `__strtoull' function. */
780
- /* #undef HAVE___STRTOULL */
781
-
782
587
  /* Define to the appropriate printf length modifier for 64-bit ints. */
783
588
  #define INT64_MODIFIER "l"
784
589
 
@@ -802,7 +607,7 @@
802
607
  #define PACKAGE_NAME "PostgreSQL"
803
608
 
804
609
  /* Define to the full name and version of this package. */
805
- #define PACKAGE_STRING "PostgreSQL 15.1"
610
+ #define PACKAGE_STRING "PostgreSQL 16.1"
806
611
 
807
612
  /* Define to the one symbol short name of this package. */
808
613
  #define PACKAGE_TARNAME "postgresql"
@@ -811,7 +616,7 @@
811
616
  #define PACKAGE_URL "https://www.postgresql.org/"
812
617
 
813
618
  /* Define to the version of this package. */
814
- #define PACKAGE_VERSION "15.1"
619
+ #define PACKAGE_VERSION "16.1"
815
620
 
816
621
  /* Define to the name of a signed 128-bit integer type. */
817
622
  #define PG_INT128_TYPE __int128
@@ -824,10 +629,10 @@
824
629
  #define PG_KRB_SRVNAM "postgres"
825
630
 
826
631
  /* PostgreSQL major version as a string */
827
- #define PG_MAJORVERSION "15"
632
+ #define PG_MAJORVERSION "16"
828
633
 
829
634
  /* PostgreSQL major version number */
830
- #define PG_MAJORVERSION_NUM 15
635
+ #define PG_MAJORVERSION_NUM 16
831
636
 
832
637
  /* PostgreSQL minor version number */
833
638
  #define PG_MINORVERSION_NUM 1
@@ -839,13 +644,13 @@
839
644
  #define PG_USE_STDBOOL 1
840
645
 
841
646
  /* PostgreSQL version as a string */
842
- #define PG_VERSION "15.1"
647
+ #define PG_VERSION "16.1"
843
648
 
844
649
  /* PostgreSQL version as a number */
845
- #define PG_VERSION_NUM 150001
650
+ #define PG_VERSION_NUM 160001
846
651
 
847
652
  /* A string containing the version number, platform, and C compiler */
848
- #define PG_VERSION_STR "PostgreSQL 15.1 on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-1400.0.29.102), 64-bit"
653
+ #define PG_VERSION_STR "PostgreSQL 16.1 on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-1400.0.29.102), 64-bit"
849
654
 
850
655
  /* Define to 1 to allow profiling output to be saved separately for each
851
656
  process. */
@@ -1032,6 +837,7 @@
1032
837
  #undef HAVE__GET_CPUID
1033
838
  #undef USE_ARMV8_CRC32C
1034
839
  #undef USE_SSE42_CRC32C_WITH_RUNTIME_CHECK
1035
- #if defined(__FreeBSD__) || defined(__NetBSD__)
840
+ #include <stdlib.h>
841
+ #if defined(__FreeBSD__) || defined(__NetBSD__) || (defined(__GLIBC__) && ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 38) || __GLIBC__ > 2))
1036
842
  #define HAVE_STRCHRNUL
1037
843
  #endif
@@ -6,7 +6,7 @@
6
6
  * for developers. If you edit any of these, be sure to do a *full*
7
7
  * rebuild (and an initdb if noted).
8
8
  *
9
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
9
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
10
10
  * Portions Copyright (c) 1994, Regents of the University of California
11
11
  *
12
12
  * src/include/pg_config_manual.h
@@ -114,17 +114,6 @@
114
114
  */
115
115
  #define MAXPGPATH 1024
116
116
 
117
- /*
118
- * PG_SOMAXCONN: maximum accept-queue length limit passed to
119
- * listen(2). You'd think we should use SOMAXCONN from
120
- * <sys/socket.h>, but on many systems that symbol is much smaller
121
- * than the kernel's actual limit. In any case, this symbol need be
122
- * twiddled only if you have a kernel that refuses large limit values,
123
- * rather than silently reducing the value to what it can handle
124
- * (which is what most if not all Unixen do).
125
- */
126
- #define PG_SOMAXCONN 10000
127
-
128
117
  /*
129
118
  * You can try changing this if you have a machine with bytes of
130
119
  * another size, but no guarantee...
@@ -152,13 +141,6 @@
152
141
  #define EXEC_BACKEND
153
142
  #endif
154
143
 
155
- /*
156
- * Define this if your operating system supports link()
157
- */
158
- #if !defined(WIN32) && !defined(__CYGWIN__)
159
- #define HAVE_WORKING_LINK 1
160
- #endif
161
-
162
144
  /*
163
145
  * USE_POSIX_FADVISE controls whether Postgres will attempt to use the
164
146
  * posix_fadvise() kernel call. Usually the automatic configure tests are
@@ -234,32 +216,6 @@
234
216
  */
235
217
  #define DEFAULT_EVENT_SOURCE "PostgreSQL"
236
218
 
237
- /*
238
- * On PPC machines, decide whether to use the mutex hint bit in LWARX
239
- * instructions. Setting the hint bit will slightly improve spinlock
240
- * performance on POWER6 and later machines, but does nothing before that,
241
- * and will result in illegal-instruction failures on some pre-POWER4
242
- * machines. By default we use the hint bit when building for 64-bit PPC,
243
- * which should be safe in nearly all cases. You might want to override
244
- * this if you are building 32-bit code for a known-recent PPC machine.
245
- */
246
- #ifdef HAVE_PPC_LWARX_MUTEX_HINT /* must have assembler support in any case */
247
- #if defined(__ppc64__) || defined(__powerpc64__)
248
- #define USE_PPC_LWARX_MUTEX_HINT
249
- #endif
250
- #endif
251
-
252
- /*
253
- * On PPC machines, decide whether to use LWSYNC instructions in place of
254
- * ISYNC and SYNC. This provides slightly better performance, but will
255
- * result in illegal-instruction failures on some pre-POWER4 machines.
256
- * By default we use LWSYNC when building for 64-bit PPC, which should be
257
- * safe in nearly all cases.
258
- */
259
- #if defined(__ppc64__) || defined(__powerpc64__)
260
- #define USE_PPC_LWSYNC
261
- #endif
262
-
263
219
  /*
264
220
  * Assumed cache line size. This doesn't affect correctness, but can be used
265
221
  * for low-level optimizations. Currently, this is used to pad some data
@@ -271,6 +227,12 @@
271
227
  */
272
228
  #define PG_CACHE_LINE_SIZE 128
273
229
 
230
+ /*
231
+ * Assumed alignment requirement for direct I/O. 4K corresponds to common
232
+ * sector and memory page size.
233
+ */
234
+ #define PG_IO_ALIGN_SIZE 4096
235
+
274
236
  /*
275
237
  *------------------------------------------------------------------------
276
238
  * The following symbols are for enabling debugging code, not for
@@ -355,7 +317,7 @@
355
317
 
356
318
  /*
357
319
  * Recover memory used for relcache entries when invalidated. See
358
- * RelationBuildDescr() in src/backend/utils/cache/relcache.c.
320
+ * RelationBuildDesc() in src/backend/utils/cache/relcache.c.
359
321
  *
360
322
  * This is active automatically for clobber-cache builds when clobbering is
361
323
  * active, but can be overridden here by explicitly defining
@@ -11,7 +11,7 @@
11
11
  * Portions Copyright (c) 1987, 1993, 1994
12
12
  * The Regents of the University of California. All rights reserved.
13
13
  *
14
- * Portions Copyright (c) 2003-2022, PostgreSQL Global Development Group
14
+ * Portions Copyright (c) 2003-2023, PostgreSQL Global Development Group
15
15
  *
16
16
  * src/include/pg_getopt.h
17
17
  */
@@ -70,6 +70,27 @@ typedef struct {
70
70
  PgQueryError* error;
71
71
  } PgQueryNormalizeResult;
72
72
 
73
+ // Postgres parser options (parse mode and GUCs that affect parsing)
74
+
75
+ typedef enum
76
+ {
77
+ PG_QUERY_PARSE_DEFAULT = 0,
78
+ PG_QUERY_PARSE_TYPE_NAME,
79
+ PG_QUERY_PARSE_PLPGSQL_EXPR,
80
+ PG_QUERY_PARSE_PLPGSQL_ASSIGN1,
81
+ PG_QUERY_PARSE_PLPGSQL_ASSIGN2,
82
+ PG_QUERY_PARSE_PLPGSQL_ASSIGN3
83
+ } PgQueryParseMode;
84
+
85
+ // We technically only need 3 bits to store parse mode, but
86
+ // having 4 bits avoids API breaks if another one gets added.
87
+ #define PG_QUERY_PARSE_MODE_BITS 4
88
+ #define PG_QUERY_PARSE_MODE_BITMASK ((1 << PG_QUERY_PARSE_MODE_BITS) - 1)
89
+
90
+ #define PG_QUERY_DISABLE_BACKSLASH_QUOTE 16 // backslash_quote = off (default is safe_encoding, which is effectively on)
91
+ #define PG_QUERY_DISABLE_STANDARD_CONFORMING_STRINGS 32 // standard_conforming_strings = off (default is on)
92
+ #define PG_QUERY_DISABLE_ESCAPE_STRING_WARNING 64 // escape_string_warning = off (default is on)
93
+
73
94
  #ifdef __cplusplus
74
95
  extern "C" {
75
96
  #endif
@@ -77,10 +98,13 @@ extern "C" {
77
98
  PgQueryNormalizeResult pg_query_normalize(const char* input);
78
99
  PgQueryScanResult pg_query_scan(const char* input);
79
100
  PgQueryParseResult pg_query_parse(const char* input);
101
+ PgQueryParseResult pg_query_parse_opts(const char* input, int parser_options);
80
102
  PgQueryProtobufParseResult pg_query_parse_protobuf(const char* input);
103
+ PgQueryProtobufParseResult pg_query_parse_protobuf_opts(const char* input, int parser_options);
81
104
  PgQueryPlpgsqlParseResult pg_query_parse_plpgsql(const char* input);
82
105
 
83
106
  PgQueryFingerprintResult pg_query_fingerprint(const char* input);
107
+ PgQueryFingerprintResult pg_query_fingerprint_opts(const char* input, int parser_options);
84
108
 
85
109
  // Use pg_query_split_with_scanner when you need to split statements that may
86
110
  // contain parse errors, otherwise pg_query_split_with_parser is recommended
@@ -107,9 +131,9 @@ void pg_query_free_fingerprint_result(PgQueryFingerprintResult result);
107
131
  void pg_query_exit(void);
108
132
 
109
133
  // Postgres version information
110
- #define PG_MAJORVERSION "15"
111
- #define PG_VERSION "15.1"
112
- #define PG_VERSION_NUM 150001
134
+ #define PG_MAJORVERSION "16"
135
+ #define PG_VERSION "16.1"
136
+ #define PG_VERSION_NUM 160001
113
137
 
114
138
  // Deprecated APIs below
115
139