pg_query 4.2.1 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (531) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/README.md +6 -8
  4. data/Rakefile +5 -6
  5. data/ext/pg_query/extconf.rb +14 -4
  6. data/ext/pg_query/include/pg_query.h +27 -3
  7. data/ext/pg_query/include/pg_query_enum_defs.c +311 -149
  8. data/ext/pg_query/include/pg_query_fingerprint_conds.c +545 -489
  9. data/ext/pg_query/include/pg_query_fingerprint_defs.c +5092 -4432
  10. data/ext/pg_query/include/pg_query_outfuncs_conds.c +385 -343
  11. data/ext/pg_query/include/pg_query_outfuncs_defs.c +1294 -1161
  12. data/ext/pg_query/include/pg_query_readfuncs_conds.c +137 -123
  13. data/ext/pg_query/include/pg_query_readfuncs_defs.c +1657 -1496
  14. data/ext/pg_query/include/{access → postgres/access}/amapi.h +3 -1
  15. data/ext/pg_query/include/{access → postgres/access}/attmap.h +5 -3
  16. data/ext/pg_query/include/{access → postgres/access}/attnum.h +1 -1
  17. data/ext/pg_query/include/{access → postgres/access}/clog.h +1 -1
  18. data/ext/pg_query/include/{access → postgres/access}/commit_ts.h +1 -1
  19. data/ext/pg_query/include/{access → postgres/access}/detoast.h +1 -1
  20. data/ext/pg_query/include/{access → postgres/access}/genam.h +7 -5
  21. data/ext/pg_query/include/{access → postgres/access}/gin.h +16 -3
  22. data/ext/pg_query/include/{access → postgres/access}/htup.h +1 -1
  23. data/ext/pg_query/include/{access → postgres/access}/htup_details.h +6 -2
  24. data/ext/pg_query/include/{access → postgres/access}/itup.h +61 -58
  25. data/ext/pg_query/include/{access → postgres/access}/parallel.h +2 -2
  26. data/ext/pg_query/include/{access → postgres/access}/printtup.h +1 -1
  27. data/ext/pg_query/include/{access → postgres/access}/relation.h +1 -1
  28. data/ext/pg_query/include/{access → postgres/access}/relscan.h +1 -1
  29. data/ext/pg_query/include/{access → postgres/access}/rmgrlist.h +2 -2
  30. data/ext/pg_query/include/{access → postgres/access}/sdir.h +12 -3
  31. data/ext/pg_query/include/{access → postgres/access}/skey.h +1 -1
  32. data/ext/pg_query/include/{access → postgres/access}/stratnum.h +1 -1
  33. data/ext/pg_query/include/{access → postgres/access}/sysattr.h +1 -1
  34. data/ext/pg_query/include/{access → postgres/access}/table.h +1 -1
  35. data/ext/pg_query/include/{access → postgres/access}/tableam.h +68 -45
  36. data/ext/pg_query/include/{access → postgres/access}/toast_compression.h +1 -1
  37. data/ext/pg_query/include/{access → postgres/access}/transam.h +1 -1
  38. data/ext/pg_query/include/postgres/access/tsmapi.h +82 -0
  39. data/ext/pg_query/include/{access → postgres/access}/tupconvert.h +5 -2
  40. data/ext/pg_query/include/{access → postgres/access}/tupdesc.h +2 -2
  41. data/ext/pg_query/include/{access → postgres/access}/tupmacs.h +58 -98
  42. data/ext/pg_query/include/{access → postgres/access}/twophase.h +2 -2
  43. data/ext/pg_query/include/{access → postgres/access}/xact.h +25 -18
  44. data/ext/pg_query/include/{access → postgres/access}/xlog.h +15 -16
  45. data/ext/pg_query/include/{access → postgres/access}/xlog_internal.h +100 -62
  46. data/ext/pg_query/include/postgres/access/xlogbackup.h +41 -0
  47. data/ext/pg_query/include/{access → postgres/access}/xlogdefs.h +6 -25
  48. data/ext/pg_query/include/{access → postgres/access}/xlogprefetcher.h +1 -1
  49. data/ext/pg_query/include/{access → postgres/access}/xlogreader.h +7 -6
  50. data/ext/pg_query/include/{access → postgres/access}/xlogrecord.h +17 -5
  51. data/ext/pg_query/include/{access → postgres/access}/xlogrecovery.h +4 -3
  52. data/ext/pg_query/include/postgres/archive/archive_module.h +59 -0
  53. data/ext/pg_query/include/{c.h → postgres/c.h} +144 -156
  54. data/ext/pg_query/include/{catalog → postgres/catalog}/catalog.h +4 -3
  55. data/ext/pg_query/include/{catalog → postgres/catalog}/catversion.h +6 -2
  56. data/ext/pg_query/include/{catalog → postgres/catalog}/dependency.h +5 -4
  57. data/ext/pg_query/include/{catalog → postgres/catalog}/genbki.h +7 -6
  58. data/ext/pg_query/include/{catalog → postgres/catalog}/index.h +4 -4
  59. data/ext/pg_query/include/{catalog → postgres/catalog}/indexing.h +1 -1
  60. data/ext/pg_query/include/{catalog → postgres/catalog}/namespace.h +2 -2
  61. data/ext/pg_query/include/{catalog → postgres/catalog}/objectaccess.h +10 -8
  62. data/ext/pg_query/include/{catalog → postgres/catalog}/objectaddress.h +3 -3
  63. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate.h +1 -1
  64. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate_d.h +1 -1
  65. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am.h +1 -1
  66. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am_d.h +1 -1
  67. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute.h +19 -17
  68. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute_d.h +19 -19
  69. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid.h +1 -1
  70. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid_d.h +3 -1
  71. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class.h +1 -1
  72. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class_d.h +1 -1
  73. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation.h +3 -1
  74. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation_d.h +4 -3
  75. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint.h +2 -2
  76. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint_d.h +1 -1
  77. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_control.h +9 -1
  78. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion.h +2 -2
  79. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion_d.h +1 -1
  80. data/ext/pg_query/include/postgres/catalog/pg_database.h +124 -0
  81. data/ext/pg_query/include/postgres/catalog/pg_database_d.h +52 -0
  82. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend.h +1 -1
  83. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend_d.h +1 -1
  84. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger.h +1 -1
  85. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger_d.h +1 -1
  86. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index.h +1 -1
  87. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index_d.h +1 -1
  88. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language.h +1 -1
  89. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language_d.h +1 -1
  90. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace.h +1 -1
  91. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace_d.h +1 -1
  92. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass.h +1 -1
  93. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass_d.h +1 -1
  94. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator.h +1 -1
  95. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator_d.h +1 -1
  96. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily.h +3 -2
  97. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily_d.h +4 -2
  98. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table.h +1 -1
  99. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table_d.h +1 -1
  100. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc.h +1 -1
  101. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc_d.h +1 -1
  102. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication.h +2 -5
  103. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication_d.h +1 -1
  104. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin.h +1 -1
  105. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin_d.h +1 -1
  106. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic.h +1 -1
  107. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_d.h +1 -1
  108. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext.h +1 -1
  109. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext_d.h +1 -1
  110. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform.h +1 -1
  111. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform_d.h +1 -1
  112. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger.h +1 -1
  113. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger_d.h +1 -1
  114. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config.h +1 -1
  115. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config_d.h +1 -1
  116. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict.h +1 -1
  117. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict_d.h +1 -1
  118. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser.h +1 -1
  119. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser_d.h +1 -1
  120. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template.h +1 -1
  121. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template_d.h +1 -1
  122. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type.h +1 -1
  123. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type_d.h +1 -1
  124. data/ext/pg_query/include/{catalog → postgres/catalog}/storage.h +6 -6
  125. data/ext/pg_query/include/{commands → postgres/commands}/async.h +1 -1
  126. data/ext/pg_query/include/{commands → postgres/commands}/dbcommands.h +2 -1
  127. data/ext/pg_query/include/{commands → postgres/commands}/defrem.h +2 -1
  128. data/ext/pg_query/include/{commands → postgres/commands}/event_trigger.h +1 -1
  129. data/ext/pg_query/include/{commands → postgres/commands}/explain.h +3 -1
  130. data/ext/pg_query/include/{commands → postgres/commands}/prepare.h +1 -1
  131. data/ext/pg_query/include/{commands → postgres/commands}/tablespace.h +4 -4
  132. data/ext/pg_query/include/{commands → postgres/commands}/trigger.h +15 -14
  133. data/ext/pg_query/include/{commands → postgres/commands}/user.h +9 -3
  134. data/ext/pg_query/include/{commands → postgres/commands}/vacuum.h +60 -14
  135. data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
  136. data/ext/pg_query/include/{common → postgres/common}/file_perm.h +1 -1
  137. data/ext/pg_query/include/{common → postgres/common}/hashfn.h +1 -1
  138. data/ext/pg_query/include/postgres/common/int.h +437 -0
  139. data/ext/pg_query/include/{common → postgres/common}/keywords.h +1 -1
  140. data/ext/pg_query/include/{common → postgres/common}/kwlookup.h +2 -2
  141. data/ext/pg_query/include/{common → postgres/common}/pg_prng.h +3 -2
  142. data/ext/pg_query/include/{common → postgres/common}/relpath.h +20 -13
  143. data/ext/pg_query/include/postgres/common/scram-common.h +70 -0
  144. data/ext/pg_query/include/postgres/common/sha2.h +32 -0
  145. data/ext/pg_query/include/{common → postgres/common}/string.h +5 -3
  146. data/ext/pg_query/include/{common → postgres/common}/unicode_east_asian_fw_table.h +10 -10
  147. data/ext/pg_query/include/{common/unicode_combining_table.h → postgres/common/unicode_nonspacing_table.h} +31 -13
  148. data/ext/pg_query/include/postgres/copyfuncs.funcs.c +5013 -0
  149. data/ext/pg_query/include/postgres/copyfuncs.switch.c +938 -0
  150. data/ext/pg_query/include/{datatype → postgres/datatype}/timestamp.h +11 -4
  151. data/ext/pg_query/include/postgres/equalfuncs.funcs.c +3097 -0
  152. data/ext/pg_query/include/postgres/equalfuncs.switch.c +785 -0
  153. data/ext/pg_query/include/{executor → postgres/executor}/execdesc.h +1 -1
  154. data/ext/pg_query/include/{executor → postgres/executor}/executor.h +34 -17
  155. data/ext/pg_query/include/{executor → postgres/executor}/functions.h +1 -1
  156. data/ext/pg_query/include/{executor → postgres/executor}/instrument.h +1 -1
  157. data/ext/pg_query/include/{executor → postgres/executor}/spi.h +2 -2
  158. data/ext/pg_query/include/{executor → postgres/executor}/tablefunc.h +1 -1
  159. data/ext/pg_query/include/{executor → postgres/executor}/tuptable.h +18 -11
  160. data/ext/pg_query/include/{fmgr.h → postgres/fmgr.h} +21 -2
  161. data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
  162. data/ext/pg_query/include/{funcapi.h → postgres/funcapi.h} +12 -12
  163. data/ext/pg_query/include/postgres/gram.h +1127 -0
  164. data/ext/pg_query/include/{parser → postgres}/gramparse.h +4 -4
  165. data/ext/pg_query/include/{jit → postgres/jit}/jit.h +2 -2
  166. data/ext/pg_query/include/postgres/kwlist_d.h +1119 -0
  167. data/ext/pg_query/include/{lib → postgres/lib}/dshash.h +4 -1
  168. data/ext/pg_query/include/{lib → postgres/lib}/ilist.h +435 -22
  169. data/ext/pg_query/include/{lib → postgres/lib}/pairingheap.h +1 -1
  170. data/ext/pg_query/include/{lib → postgres/lib}/simplehash.h +9 -9
  171. data/ext/pg_query/include/{lib → postgres/lib}/sort_template.h +1 -1
  172. data/ext/pg_query/include/{lib → postgres/lib}/stringinfo.h +3 -3
  173. data/ext/pg_query/include/{libpq → postgres/libpq}/auth.h +8 -2
  174. data/ext/pg_query/include/{libpq → postgres/libpq}/crypt.h +1 -1
  175. data/ext/pg_query/include/{libpq → postgres/libpq}/hba.h +24 -17
  176. data/ext/pg_query/include/{libpq → postgres/libpq}/libpq-be.h +36 -25
  177. data/ext/pg_query/include/{libpq → postgres/libpq}/libpq.h +1 -1
  178. data/ext/pg_query/include/{libpq → postgres/libpq}/pqcomm.h +10 -41
  179. data/ext/pg_query/include/{libpq → postgres/libpq}/pqformat.h +2 -2
  180. data/ext/pg_query/include/{libpq → postgres/libpq}/pqsignal.h +22 -10
  181. data/ext/pg_query/include/postgres/libpq/sasl.h +136 -0
  182. data/ext/pg_query/include/postgres/libpq/scram.h +37 -0
  183. data/ext/pg_query/include/{mb → postgres/mb}/pg_wchar.h +35 -18
  184. data/ext/pg_query/include/{mb → postgres/mb}/stringinfo_mb.h +1 -1
  185. data/ext/pg_query/include/{miscadmin.h → postgres/miscadmin.h} +27 -15
  186. data/ext/pg_query/include/{nodes → postgres/nodes}/bitmapset.h +11 -7
  187. data/ext/pg_query/include/{nodes → postgres/nodes}/execnodes.h +83 -30
  188. data/ext/pg_query/include/{nodes → postgres/nodes}/extensible.h +5 -3
  189. data/ext/pg_query/include/{nodes → postgres/nodes}/lockoptions.h +1 -1
  190. data/ext/pg_query/include/{nodes → postgres/nodes}/makefuncs.h +14 -2
  191. data/ext/pg_query/include/{nodes → postgres/nodes}/memnodes.h +7 -4
  192. data/ext/pg_query/include/postgres/nodes/miscnodes.h +56 -0
  193. data/ext/pg_query/include/{nodes → postgres/nodes}/nodeFuncs.h +89 -29
  194. data/ext/pg_query/include/{nodes → postgres/nodes}/nodes.h +96 -511
  195. data/ext/pg_query/include/postgres/nodes/nodetags.h +471 -0
  196. data/ext/pg_query/include/{nodes → postgres/nodes}/params.h +3 -3
  197. data/ext/pg_query/include/{nodes → postgres/nodes}/parsenodes.h +377 -139
  198. data/ext/pg_query/include/{nodes → postgres/nodes}/pathnodes.h +1090 -440
  199. data/ext/pg_query/include/{nodes → postgres/nodes}/pg_list.h +30 -7
  200. data/ext/pg_query/include/{nodes → postgres/nodes}/plannodes.h +367 -124
  201. data/ext/pg_query/include/{nodes → postgres/nodes}/primnodes.h +670 -222
  202. data/ext/pg_query/include/{nodes → postgres/nodes}/print.h +1 -1
  203. data/ext/pg_query/include/{utils → postgres/nodes}/queryjumble.h +5 -7
  204. data/ext/pg_query/include/postgres/nodes/replnodes.h +111 -0
  205. data/ext/pg_query/include/postgres/nodes/supportnodes.h +346 -0
  206. data/ext/pg_query/include/{nodes → postgres/nodes}/tidbitmap.h +1 -1
  207. data/ext/pg_query/include/{nodes → postgres/nodes}/value.h +12 -2
  208. data/ext/pg_query/include/{optimizer → postgres/optimizer}/cost.h +6 -4
  209. data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo.h +1 -1
  210. data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo_gene.h +1 -1
  211. data/ext/pg_query/include/{optimizer → postgres/optimizer}/optimizer.h +8 -8
  212. data/ext/pg_query/include/{optimizer → postgres/optimizer}/paths.h +16 -7
  213. data/ext/pg_query/include/{optimizer → postgres/optimizer}/planmain.h +3 -6
  214. data/ext/pg_query/include/{parser → postgres/parser}/analyze.h +4 -3
  215. data/ext/pg_query/include/{parser → postgres/parser}/kwlist.h +12 -1
  216. data/ext/pg_query/include/{parser → postgres/parser}/parse_agg.h +4 -2
  217. data/ext/pg_query/include/{parser → postgres/parser}/parse_coerce.h +3 -1
  218. data/ext/pg_query/include/{parser → postgres/parser}/parse_expr.h +1 -1
  219. data/ext/pg_query/include/{parser → postgres/parser}/parse_func.h +1 -1
  220. data/ext/pg_query/include/{parser → postgres/parser}/parse_node.h +22 -4
  221. data/ext/pg_query/include/{parser → postgres/parser}/parse_oper.h +3 -3
  222. data/ext/pg_query/include/{parser → postgres/parser}/parse_relation.h +8 -3
  223. data/ext/pg_query/include/{parser → postgres/parser}/parse_type.h +4 -3
  224. data/ext/pg_query/include/{parser → postgres/parser}/parser.h +4 -4
  225. data/ext/pg_query/include/{parser → postgres/parser}/parsetree.h +1 -1
  226. data/ext/pg_query/include/{parser → postgres/parser}/scanner.h +2 -2
  227. data/ext/pg_query/include/{parser → postgres/parser}/scansup.h +1 -1
  228. data/ext/pg_query/include/{partitioning → postgres/partitioning}/partdefs.h +1 -1
  229. data/ext/pg_query/include/{pg_config.h → postgres/pg_config.h} +158 -218
  230. data/ext/pg_query/include/{pg_config_manual.h → postgres/pg_config_manual.h} +8 -46
  231. data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
  232. data/ext/pg_query/include/{pg_getopt.h → postgres/pg_getopt.h} +1 -1
  233. data/ext/pg_query/include/{pg_trace.h → postgres/pg_trace.h} +1 -1
  234. data/ext/pg_query/include/{pgstat.h → postgres/pgstat.h} +173 -94
  235. data/ext/pg_query/include/{pgtime.h → postgres/pgtime.h} +3 -3
  236. data/ext/pg_query/include/{pl_gram.h → postgres/pl_gram.h} +66 -64
  237. data/ext/pg_query/include/{pl_reserved_kwlist.h → postgres/pl_reserved_kwlist.h} +1 -1
  238. data/ext/pg_query/include/{pl_reserved_kwlist_d.h → postgres/pl_reserved_kwlist_d.h} +1 -1
  239. data/ext/pg_query/include/{pl_unreserved_kwlist.h → postgres/pl_unreserved_kwlist.h} +2 -1
  240. data/ext/pg_query/include/{pl_unreserved_kwlist_d.h → postgres/pl_unreserved_kwlist_d.h} +48 -46
  241. data/ext/pg_query/include/{plpgsql.h → postgres/plpgsql.h} +28 -33
  242. data/ext/pg_query/include/{port → postgres/port}/atomics/arch-arm.h +3 -3
  243. data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +17 -0
  244. data/ext/pg_query/include/{port → postgres/port}/atomics/arch-ppc.h +21 -21
  245. data/ext/pg_query/include/{port → postgres/port}/atomics/arch-x86.h +2 -2
  246. data/ext/pg_query/include/{port → postgres/port}/atomics/fallback.h +3 -3
  247. data/ext/pg_query/include/{port → postgres/port}/atomics/generic-gcc.h +1 -1
  248. data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +101 -0
  249. data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +106 -0
  250. data/ext/pg_query/include/{port → postgres/port}/atomics/generic.h +1 -1
  251. data/ext/pg_query/include/{port → postgres/port}/atomics.h +2 -7
  252. data/ext/pg_query/include/{port → postgres/port}/pg_bitutils.h +62 -25
  253. data/ext/pg_query/include/{port → postgres/port}/pg_bswap.h +1 -1
  254. data/ext/pg_query/include/{port → postgres/port}/pg_crc32c.h +1 -1
  255. data/ext/pg_query/include/postgres/port/simd.h +375 -0
  256. data/ext/pg_query/include/postgres/port/win32/arpa/inet.h +3 -0
  257. data/ext/pg_query/include/postgres/port/win32/dlfcn.h +1 -0
  258. data/ext/pg_query/include/postgres/port/win32/grp.h +1 -0
  259. data/ext/pg_query/include/postgres/port/win32/netdb.h +7 -0
  260. data/ext/pg_query/include/postgres/port/win32/netinet/in.h +3 -0
  261. data/ext/pg_query/include/postgres/port/win32/netinet/tcp.h +7 -0
  262. data/ext/pg_query/include/postgres/port/win32/pwd.h +3 -0
  263. data/ext/pg_query/include/postgres/port/win32/sys/resource.h +20 -0
  264. data/ext/pg_query/include/postgres/port/win32/sys/select.h +3 -0
  265. data/ext/pg_query/include/postgres/port/win32/sys/socket.h +26 -0
  266. data/ext/pg_query/include/postgres/port/win32/sys/un.h +17 -0
  267. data/ext/pg_query/include/postgres/port/win32/sys/wait.h +3 -0
  268. data/ext/pg_query/include/postgres/port/win32.h +59 -0
  269. data/ext/pg_query/include/postgres/port/win32_msvc/dirent.h +34 -0
  270. data/ext/pg_query/include/postgres/port/win32_msvc/sys/file.h +1 -0
  271. data/ext/pg_query/include/postgres/port/win32_msvc/sys/param.h +1 -0
  272. data/ext/pg_query/include/postgres/port/win32_msvc/sys/time.h +1 -0
  273. data/ext/pg_query/include/postgres/port/win32_msvc/unistd.h +9 -0
  274. data/ext/pg_query/include/postgres/port/win32_msvc/utime.h +3 -0
  275. data/ext/pg_query/include/postgres/port/win32_port.h +594 -0
  276. data/ext/pg_query/include/{port.h → postgres/port.h} +42 -75
  277. data/ext/pg_query/include/postgres/portability/instr_time.h +197 -0
  278. data/ext/pg_query/include/postgres/postgres.h +579 -0
  279. data/ext/pg_query/include/{postgres_ext.h → postgres/postgres_ext.h} +0 -1
  280. data/ext/pg_query/include/{postmaster → postgres/postmaster}/autovacuum.h +1 -4
  281. data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker.h +2 -2
  282. data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker_internals.h +1 -1
  283. data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgwriter.h +2 -2
  284. data/ext/pg_query/include/{postmaster → postgres/postmaster}/interrupt.h +1 -1
  285. data/ext/pg_query/include/postgres/postmaster/pgarch.h +36 -0
  286. data/ext/pg_query/include/{postmaster → postgres/postmaster}/postmaster.h +6 -3
  287. data/ext/pg_query/include/{postmaster → postgres/postmaster}/startup.h +3 -1
  288. data/ext/pg_query/include/{postmaster → postgres/postmaster}/syslogger.h +2 -2
  289. data/ext/pg_query/include/{postmaster → postgres/postmaster}/walwriter.h +3 -1
  290. data/ext/pg_query/include/{regex → postgres/regex}/regex.h +9 -6
  291. data/ext/pg_query/include/{replication → postgres/replication}/logicallauncher.h +6 -1
  292. data/ext/pg_query/include/{replication → postgres/replication}/logicalproto.h +30 -10
  293. data/ext/pg_query/include/postgres/replication/logicalworker.h +32 -0
  294. data/ext/pg_query/include/{replication → postgres/replication}/origin.h +4 -4
  295. data/ext/pg_query/include/{replication → postgres/replication}/reorderbuffer.h +113 -45
  296. data/ext/pg_query/include/{replication → postgres/replication}/slot.h +25 -6
  297. data/ext/pg_query/include/{replication → postgres/replication}/syncrep.h +2 -8
  298. data/ext/pg_query/include/{replication → postgres/replication}/walreceiver.h +15 -9
  299. data/ext/pg_query/include/{replication → postgres/replication}/walsender.h +13 -13
  300. data/ext/pg_query/include/{rewrite → postgres/rewrite}/prs2lock.h +1 -1
  301. data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteHandler.h +1 -4
  302. data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteManip.h +11 -2
  303. data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteSupport.h +1 -1
  304. data/ext/pg_query/include/{storage → postgres/storage}/backendid.h +1 -1
  305. data/ext/pg_query/include/{storage → postgres/storage}/block.h +24 -31
  306. data/ext/pg_query/include/{storage → postgres/storage}/buf.h +1 -1
  307. data/ext/pg_query/include/{storage → postgres/storage}/bufmgr.h +183 -87
  308. data/ext/pg_query/include/{storage → postgres/storage}/bufpage.h +146 -93
  309. data/ext/pg_query/include/{storage → postgres/storage}/condition_variable.h +2 -2
  310. data/ext/pg_query/include/{storage → postgres/storage}/dsm.h +3 -6
  311. data/ext/pg_query/include/{storage → postgres/storage}/dsm_impl.h +4 -1
  312. data/ext/pg_query/include/{storage → postgres/storage}/fd.h +24 -20
  313. data/ext/pg_query/include/{storage → postgres/storage}/fileset.h +1 -1
  314. data/ext/pg_query/include/{storage → postgres/storage}/ipc.h +2 -2
  315. data/ext/pg_query/include/{storage → postgres/storage}/item.h +1 -1
  316. data/ext/pg_query/include/{storage → postgres/storage}/itemid.h +1 -1
  317. data/ext/pg_query/include/{storage → postgres/storage}/itemptr.h +94 -57
  318. data/ext/pg_query/include/{storage → postgres/storage}/large_object.h +1 -1
  319. data/ext/pg_query/include/{storage → postgres/storage}/latch.h +9 -1
  320. data/ext/pg_query/include/{storage → postgres/storage}/lmgr.h +6 -1
  321. data/ext/pg_query/include/{storage → postgres/storage}/lock.h +21 -13
  322. data/ext/pg_query/include/{storage → postgres/storage}/lockdefs.h +3 -3
  323. data/ext/pg_query/include/{storage → postgres/storage}/lwlock.h +16 -2
  324. data/ext/pg_query/include/{storage → postgres/storage}/off.h +1 -1
  325. data/ext/pg_query/include/{storage → postgres/storage}/pg_sema.h +1 -1
  326. data/ext/pg_query/include/{storage → postgres/storage}/pg_shmem.h +1 -1
  327. data/ext/pg_query/include/{storage → postgres/storage}/pmsignal.h +1 -1
  328. data/ext/pg_query/include/{storage → postgres/storage}/predicate.h +2 -2
  329. data/ext/pg_query/include/{storage → postgres/storage}/proc.h +22 -17
  330. data/ext/pg_query/include/{storage → postgres/storage}/procarray.h +3 -2
  331. data/ext/pg_query/include/{storage → postgres/storage}/proclist_types.h +1 -1
  332. data/ext/pg_query/include/{storage → postgres/storage}/procsignal.h +3 -1
  333. data/ext/pg_query/include/postgres/storage/relfilelocator.h +99 -0
  334. data/ext/pg_query/include/{storage → postgres/storage}/s_lock.h +66 -309
  335. data/ext/pg_query/include/{storage → postgres/storage}/sharedfileset.h +1 -1
  336. data/ext/pg_query/include/{storage → postgres/storage}/shm_mq.h +1 -1
  337. data/ext/pg_query/include/{storage → postgres/storage}/shm_toc.h +1 -1
  338. data/ext/pg_query/include/{storage → postgres/storage}/shmem.h +1 -23
  339. data/ext/pg_query/include/{storage → postgres/storage}/sinval.h +3 -3
  340. data/ext/pg_query/include/{storage → postgres/storage}/sinvaladt.h +4 -2
  341. data/ext/pg_query/include/{storage → postgres/storage}/smgr.h +12 -10
  342. data/ext/pg_query/include/{storage → postgres/storage}/spin.h +1 -1
  343. data/ext/pg_query/include/{storage → postgres/storage}/standby.h +9 -8
  344. data/ext/pg_query/include/{storage → postgres/storage}/standbydefs.h +1 -1
  345. data/ext/pg_query/include/{storage → postgres/storage}/sync.h +3 -3
  346. data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtag.h +7 -2
  347. data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtaglist.h +1 -1
  348. data/ext/pg_query/include/{tcop → postgres/tcop}/deparse_utility.h +1 -1
  349. data/ext/pg_query/include/{tcop → postgres/tcop}/dest.h +1 -3
  350. data/ext/pg_query/include/{tcop → postgres/tcop}/fastpath.h +1 -1
  351. data/ext/pg_query/include/{tcop → postgres/tcop}/pquery.h +1 -1
  352. data/ext/pg_query/include/{tcop → postgres/tcop}/tcopprot.h +3 -6
  353. data/ext/pg_query/include/{tcop → postgres/tcop}/utility.h +1 -1
  354. data/ext/pg_query/include/{tsearch → postgres/tsearch}/ts_cache.h +2 -4
  355. data/ext/pg_query/include/{utils → postgres/utils}/acl.h +26 -81
  356. data/ext/pg_query/include/{utils → postgres/utils}/aclchk_internal.h +1 -1
  357. data/ext/pg_query/include/{utils → postgres/utils}/array.h +19 -1
  358. data/ext/pg_query/include/{utils → postgres/utils}/backend_progress.h +2 -1
  359. data/ext/pg_query/include/{utils → postgres/utils}/backend_status.h +24 -3
  360. data/ext/pg_query/include/{utils → postgres/utils}/builtins.h +15 -6
  361. data/ext/pg_query/include/{utils → postgres/utils}/bytea.h +1 -1
  362. data/ext/pg_query/include/{utils → postgres/utils}/catcache.h +1 -1
  363. data/ext/pg_query/include/{utils → postgres/utils}/date.h +37 -9
  364. data/ext/pg_query/include/{utils → postgres/utils}/datetime.h +41 -21
  365. data/ext/pg_query/include/{utils → postgres/utils}/datum.h +1 -1
  366. data/ext/pg_query/include/{utils → postgres/utils}/dsa.h +5 -1
  367. data/ext/pg_query/include/{utils → postgres/utils}/elog.h +104 -29
  368. data/ext/pg_query/include/{utils → postgres/utils}/expandeddatum.h +14 -3
  369. data/ext/pg_query/include/{utils → postgres/utils}/expandedrecord.h +14 -4
  370. data/ext/pg_query/include/{utils → postgres/utils}/float.h +7 -6
  371. data/ext/pg_query/include/{utils → postgres/utils}/fmgroids.h +54 -1
  372. data/ext/pg_query/include/{utils → postgres/utils}/fmgrprotos.h +45 -3
  373. data/ext/pg_query/include/{utils → postgres/utils}/fmgrtab.h +1 -1
  374. data/ext/pg_query/include/{utils → postgres/utils}/guc.h +59 -86
  375. data/ext/pg_query/include/postgres/utils/guc_hooks.h +163 -0
  376. data/ext/pg_query/include/{utils → postgres/utils}/guc_tables.h +49 -3
  377. data/ext/pg_query/include/{utils → postgres/utils}/hsearch.h +1 -1
  378. data/ext/pg_query/include/{utils → postgres/utils}/inval.h +3 -3
  379. data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
  380. data/ext/pg_query/include/{utils → postgres/utils}/lsyscache.h +5 -1
  381. data/ext/pg_query/include/{utils → postgres/utils}/memdebug.h +1 -1
  382. data/ext/pg_query/include/{utils → postgres/utils}/memutils.h +7 -51
  383. data/ext/pg_query/include/postgres/utils/memutils_internal.h +136 -0
  384. data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +237 -0
  385. data/ext/pg_query/include/{utils → postgres/utils}/numeric.h +20 -5
  386. data/ext/pg_query/include/{utils → postgres/utils}/palloc.h +9 -2
  387. data/ext/pg_query/include/{utils → postgres/utils}/partcache.h +3 -2
  388. data/ext/pg_query/include/{utils → postgres/utils}/pg_locale.h +22 -14
  389. data/ext/pg_query/include/{utils → postgres/utils}/pgstat_internal.h +37 -7
  390. data/ext/pg_query/include/{utils → postgres/utils}/plancache.h +1 -1
  391. data/ext/pg_query/include/{utils → postgres/utils}/portal.h +1 -1
  392. data/ext/pg_query/include/{utils → postgres/utils}/probes.h +6 -6
  393. data/ext/pg_query/include/postgres/utils/ps_status.h +47 -0
  394. data/ext/pg_query/include/{utils → postgres/utils}/queryenvironment.h +1 -1
  395. data/ext/pg_query/include/{utils → postgres/utils}/regproc.h +3 -3
  396. data/ext/pg_query/include/{utils → postgres/utils}/rel.h +60 -43
  397. data/ext/pg_query/include/{utils → postgres/utils}/relcache.h +13 -8
  398. data/ext/pg_query/include/{utils → postgres/utils}/reltrigger.h +1 -1
  399. data/ext/pg_query/include/{utils → postgres/utils}/resowner.h +1 -1
  400. data/ext/pg_query/include/{utils → postgres/utils}/ruleutils.h +6 -1
  401. data/ext/pg_query/include/{utils → postgres/utils}/sharedtuplestore.h +1 -1
  402. data/ext/pg_query/include/{utils → postgres/utils}/snapmgr.h +4 -2
  403. data/ext/pg_query/include/{utils → postgres/utils}/snapshot.h +1 -1
  404. data/ext/pg_query/include/{utils → postgres/utils}/sortsupport.h +2 -2
  405. data/ext/pg_query/include/{utils → postgres/utils}/syscache.h +4 -1
  406. data/ext/pg_query/include/{utils → postgres/utils}/timeout.h +1 -1
  407. data/ext/pg_query/include/{utils → postgres/utils}/timestamp.h +41 -11
  408. data/ext/pg_query/include/{utils → postgres/utils}/tuplesort.h +189 -35
  409. data/ext/pg_query/include/{utils → postgres/utils}/tuplestore.h +1 -1
  410. data/ext/pg_query/include/{utils → postgres/utils}/typcache.h +1 -1
  411. data/ext/pg_query/include/{utils → postgres/utils}/varlena.h +13 -1
  412. data/ext/pg_query/include/{utils → postgres/utils}/wait_event.h +9 -4
  413. data/ext/pg_query/include/{utils → postgres/utils}/xml.h +15 -5
  414. data/ext/pg_query/include/{postgres.h → postgres/varatt.h} +7 -457
  415. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +6186 -5585
  416. data/ext/pg_query/include/protobuf/pg_query.pb.h +112443 -91222
  417. data/ext/pg_query/pg_query.c +10 -1
  418. data/ext/pg_query/pg_query.pb-c.c +19755 -17757
  419. data/ext/pg_query/pg_query_deparse.c +1 -10635
  420. data/ext/pg_query/pg_query_fingerprint.c +12 -8
  421. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  422. data/ext/pg_query/pg_query_internal.h +1 -1
  423. data/ext/pg_query/pg_query_json_plpgsql.c +1 -0
  424. data/ext/pg_query/pg_query_normalize.c +1 -1
  425. data/ext/pg_query/pg_query_outfuncs_json.c +6 -0
  426. data/ext/pg_query/pg_query_outfuncs_protobuf.c +3 -2
  427. data/ext/pg_query/pg_query_parse.c +47 -5
  428. data/ext/pg_query/pg_query_parse_plpgsql.c +7 -5
  429. data/ext/pg_query/pg_query_readfuncs_protobuf.c +1 -0
  430. data/ext/pg_query/pg_query_ruby.c +5 -0
  431. data/ext/pg_query/pg_query_ruby_freebsd.sym +2 -0
  432. data/ext/pg_query/pg_query_scan.c +1 -1
  433. data/ext/pg_query/pg_query_split.c +3 -3
  434. data/ext/pg_query/postgres_deparse.c +11067 -0
  435. data/ext/pg_query/postgres_deparse.h +9 -0
  436. data/ext/pg_query/src_backend_catalog_namespace.c +7 -2
  437. data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -1
  438. data/ext/pg_query/src_backend_commands_define.c +1 -1
  439. data/ext/pg_query/src_backend_nodes_bitmapset.c +11 -70
  440. data/ext/pg_query/src_backend_nodes_copyfuncs.c +96 -6202
  441. data/ext/pg_query/src_backend_nodes_equalfuncs.c +95 -4068
  442. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  443. data/ext/pg_query/src_backend_nodes_list.c +14 -2
  444. data/ext/pg_query/src_backend_nodes_makefuncs.c +95 -1
  445. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +283 -132
  446. data/ext/pg_query/src_backend_nodes_nodes.c +38 -0
  447. data/ext/pg_query/src_backend_nodes_value.c +1 -1
  448. data/ext/pg_query/src_backend_parser_gram.c +33208 -31806
  449. data/ext/pg_query/src_backend_parser_parser.c +28 -2
  450. data/ext/pg_query/src_backend_parser_scan.c +4318 -3329
  451. data/ext/pg_query/src_backend_parser_scansup.c +1 -1
  452. data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
  453. data/ext/pg_query/src_backend_tcop_postgres.c +66 -87
  454. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +1 -1
  455. data/ext/pg_query/src_backend_utils_adt_datum.c +5 -7
  456. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  457. data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
  458. data/ext/pg_query/src_backend_utils_adt_numutils.c +489 -0
  459. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +79 -5
  460. data/ext/pg_query/src_backend_utils_error_assert.c +4 -7
  461. data/ext/pg_query/src_backend_utils_error_elog.c +371 -249
  462. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +33 -1
  463. data/ext/pg_query/src_backend_utils_init_globals.c +6 -3
  464. data/ext/pg_query/src_backend_utils_mb_mbutils.c +21 -67
  465. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +492 -0
  466. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +163 -0
  467. data/ext/pg_query/src_backend_utils_mmgr_aset.c +449 -312
  468. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
  469. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +398 -49
  470. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1021 -0
  471. data/ext/pg_query/src_common_encnames.c +4 -1
  472. data/ext/pg_query/src_common_hashfn.c +1 -1
  473. data/ext/pg_query/src_common_keywords.c +1 -1
  474. data/ext/pg_query/src_common_kwlist_d.h +534 -510
  475. data/ext/pg_query/src_common_kwlookup.c +1 -1
  476. data/ext/pg_query/src_common_psprintf.c +1 -1
  477. data/ext/pg_query/src_common_stringinfo.c +4 -4
  478. data/ext/pg_query/src_common_wchar.c +9 -8
  479. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1 -1
  480. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -1
  481. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +661 -694
  482. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  483. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +1 -1
  484. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +1 -1
  485. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +48 -46
  486. data/ext/pg_query/src_port_pg_bitutils.c +79 -5
  487. data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
  488. data/ext/pg_query/src_port_snprintf.c +6 -10
  489. data/ext/pg_query/src_port_strerror.c +1 -1
  490. data/ext/pg_query/src_port_strlcpy.c +79 -0
  491. data/lib/pg_query/fingerprint.rb +2 -3
  492. data/lib/pg_query/node.rb +16 -11
  493. data/lib/pg_query/parse.rb +1 -1
  494. data/lib/pg_query/pg_query_pb.rb +166 -3191
  495. data/lib/pg_query/treewalker.rb +23 -5
  496. data/lib/pg_query/version.rb +1 -1
  497. metadata +432 -380
  498. data/ext/pg_query/guc-file.c +0 -0
  499. data/ext/pg_query/include/catalog/pg_parameter_acl.h +0 -60
  500. data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +0 -34
  501. data/ext/pg_query/include/commands/variable.h +0 -38
  502. data/ext/pg_query/include/common/ip.h +0 -31
  503. data/ext/pg_query/include/getaddrinfo.h +0 -162
  504. data/ext/pg_query/include/kwlist_d.h +0 -1095
  505. data/ext/pg_query/include/parser/gram.h +0 -1101
  506. data/ext/pg_query/include/pg_config_os.h +0 -8
  507. data/ext/pg_query/include/portability/instr_time.h +0 -256
  508. data/ext/pg_query/include/postmaster/auxprocess.h +0 -20
  509. data/ext/pg_query/include/postmaster/fork_process.h +0 -17
  510. data/ext/pg_query/include/postmaster/pgarch.h +0 -73
  511. data/ext/pg_query/include/replication/logicalworker.h +0 -19
  512. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  513. data/ext/pg_query/include/utils/dynahash.h +0 -20
  514. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  515. data/ext/pg_query/include/utils/pidfile.h +0 -56
  516. data/ext/pg_query/include/utils/ps_status.h +0 -25
  517. data/ext/pg_query/include/utils/rls.h +0 -50
  518. data/ext/pg_query/include/utils/tzparser.h +0 -39
  519. data/ext/pg_query/src_backend_postmaster_postmaster.c +0 -2201
  520. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -371
  521. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1116
  522. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1993
  523. data/ext/pg_query/src_common_pg_prng.c +0 -152
  524. data/ext/pg_query/src_common_string.c +0 -92
  525. data/ext/pg_query/src_port_pgsleep.c +0 -69
  526. data/ext/pg_query/src_port_strnlen.c +0 -39
  527. /data/ext/pg_query/include/{access → postgres/access}/rmgr.h +0 -0
  528. /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
  529. /data/ext/pg_query/include/{plerrcodes.h → postgres/plerrcodes.h} +0 -0
  530. /data/ext/pg_query/include/{storage → postgres/storage}/lwlocknames.h +0 -0
  531. /data/ext/pg_query/include/{utils → postgres/utils}/errcodes.h +0 -0
@@ -4,7 +4,7 @@
4
4
  * Standard POSTGRES buffer page definitions.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/storage/bufpage.h
@@ -97,8 +97,12 @@ typedef struct
97
97
  uint32 xrecoff; /* low bits */
98
98
  } PageXLogRecPtr;
99
99
 
100
- #define PageXLogRecPtrGet(val) \
101
- ((uint64) (val).xlogid << 32 | (val).xrecoff)
100
+ static inline XLogRecPtr
101
+ PageXLogRecPtrGet(PageXLogRecPtr val)
102
+ {
103
+ return (uint64) val.xlogid << 32 | val.xrecoff;
104
+ }
105
+
102
106
  #define PageXLogRecPtrSet(ptr, lsn) \
103
107
  ((ptr).xlogid = (uint32) ((lsn) >> 32), (ptr).xrecoff = (uint32) (lsn))
104
108
 
@@ -200,16 +204,10 @@ typedef PageHeaderData *PageHeader;
200
204
  #define PG_DATA_CHECKSUM_VERSION 1
201
205
 
202
206
  /* ----------------------------------------------------------------
203
- * page support macros
207
+ * page support functions
204
208
  * ----------------------------------------------------------------
205
209
  */
206
210
 
207
- /*
208
- * PageIsValid
209
- * True iff page is valid.
210
- */
211
- #define PageIsValid(page) PointerIsValid(page)
212
-
213
211
  /*
214
212
  * line pointer(s) do not count as part of header
215
213
  */
@@ -219,21 +217,31 @@ typedef PageHeaderData *PageHeader;
219
217
  * PageIsEmpty
220
218
  * returns true iff no itemid has been allocated on the page
221
219
  */
222
- #define PageIsEmpty(page) \
223
- (((PageHeader) (page))->pd_lower <= SizeOfPageHeaderData)
220
+ static inline bool
221
+ PageIsEmpty(Page page)
222
+ {
223
+ return ((PageHeader) page)->pd_lower <= SizeOfPageHeaderData;
224
+ }
224
225
 
225
226
  /*
226
227
  * PageIsNew
227
228
  * returns true iff page has not been initialized (by PageInit)
228
229
  */
229
- #define PageIsNew(page) (((PageHeader) (page))->pd_upper == 0)
230
+ static inline bool
231
+ PageIsNew(Page page)
232
+ {
233
+ return ((PageHeader) page)->pd_upper == 0;
234
+ }
230
235
 
231
236
  /*
232
237
  * PageGetItemId
233
238
  * Returns an item identifier of a page.
234
239
  */
235
- #define PageGetItemId(page, offsetNumber) \
236
- ((ItemId) (&((PageHeader) (page))->pd_linp[(offsetNumber) - 1]))
240
+ static inline ItemId
241
+ PageGetItemId(Page page, OffsetNumber offsetNumber)
242
+ {
243
+ return &((PageHeader) page)->pd_linp[offsetNumber - 1];
244
+ }
237
245
 
238
246
  /*
239
247
  * PageGetContents
@@ -243,20 +251,17 @@ typedef PageHeaderData *PageHeader;
243
251
  * Now it is. Beware of old code that might think the offset to the contents
244
252
  * is just SizeOfPageHeaderData rather than MAXALIGN(SizeOfPageHeaderData).
245
253
  */
246
- #define PageGetContents(page) \
247
- ((char *) (page) + MAXALIGN(SizeOfPageHeaderData))
254
+ static inline char *
255
+ PageGetContents(Page page)
256
+ {
257
+ return (char *) page + MAXALIGN(SizeOfPageHeaderData);
258
+ }
248
259
 
249
260
  /* ----------------
250
- * macros to access page size info
261
+ * functions to access page size info
251
262
  * ----------------
252
263
  */
253
264
 
254
- /*
255
- * PageSizeIsValid
256
- * True iff the page size is valid.
257
- */
258
- #define PageSizeIsValid(pageSize) ((pageSize) == BLCKSZ)
259
-
260
265
  /*
261
266
  * PageGetPageSize
262
267
  * Returns the page size of a page.
@@ -265,15 +270,21 @@ typedef PageHeaderData *PageHeader;
265
270
  * BufferGetPageSize, which can be called on an unformatted page).
266
271
  * however, it can be called on a page that is not stored in a buffer.
267
272
  */
268
- #define PageGetPageSize(page) \
269
- ((Size) (((PageHeader) (page))->pd_pagesize_version & (uint16) 0xFF00))
273
+ static inline Size
274
+ PageGetPageSize(Page page)
275
+ {
276
+ return (Size) (((PageHeader) page)->pd_pagesize_version & (uint16) 0xFF00);
277
+ }
270
278
 
271
279
  /*
272
280
  * PageGetPageLayoutVersion
273
281
  * Returns the page layout version of a page.
274
282
  */
275
- #define PageGetPageLayoutVersion(page) \
276
- (((PageHeader) (page))->pd_pagesize_version & 0x00FF)
283
+ static inline uint8
284
+ PageGetPageLayoutVersion(Page page)
285
+ {
286
+ return (((PageHeader) page)->pd_pagesize_version & 0x00FF);
287
+ }
277
288
 
278
289
  /*
279
290
  * PageSetPageSizeAndVersion
@@ -282,52 +293,52 @@ typedef PageHeaderData *PageHeader;
282
293
  * We could support setting these two values separately, but there's
283
294
  * no real need for it at the moment.
284
295
  */
285
- #define PageSetPageSizeAndVersion(page, size, version) \
286
- ( \
287
- AssertMacro(((size) & 0xFF00) == (size)), \
288
- AssertMacro(((version) & 0x00FF) == (version)), \
289
- ((PageHeader) (page))->pd_pagesize_version = (size) | (version) \
290
- )
296
+ static inline void
297
+ PageSetPageSizeAndVersion(Page page, Size size, uint8 version)
298
+ {
299
+ Assert((size & 0xFF00) == size);
300
+ Assert((version & 0x00FF) == version);
301
+
302
+ ((PageHeader) page)->pd_pagesize_version = size | version;
303
+ }
291
304
 
292
305
  /* ----------------
293
- * page special data macros
306
+ * page special data functions
294
307
  * ----------------
295
308
  */
296
309
  /*
297
310
  * PageGetSpecialSize
298
311
  * Returns size of special space on a page.
299
312
  */
300
- #define PageGetSpecialSize(page) \
301
- ((uint16) (PageGetPageSize(page) - ((PageHeader)(page))->pd_special))
313
+ static inline uint16
314
+ PageGetSpecialSize(Page page)
315
+ {
316
+ return (PageGetPageSize(page) - ((PageHeader) page)->pd_special);
317
+ }
302
318
 
303
319
  /*
304
320
  * Using assertions, validate that the page special pointer is OK.
305
321
  *
306
322
  * This is intended to catch use of the pointer before page initialization.
307
- * It is implemented as a function due to the limitations of the MSVC
308
- * compiler, which choked on doing all these tests within another macro. We
309
- * return true so that AssertMacro() can be used while still getting the
310
- * specifics from the macro failure within this function.
311
323
  */
312
- static inline bool
324
+ static inline void
313
325
  PageValidateSpecialPointer(Page page)
314
326
  {
315
- Assert(PageIsValid(page));
316
- Assert(((PageHeader) (page))->pd_special <= BLCKSZ);
317
- Assert(((PageHeader) (page))->pd_special >= SizeOfPageHeaderData);
318
-
319
- return true;
327
+ Assert(page);
328
+ Assert(((PageHeader) page)->pd_special <= BLCKSZ);
329
+ Assert(((PageHeader) page)->pd_special >= SizeOfPageHeaderData);
320
330
  }
321
331
 
322
332
  /*
323
333
  * PageGetSpecialPointer
324
334
  * Returns pointer to special space on a page.
325
335
  */
326
- #define PageGetSpecialPointer(page) \
327
- ( \
328
- AssertMacro(PageValidateSpecialPointer(page)), \
329
- (char *) ((char *) (page) + ((PageHeader) (page))->pd_special) \
330
- )
336
+ static inline char *
337
+ PageGetSpecialPointer(Page page)
338
+ {
339
+ PageValidateSpecialPointer(page);
340
+ return (char *) page + ((PageHeader) page)->pd_special;
341
+ }
331
342
 
332
343
  /*
333
344
  * PageGetItem
@@ -337,12 +348,14 @@ PageValidateSpecialPointer(Page page)
337
348
  * This does not change the status of any of the resources passed.
338
349
  * The semantics may change in the future.
339
350
  */
340
- #define PageGetItem(page, itemId) \
341
- ( \
342
- AssertMacro(PageIsValid(page)), \
343
- AssertMacro(ItemIdHasStorage(itemId)), \
344
- (Item)(((char *)(page)) + ItemIdGetOffset(itemId)) \
345
- )
351
+ static inline Item
352
+ PageGetItem(Page page, ItemId itemId)
353
+ {
354
+ Assert(page);
355
+ Assert(ItemIdHasStorage(itemId));
356
+
357
+ return (Item) (((char *) page) + ItemIdGetOffset(itemId));
358
+ }
346
359
 
347
360
  /*
348
361
  * PageGetMaxOffsetNumber
@@ -351,44 +364,84 @@ PageValidateSpecialPointer(Page page)
351
364
  * of items on the page.
352
365
  *
353
366
  * NOTE: if the page is not initialized (pd_lower == 0), we must
354
- * return zero to ensure sane behavior. Accept double evaluation
355
- * of the argument so that we can ensure this.
367
+ * return zero to ensure sane behavior.
356
368
  */
357
- #define PageGetMaxOffsetNumber(page) \
358
- (((PageHeader) (page))->pd_lower <= SizeOfPageHeaderData ? 0 : \
359
- ((((PageHeader) (page))->pd_lower - SizeOfPageHeaderData) \
360
- / sizeof(ItemIdData)))
369
+ static inline OffsetNumber
370
+ PageGetMaxOffsetNumber(Page page)
371
+ {
372
+ PageHeader pageheader = (PageHeader) page;
373
+
374
+ if (pageheader->pd_lower <= SizeOfPageHeaderData)
375
+ return 0;
376
+ else
377
+ return (pageheader->pd_lower - SizeOfPageHeaderData) / sizeof(ItemIdData);
378
+ }
361
379
 
362
380
  /*
363
- * Additional macros for access to page headers. (Beware multiple evaluation
364
- * of the arguments!)
381
+ * Additional functions for access to page headers.
365
382
  */
366
- #define PageGetLSN(page) \
367
- PageXLogRecPtrGet(((PageHeader) (page))->pd_lsn)
368
- #define PageSetLSN(page, lsn) \
369
- PageXLogRecPtrSet(((PageHeader) (page))->pd_lsn, lsn)
370
-
371
- #define PageHasFreeLinePointers(page) \
372
- (((PageHeader) (page))->pd_flags & PD_HAS_FREE_LINES)
373
- #define PageSetHasFreeLinePointers(page) \
374
- (((PageHeader) (page))->pd_flags |= PD_HAS_FREE_LINES)
375
- #define PageClearHasFreeLinePointers(page) \
376
- (((PageHeader) (page))->pd_flags &= ~PD_HAS_FREE_LINES)
377
-
378
- #define PageIsFull(page) \
379
- (((PageHeader) (page))->pd_flags & PD_PAGE_FULL)
380
- #define PageSetFull(page) \
381
- (((PageHeader) (page))->pd_flags |= PD_PAGE_FULL)
382
- #define PageClearFull(page) \
383
- (((PageHeader) (page))->pd_flags &= ~PD_PAGE_FULL)
384
-
385
- #define PageIsAllVisible(page) \
386
- (((PageHeader) (page))->pd_flags & PD_ALL_VISIBLE)
387
- #define PageSetAllVisible(page) \
388
- (((PageHeader) (page))->pd_flags |= PD_ALL_VISIBLE)
389
- #define PageClearAllVisible(page) \
390
- (((PageHeader) (page))->pd_flags &= ~PD_ALL_VISIBLE)
383
+ static inline XLogRecPtr
384
+ PageGetLSN(Page page)
385
+ {
386
+ return PageXLogRecPtrGet(((PageHeader) page)->pd_lsn);
387
+ }
388
+ static inline void
389
+ PageSetLSN(Page page, XLogRecPtr lsn)
390
+ {
391
+ PageXLogRecPtrSet(((PageHeader) page)->pd_lsn, lsn);
392
+ }
393
+
394
+ static inline bool
395
+ PageHasFreeLinePointers(Page page)
396
+ {
397
+ return ((PageHeader) page)->pd_flags & PD_HAS_FREE_LINES;
398
+ }
399
+ static inline void
400
+ PageSetHasFreeLinePointers(Page page)
401
+ {
402
+ ((PageHeader) page)->pd_flags |= PD_HAS_FREE_LINES;
403
+ }
404
+ static inline void
405
+ PageClearHasFreeLinePointers(Page page)
406
+ {
407
+ ((PageHeader) page)->pd_flags &= ~PD_HAS_FREE_LINES;
408
+ }
409
+
410
+ static inline bool
411
+ PageIsFull(Page page)
412
+ {
413
+ return ((PageHeader) page)->pd_flags & PD_PAGE_FULL;
414
+ }
415
+ static inline void
416
+ PageSetFull(Page page)
417
+ {
418
+ ((PageHeader) page)->pd_flags |= PD_PAGE_FULL;
419
+ }
420
+ static inline void
421
+ PageClearFull(Page page)
422
+ {
423
+ ((PageHeader) page)->pd_flags &= ~PD_PAGE_FULL;
424
+ }
391
425
 
426
+ static inline bool
427
+ PageIsAllVisible(Page page)
428
+ {
429
+ return ((PageHeader) page)->pd_flags & PD_ALL_VISIBLE;
430
+ }
431
+ static inline void
432
+ PageSetAllVisible(Page page)
433
+ {
434
+ ((PageHeader) page)->pd_flags |= PD_ALL_VISIBLE;
435
+ }
436
+ static inline void
437
+ PageClearAllVisible(Page page)
438
+ {
439
+ ((PageHeader) page)->pd_flags &= ~PD_ALL_VISIBLE;
440
+ }
441
+
442
+ /*
443
+ * These two require "access/transam.h", so left as macros.
444
+ */
392
445
  #define PageSetPrunable(page, xid) \
393
446
  do { \
394
447
  Assert(TransactionIdIsNormal(xid)); \
@@ -446,9 +499,9 @@ extern Size PageGetFreeSpace(Page page);
446
499
  extern Size PageGetFreeSpaceForMultipleTuples(Page page, int ntups);
447
500
  extern Size PageGetExactFreeSpace(Page page);
448
501
  extern Size PageGetHeapFreeSpace(Page page);
449
- extern void PageIndexTupleDelete(Page page, OffsetNumber offset);
502
+ extern void PageIndexTupleDelete(Page page, OffsetNumber offnum);
450
503
  extern void PageIndexMultiDelete(Page page, OffsetNumber *itemnos, int nitems);
451
- extern void PageIndexTupleDeleteNoCompact(Page page, OffsetNumber offset);
504
+ extern void PageIndexTupleDeleteNoCompact(Page page, OffsetNumber offnum);
452
505
  extern bool PageIndexTupleOverwrite(Page page, OffsetNumber offnum,
453
506
  Item newtup, Size newsize);
454
507
  extern char *PageSetChecksumCopy(Page page, BlockNumber blkno);
@@ -12,7 +12,7 @@
12
12
  * can be canceled prior to the fulfillment of the condition) and do not
13
13
  * use pointers internally (so that they are safe to use within DSMs).
14
14
  *
15
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
15
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
16
16
  * Portions Copyright (c) 1994, Regents of the University of California
17
17
  *
18
18
  * src/include/storage/condition_variable.h
@@ -56,7 +56,7 @@ extern void ConditionVariableInit(ConditionVariable *cv);
56
56
  extern void ConditionVariableSleep(ConditionVariable *cv, uint32 wait_event_info);
57
57
  extern bool ConditionVariableTimedSleep(ConditionVariable *cv, long timeout,
58
58
  uint32 wait_event_info);
59
- extern void ConditionVariableCancelSleep(void);
59
+ extern bool ConditionVariableCancelSleep(void);
60
60
 
61
61
  /*
62
62
  * Optionally, ConditionVariablePrepareToSleep can be called before entering
@@ -3,7 +3,7 @@
3
3
  * dsm.h
4
4
  * manage dynamic shared memory segments
5
5
  *
6
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
6
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
7
  * Portions Copyright (c) 1994, Regents of the University of California
8
8
  *
9
9
  * src/include/storage/dsm.h
@@ -19,9 +19,6 @@ typedef struct dsm_segment dsm_segment;
19
19
 
20
20
  #define DSM_CREATE_NULL_IF_MAXSEGMENTS 0x0001
21
21
 
22
- /* A sentinel value for an invalid DSM handle. */
23
- #define DSM_HANDLE_INVALID 0
24
-
25
22
  /* Startup and shutdown functions. */
26
23
  struct PGShmemHeader; /* avoid including pg_shmem.h */
27
24
  extern void dsm_cleanup_using_control_segment(dsm_handle old_control_handle);
@@ -45,8 +42,8 @@ extern void dsm_detach(dsm_segment *seg);
45
42
  extern void dsm_pin_mapping(dsm_segment *seg);
46
43
  extern void dsm_unpin_mapping(dsm_segment *seg);
47
44
  extern void dsm_pin_segment(dsm_segment *seg);
48
- extern void dsm_unpin_segment(dsm_handle h);
49
- extern dsm_segment *dsm_find_mapping(dsm_handle h);
45
+ extern void dsm_unpin_segment(dsm_handle handle);
46
+ extern dsm_segment *dsm_find_mapping(dsm_handle handle);
50
47
 
51
48
  /* Informational functions. */
52
49
  extern void *dsm_segment_address(dsm_segment *seg);
@@ -3,7 +3,7 @@
3
3
  * dsm_impl.h
4
4
  * low-level dynamic shared memory primitives
5
5
  *
6
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
6
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
7
  * Portions Copyright (c) 1994, Regents of the University of California
8
8
  *
9
9
  * src/include/storage/dsm_impl.h
@@ -54,6 +54,9 @@ extern PGDLLIMPORT int min_dynamic_shared_memory;
54
54
  /* A "name" for a dynamic shared memory segment. */
55
55
  typedef uint32 dsm_handle;
56
56
 
57
+ /* Sentinel value to use for invalid DSM handles. */
58
+ #define DSM_HANDLE_INVALID ((dsm_handle) 0)
59
+
57
60
  /* All the shared-memory operations we know about. */
58
61
  typedef enum
59
62
  {
@@ -4,7 +4,7 @@
4
4
  * Virtual file descriptor definitions.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/storage/fd.h
@@ -44,6 +44,7 @@
44
44
  #define FD_H
45
45
 
46
46
  #include <dirent.h>
47
+ #include <fcntl.h>
47
48
 
48
49
  typedef enum RecoveryInitSyncMethod
49
50
  {
@@ -51,15 +52,19 @@ typedef enum RecoveryInitSyncMethod
51
52
  RECOVERY_INIT_SYNC_METHOD_SYNCFS
52
53
  } RecoveryInitSyncMethod;
53
54
 
54
- struct iovec; /* avoid including port/pg_iovec.h here */
55
-
56
55
  typedef int File;
57
56
 
58
57
 
58
+ #define IO_DIRECT_DATA 0x01
59
+ #define IO_DIRECT_WAL 0x02
60
+ #define IO_DIRECT_WAL_INIT 0x04
61
+
62
+
59
63
  /* GUC parameter */
60
64
  extern PGDLLIMPORT int max_files_per_process;
61
65
  extern PGDLLIMPORT bool data_sync_retry;
62
66
  extern PGDLLIMPORT int recovery_init_sync_method;
67
+ extern PGDLLIMPORT int io_direct_flags;
63
68
 
64
69
  /*
65
70
  * This is private to fd.c, but exported for save/restore_backend_variables()
@@ -84,9 +89,10 @@ extern PGDLLIMPORT int max_safe_fds;
84
89
  * to the appropriate Windows flag in src/port/open.c. We simulate it with
85
90
  * fcntl(F_NOCACHE) on macOS inside fd.c's open() wrapper. We use the name
86
91
  * PG_O_DIRECT rather than defining O_DIRECT in that case (probably not a good
87
- * idea on a Unix).
92
+ * idea on a Unix). We can only use it if the compiler will correctly align
93
+ * PGIOAlignedBlock for us, though.
88
94
  */
89
- #if defined(O_DIRECT)
95
+ #if defined(O_DIRECT) && defined(pg_attribute_aligned)
90
96
  #define PG_O_DIRECT O_DIRECT
91
97
  #elif defined(F_NOCACHE)
92
98
  #define PG_O_DIRECT 0x80000000
@@ -104,10 +110,13 @@ extern File PathNameOpenFile(const char *fileName, int fileFlags);
104
110
  extern File PathNameOpenFilePerm(const char *fileName, int fileFlags, mode_t fileMode);
105
111
  extern File OpenTemporaryFile(bool interXact);
106
112
  extern void FileClose(File file);
107
- extern int FilePrefetch(File file, off_t offset, int amount, uint32 wait_event_info);
108
- extern int FileRead(File file, char *buffer, int amount, off_t offset, uint32 wait_event_info);
109
- extern int FileWrite(File file, char *buffer, int amount, off_t offset, uint32 wait_event_info);
113
+ extern int FilePrefetch(File file, off_t offset, off_t amount, uint32 wait_event_info);
114
+ extern int FileRead(File file, void *buffer, size_t amount, off_t offset, uint32 wait_event_info);
115
+ extern int FileWrite(File file, const void *buffer, size_t amount, off_t offset, uint32 wait_event_info);
110
116
  extern int FileSync(File file, uint32 wait_event_info);
117
+ extern int FileZero(File file, off_t offset, off_t amount, uint32 wait_event_info);
118
+ extern int FileFallocate(File file, off_t offset, off_t amount, uint32 wait_event_info);
119
+
111
120
  extern off_t FileSize(File file);
112
121
  extern int FileTruncate(File file, off_t offset, uint32 wait_event_info);
113
122
  extern void FileWriteback(File file, off_t offset, off_t nbytes, uint32 wait_event_info);
@@ -117,11 +126,11 @@ extern int FileGetRawFlags(File file);
117
126
  extern mode_t FileGetRawMode(File file);
118
127
 
119
128
  /* Operations used for sharing named temporary files */
120
- extern File PathNameCreateTemporaryFile(const char *name, bool error_on_failure);
129
+ extern File PathNameCreateTemporaryFile(const char *path, bool error_on_failure);
121
130
  extern File PathNameOpenTemporaryFile(const char *path, int mode);
122
- extern bool PathNameDeleteTemporaryFile(const char *name, bool error_on_failure);
123
- extern void PathNameCreateTemporaryDir(const char *base, const char *name);
124
- extern void PathNameDeleteTemporaryDir(const char *name);
131
+ extern bool PathNameDeleteTemporaryFile(const char *path, bool error_on_failure);
132
+ extern void PathNameCreateTemporaryDir(const char *basedir, const char *directory);
133
+ extern void PathNameDeleteTemporaryDir(const char *dirname);
125
134
  extern void TempTablespacePath(char *path, Oid tablespace);
126
135
 
127
136
  /* Operations that allow use of regular stdio --- USE WITH CAUTION */
@@ -177,17 +186,12 @@ extern int pg_fsync(int fd);
177
186
  extern int pg_fsync_no_writethrough(int fd);
178
187
  extern int pg_fsync_writethrough(int fd);
179
188
  extern int pg_fdatasync(int fd);
180
- extern void pg_flush_data(int fd, off_t offset, off_t amount);
181
- extern ssize_t pg_pwritev_with_retry(int fd,
182
- const struct iovec *iov,
183
- int iovcnt,
184
- off_t offset);
189
+ extern void pg_flush_data(int fd, off_t offset, off_t nbytes);
185
190
  extern int pg_truncate(const char *path, off_t length);
186
191
  extern void fsync_fname(const char *fname, bool isdir);
187
192
  extern int fsync_fname_ext(const char *fname, bool isdir, bool ignore_perm, int elevel);
188
- extern int durable_rename(const char *oldfile, const char *newfile, int loglevel);
189
- extern int durable_unlink(const char *fname, int loglevel);
190
- extern int durable_rename_excl(const char *oldfile, const char *newfile, int loglevel);
193
+ extern int durable_rename(const char *oldfile, const char *newfile, int elevel);
194
+ extern int durable_unlink(const char *fname, int elevel);
191
195
  extern void SyncDataDirectory(void);
192
196
  extern int data_sync_elevel(int elevel);
193
197
 
@@ -3,7 +3,7 @@
3
3
  * fileset.h
4
4
  * Management of named temporary files.
5
5
  *
6
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
6
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
7
7
  * Portions Copyright (c) 1994, Regents of the University of California
8
8
  *
9
9
  * src/include/storage/fileset.h
@@ -8,7 +8,7 @@
8
8
  * exit-time cleanup for either a postmaster or a backend.
9
9
  *
10
10
  *
11
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
11
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
12
12
  * Portions Copyright (c) 1994, Regents of the University of California
13
13
  *
14
14
  * src/include/storage/ipc.h
@@ -62,7 +62,7 @@ typedef void (*shmem_startup_hook_type) (void);
62
62
 
63
63
 
64
64
  /* ipc.c */
65
- extern PGDLLIMPORT __thread bool proc_exit_inprogress;
65
+ extern PGDLLIMPORT __thread bool proc_exit_inprogress;
66
66
  extern PGDLLIMPORT bool shmem_exit_inprogress;
67
67
 
68
68
  extern void proc_exit(int code) pg_attribute_noreturn();
@@ -4,7 +4,7 @@
4
4
  * POSTGRES disk item definitions.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/storage/item.h
@@ -4,7 +4,7 @@
4
4
  * Standard POSTGRES buffer page item identifier/line pointer definitions.
5
5
  *
6
6
  *
7
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
8
8
  * Portions Copyright (c) 1994, Regents of the University of California
9
9
  *
10
10
  * src/include/storage/itemid.h