pg_query 4.2.3 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (528) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +6 -8
  4. data/Rakefile +3 -4
  5. data/ext/pg_query/extconf.rb +14 -6
  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} +156 -217
  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_fingerprint.c +12 -8
  420. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  421. data/ext/pg_query/pg_query_internal.h +1 -1
  422. data/ext/pg_query/pg_query_json_plpgsql.c +1 -0
  423. data/ext/pg_query/pg_query_normalize.c +1 -1
  424. data/ext/pg_query/pg_query_outfuncs_json.c +6 -0
  425. data/ext/pg_query/pg_query_outfuncs_protobuf.c +3 -2
  426. data/ext/pg_query/pg_query_parse.c +47 -5
  427. data/ext/pg_query/pg_query_parse_plpgsql.c +7 -5
  428. data/ext/pg_query/pg_query_readfuncs_protobuf.c +1 -0
  429. data/ext/pg_query/pg_query_ruby.c +5 -0
  430. data/ext/pg_query/pg_query_scan.c +1 -1
  431. data/ext/pg_query/pg_query_split.c +3 -3
  432. data/ext/pg_query/postgres_deparse.c +503 -105
  433. data/ext/pg_query/src_backend_catalog_namespace.c +7 -2
  434. data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -1
  435. data/ext/pg_query/src_backend_commands_define.c +1 -1
  436. data/ext/pg_query/src_backend_nodes_bitmapset.c +11 -70
  437. data/ext/pg_query/src_backend_nodes_copyfuncs.c +96 -6202
  438. data/ext/pg_query/src_backend_nodes_equalfuncs.c +95 -4068
  439. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  440. data/ext/pg_query/src_backend_nodes_list.c +14 -2
  441. data/ext/pg_query/src_backend_nodes_makefuncs.c +95 -1
  442. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +283 -132
  443. data/ext/pg_query/src_backend_nodes_nodes.c +38 -0
  444. data/ext/pg_query/src_backend_nodes_value.c +1 -1
  445. data/ext/pg_query/src_backend_parser_gram.c +33208 -31806
  446. data/ext/pg_query/src_backend_parser_parser.c +28 -2
  447. data/ext/pg_query/src_backend_parser_scan.c +4318 -3329
  448. data/ext/pg_query/src_backend_parser_scansup.c +1 -1
  449. data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
  450. data/ext/pg_query/src_backend_tcop_postgres.c +66 -87
  451. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +1 -1
  452. data/ext/pg_query/src_backend_utils_adt_datum.c +5 -7
  453. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  454. data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
  455. data/ext/pg_query/src_backend_utils_adt_numutils.c +489 -0
  456. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +79 -5
  457. data/ext/pg_query/src_backend_utils_error_assert.c +4 -7
  458. data/ext/pg_query/src_backend_utils_error_elog.c +371 -249
  459. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +33 -1
  460. data/ext/pg_query/src_backend_utils_init_globals.c +6 -3
  461. data/ext/pg_query/src_backend_utils_mb_mbutils.c +21 -67
  462. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +492 -0
  463. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +163 -0
  464. data/ext/pg_query/src_backend_utils_mmgr_aset.c +449 -312
  465. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
  466. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +398 -49
  467. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1021 -0
  468. data/ext/pg_query/src_common_encnames.c +4 -1
  469. data/ext/pg_query/src_common_hashfn.c +1 -1
  470. data/ext/pg_query/src_common_keywords.c +1 -1
  471. data/ext/pg_query/src_common_kwlist_d.h +534 -510
  472. data/ext/pg_query/src_common_kwlookup.c +1 -1
  473. data/ext/pg_query/src_common_psprintf.c +1 -1
  474. data/ext/pg_query/src_common_stringinfo.c +4 -4
  475. data/ext/pg_query/src_common_wchar.c +9 -8
  476. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1 -1
  477. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -1
  478. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +661 -694
  479. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  480. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +1 -1
  481. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +1 -1
  482. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +48 -46
  483. data/ext/pg_query/src_port_pg_bitutils.c +79 -5
  484. data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
  485. data/ext/pg_query/src_port_snprintf.c +6 -10
  486. data/ext/pg_query/src_port_strerror.c +1 -1
  487. data/ext/pg_query/src_port_strlcpy.c +79 -0
  488. data/lib/pg_query/fingerprint.rb +2 -3
  489. data/lib/pg_query/node.rb +16 -11
  490. data/lib/pg_query/parse.rb +1 -1
  491. data/lib/pg_query/pg_query_pb.rb +166 -3191
  492. data/lib/pg_query/treewalker.rb +23 -5
  493. data/lib/pg_query/version.rb +1 -1
  494. metadata +432 -383
  495. data/ext/pg_query/guc-file.c +0 -0
  496. data/ext/pg_query/include/catalog/pg_parameter_acl.h +0 -60
  497. data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +0 -34
  498. data/ext/pg_query/include/commands/variable.h +0 -38
  499. data/ext/pg_query/include/common/ip.h +0 -31
  500. data/ext/pg_query/include/getaddrinfo.h +0 -162
  501. data/ext/pg_query/include/kwlist_d.h +0 -1095
  502. data/ext/pg_query/include/parser/gram.h +0 -1101
  503. data/ext/pg_query/include/pg_config_os.h +0 -8
  504. data/ext/pg_query/include/portability/instr_time.h +0 -256
  505. data/ext/pg_query/include/postmaster/auxprocess.h +0 -20
  506. data/ext/pg_query/include/postmaster/fork_process.h +0 -17
  507. data/ext/pg_query/include/postmaster/pgarch.h +0 -73
  508. data/ext/pg_query/include/replication/logicalworker.h +0 -19
  509. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  510. data/ext/pg_query/include/utils/dynahash.h +0 -20
  511. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  512. data/ext/pg_query/include/utils/pidfile.h +0 -56
  513. data/ext/pg_query/include/utils/ps_status.h +0 -25
  514. data/ext/pg_query/include/utils/rls.h +0 -50
  515. data/ext/pg_query/include/utils/tzparser.h +0 -39
  516. data/ext/pg_query/src_backend_postmaster_postmaster.c +0 -2201
  517. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -371
  518. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1116
  519. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1993
  520. data/ext/pg_query/src_common_pg_prng.c +0 -152
  521. data/ext/pg_query/src_common_string.c +0 -92
  522. data/ext/pg_query/src_port_pgsleep.c +0 -69
  523. data/ext/pg_query/src_port_strnlen.c +0 -39
  524. /data/ext/pg_query/include/{access → postgres/access}/rmgr.h +0 -0
  525. /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
  526. /data/ext/pg_query/include/{plerrcodes.h → postgres/plerrcodes.h} +0 -0
  527. /data/ext/pg_query/include/{storage → postgres/storage}/lwlocknames.h +0 -0
  528. /data/ext/pg_query/include/{utils → postgres/utils}/errcodes.h +0 -0
@@ -1,8 +0,0 @@
1
- /* src/include/port/darwin.h */
2
-
3
- #define __darwin__ 1
4
-
5
- #if HAVE_DECL_F_FULLFSYNC /* not present before macOS 10.3 */
6
- #define HAVE_FSYNC_WRITETHROUGH
7
-
8
- #endif
@@ -1,256 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * instr_time.h
4
- * portable high-precision interval timing
5
- *
6
- * This file provides an abstraction layer to hide portability issues in
7
- * interval timing. On Unix we use clock_gettime() if available, else
8
- * gettimeofday(). On Windows, gettimeofday() gives a low-precision result
9
- * so we must use QueryPerformanceCounter() instead. These macros also give
10
- * some breathing room to use other high-precision-timing APIs.
11
- *
12
- * The basic data type is instr_time, which all callers should treat as an
13
- * opaque typedef. instr_time can store either an absolute time (of
14
- * unspecified reference time) or an interval. The operations provided
15
- * for it are:
16
- *
17
- * INSTR_TIME_IS_ZERO(t) is t equal to zero?
18
- *
19
- * INSTR_TIME_SET_ZERO(t) set t to zero (memset is acceptable too)
20
- *
21
- * INSTR_TIME_SET_CURRENT(t) set t to current time
22
- *
23
- * INSTR_TIME_SET_CURRENT_LAZY(t) set t to current time if t is zero,
24
- * evaluates to whether t changed
25
- *
26
- * INSTR_TIME_ADD(x, y) x += y
27
- *
28
- * INSTR_TIME_SUBTRACT(x, y) x -= y
29
- *
30
- * INSTR_TIME_ACCUM_DIFF(x, y, z) x += (y - z)
31
- *
32
- * INSTR_TIME_GET_DOUBLE(t) convert t to double (in seconds)
33
- *
34
- * INSTR_TIME_GET_MILLISEC(t) convert t to double (in milliseconds)
35
- *
36
- * INSTR_TIME_GET_MICROSEC(t) convert t to uint64 (in microseconds)
37
- *
38
- * Note that INSTR_TIME_SUBTRACT and INSTR_TIME_ACCUM_DIFF convert
39
- * absolute times to intervals. The INSTR_TIME_GET_xxx operations are
40
- * only useful on intervals.
41
- *
42
- * When summing multiple measurements, it's recommended to leave the
43
- * running sum in instr_time form (ie, use INSTR_TIME_ADD or
44
- * INSTR_TIME_ACCUM_DIFF) and convert to a result format only at the end.
45
- *
46
- * Beware of multiple evaluations of the macro arguments.
47
- *
48
- *
49
- * Copyright (c) 2001-2022, PostgreSQL Global Development Group
50
- *
51
- * src/include/portability/instr_time.h
52
- *
53
- *-------------------------------------------------------------------------
54
- */
55
- #ifndef INSTR_TIME_H
56
- #define INSTR_TIME_H
57
-
58
- #ifndef WIN32
59
-
60
- #ifdef HAVE_CLOCK_GETTIME
61
-
62
- /* Use clock_gettime() */
63
-
64
- #include <time.h>
65
-
66
- /*
67
- * The best clockid to use according to the POSIX spec is CLOCK_MONOTONIC,
68
- * since that will give reliable interval timing even in the face of changes
69
- * to the system clock. However, POSIX doesn't require implementations to
70
- * provide anything except CLOCK_REALTIME, so fall back to that if we don't
71
- * find CLOCK_MONOTONIC.
72
- *
73
- * Also, some implementations have nonstandard clockids with better properties
74
- * than CLOCK_MONOTONIC. In particular, as of macOS 10.12, Apple provides
75
- * CLOCK_MONOTONIC_RAW which is both faster to read and higher resolution than
76
- * their version of CLOCK_MONOTONIC.
77
- */
78
- #if defined(__darwin__) && defined(CLOCK_MONOTONIC_RAW)
79
- #define PG_INSTR_CLOCK CLOCK_MONOTONIC_RAW
80
- #elif defined(CLOCK_MONOTONIC)
81
- #define PG_INSTR_CLOCK CLOCK_MONOTONIC
82
- #else
83
- #define PG_INSTR_CLOCK CLOCK_REALTIME
84
- #endif
85
-
86
- typedef struct timespec instr_time;
87
-
88
- #define INSTR_TIME_IS_ZERO(t) ((t).tv_nsec == 0 && (t).tv_sec == 0)
89
-
90
- #define INSTR_TIME_SET_ZERO(t) ((t).tv_sec = 0, (t).tv_nsec = 0)
91
-
92
- #define INSTR_TIME_SET_CURRENT(t) ((void) clock_gettime(PG_INSTR_CLOCK, &(t)))
93
-
94
- #define INSTR_TIME_ADD(x,y) \
95
- do { \
96
- (x).tv_sec += (y).tv_sec; \
97
- (x).tv_nsec += (y).tv_nsec; \
98
- /* Normalize */ \
99
- while ((x).tv_nsec >= 1000000000) \
100
- { \
101
- (x).tv_nsec -= 1000000000; \
102
- (x).tv_sec++; \
103
- } \
104
- } while (0)
105
-
106
- #define INSTR_TIME_SUBTRACT(x,y) \
107
- do { \
108
- (x).tv_sec -= (y).tv_sec; \
109
- (x).tv_nsec -= (y).tv_nsec; \
110
- /* Normalize */ \
111
- while ((x).tv_nsec < 0) \
112
- { \
113
- (x).tv_nsec += 1000000000; \
114
- (x).tv_sec--; \
115
- } \
116
- } while (0)
117
-
118
- #define INSTR_TIME_ACCUM_DIFF(x,y,z) \
119
- do { \
120
- (x).tv_sec += (y).tv_sec - (z).tv_sec; \
121
- (x).tv_nsec += (y).tv_nsec - (z).tv_nsec; \
122
- /* Normalize after each add to avoid overflow/underflow of tv_nsec */ \
123
- while ((x).tv_nsec < 0) \
124
- { \
125
- (x).tv_nsec += 1000000000; \
126
- (x).tv_sec--; \
127
- } \
128
- while ((x).tv_nsec >= 1000000000) \
129
- { \
130
- (x).tv_nsec -= 1000000000; \
131
- (x).tv_sec++; \
132
- } \
133
- } while (0)
134
-
135
- #define INSTR_TIME_GET_DOUBLE(t) \
136
- (((double) (t).tv_sec) + ((double) (t).tv_nsec) / 1000000000.0)
137
-
138
- #define INSTR_TIME_GET_MILLISEC(t) \
139
- (((double) (t).tv_sec * 1000.0) + ((double) (t).tv_nsec) / 1000000.0)
140
-
141
- #define INSTR_TIME_GET_MICROSEC(t) \
142
- (((uint64) (t).tv_sec * (uint64) 1000000) + (uint64) ((t).tv_nsec / 1000))
143
-
144
- #else /* !HAVE_CLOCK_GETTIME */
145
-
146
- /* Use gettimeofday() */
147
-
148
- #include <sys/time.h>
149
-
150
- typedef struct timeval instr_time;
151
-
152
- #define INSTR_TIME_IS_ZERO(t) ((t).tv_usec == 0 && (t).tv_sec == 0)
153
-
154
- #define INSTR_TIME_SET_ZERO(t) ((t).tv_sec = 0, (t).tv_usec = 0)
155
-
156
- #define INSTR_TIME_SET_CURRENT(t) gettimeofday(&(t), NULL)
157
-
158
- #define INSTR_TIME_ADD(x,y) \
159
- do { \
160
- (x).tv_sec += (y).tv_sec; \
161
- (x).tv_usec += (y).tv_usec; \
162
- /* Normalize */ \
163
- while ((x).tv_usec >= 1000000) \
164
- { \
165
- (x).tv_usec -= 1000000; \
166
- (x).tv_sec++; \
167
- } \
168
- } while (0)
169
-
170
- #define INSTR_TIME_SUBTRACT(x,y) \
171
- do { \
172
- (x).tv_sec -= (y).tv_sec; \
173
- (x).tv_usec -= (y).tv_usec; \
174
- /* Normalize */ \
175
- while ((x).tv_usec < 0) \
176
- { \
177
- (x).tv_usec += 1000000; \
178
- (x).tv_sec--; \
179
- } \
180
- } while (0)
181
-
182
- #define INSTR_TIME_ACCUM_DIFF(x,y,z) \
183
- do { \
184
- (x).tv_sec += (y).tv_sec - (z).tv_sec; \
185
- (x).tv_usec += (y).tv_usec - (z).tv_usec; \
186
- /* Normalize after each add to avoid overflow/underflow of tv_usec */ \
187
- while ((x).tv_usec < 0) \
188
- { \
189
- (x).tv_usec += 1000000; \
190
- (x).tv_sec--; \
191
- } \
192
- while ((x).tv_usec >= 1000000) \
193
- { \
194
- (x).tv_usec -= 1000000; \
195
- (x).tv_sec++; \
196
- } \
197
- } while (0)
198
-
199
- #define INSTR_TIME_GET_DOUBLE(t) \
200
- (((double) (t).tv_sec) + ((double) (t).tv_usec) / 1000000.0)
201
-
202
- #define INSTR_TIME_GET_MILLISEC(t) \
203
- (((double) (t).tv_sec * 1000.0) + ((double) (t).tv_usec) / 1000.0)
204
-
205
- #define INSTR_TIME_GET_MICROSEC(t) \
206
- (((uint64) (t).tv_sec * (uint64) 1000000) + (uint64) (t).tv_usec)
207
-
208
- #endif /* HAVE_CLOCK_GETTIME */
209
-
210
- #else /* WIN32 */
211
-
212
- /* Use QueryPerformanceCounter() */
213
-
214
- typedef LARGE_INTEGER instr_time;
215
-
216
- #define INSTR_TIME_IS_ZERO(t) ((t).QuadPart == 0)
217
-
218
- #define INSTR_TIME_SET_ZERO(t) ((t).QuadPart = 0)
219
-
220
- #define INSTR_TIME_SET_CURRENT(t) QueryPerformanceCounter(&(t))
221
-
222
- #define INSTR_TIME_ADD(x,y) \
223
- ((x).QuadPart += (y).QuadPart)
224
-
225
- #define INSTR_TIME_SUBTRACT(x,y) \
226
- ((x).QuadPart -= (y).QuadPart)
227
-
228
- #define INSTR_TIME_ACCUM_DIFF(x,y,z) \
229
- ((x).QuadPart += (y).QuadPart - (z).QuadPart)
230
-
231
- #define INSTR_TIME_GET_DOUBLE(t) \
232
- (((double) (t).QuadPart) / GetTimerFrequency())
233
-
234
- #define INSTR_TIME_GET_MILLISEC(t) \
235
- (((double) (t).QuadPart * 1000.0) / GetTimerFrequency())
236
-
237
- #define INSTR_TIME_GET_MICROSEC(t) \
238
- ((uint64) (((double) (t).QuadPart * 1000000.0) / GetTimerFrequency()))
239
-
240
- static inline double
241
- GetTimerFrequency(void)
242
- {
243
- LARGE_INTEGER f;
244
-
245
- QueryPerformanceFrequency(&f);
246
- return (double) f.QuadPart;
247
- }
248
-
249
- #endif /* WIN32 */
250
-
251
- /* same macro on all platforms */
252
-
253
- #define INSTR_TIME_SET_CURRENT_LAZY(t) \
254
- (INSTR_TIME_IS_ZERO(t) ? INSTR_TIME_SET_CURRENT(t), true : false)
255
-
256
- #endif /* INSTR_TIME_H */
@@ -1,20 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- * auxprocess.h
3
- * include file for functions related to auxiliary processes.
4
- *
5
- *
6
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
- * Portions Copyright (c) 1994, Regents of the University of California
8
- *
9
- * IDENTIFICATION
10
- * src/include/postmaster/auxprocess.h
11
- *-------------------------------------------------------------------------
12
- */
13
- #ifndef AUXPROCESS_H
14
- #define AUXPROCESS_H
15
-
16
- #include "miscadmin.h"
17
-
18
- extern void AuxiliaryProcessMain(AuxProcType auxtype) pg_attribute_noreturn();
19
-
20
- #endif /* AUXPROCESS_H */
@@ -1,17 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * fork_process.h
4
- * Exports from postmaster/fork_process.c.
5
- *
6
- * Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
- *
8
- * src/include/postmaster/fork_process.h
9
- *
10
- *-------------------------------------------------------------------------
11
- */
12
- #ifndef FORK_PROCESS_H
13
- #define FORK_PROCESS_H
14
-
15
- extern pid_t fork_process(void);
16
-
17
- #endif /* FORK_PROCESS_H */
@@ -1,73 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * pgarch.h
4
- * Exports from postmaster/pgarch.c.
5
- *
6
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
- * Portions Copyright (c) 1994, Regents of the University of California
8
- *
9
- * src/include/postmaster/pgarch.h
10
- *
11
- *-------------------------------------------------------------------------
12
- */
13
- #ifndef _PGARCH_H
14
- #define _PGARCH_H
15
-
16
- /* ----------
17
- * Archiver control info.
18
- *
19
- * We expect that archivable files within pg_wal will have names between
20
- * MIN_XFN_CHARS and MAX_XFN_CHARS in length, consisting only of characters
21
- * appearing in VALID_XFN_CHARS. The status files in archive_status have
22
- * corresponding names with ".ready" or ".done" appended.
23
- * ----------
24
- */
25
- #define MIN_XFN_CHARS 16
26
- #define MAX_XFN_CHARS 40
27
- #define VALID_XFN_CHARS "0123456789ABCDEF.history.backup.partial"
28
-
29
- extern Size PgArchShmemSize(void);
30
- extern void PgArchShmemInit(void);
31
- extern bool PgArchCanRestart(void);
32
- extern void PgArchiverMain(void) pg_attribute_noreturn();
33
- extern void PgArchWakeup(void);
34
- extern void PgArchForceDirScan(void);
35
-
36
- /*
37
- * The value of the archive_library GUC.
38
- */
39
- extern PGDLLIMPORT char *XLogArchiveLibrary;
40
-
41
- /*
42
- * Archive module callbacks
43
- *
44
- * These callback functions should be defined by archive libraries and returned
45
- * via _PG_archive_module_init(). ArchiveFileCB is the only required callback.
46
- * For more information about the purpose of each callback, refer to the
47
- * archive modules documentation.
48
- */
49
- typedef bool (*ArchiveCheckConfiguredCB) (void);
50
- typedef bool (*ArchiveFileCB) (const char *file, const char *path);
51
- typedef void (*ArchiveShutdownCB) (void);
52
-
53
- typedef struct ArchiveModuleCallbacks
54
- {
55
- ArchiveCheckConfiguredCB check_configured_cb;
56
- ArchiveFileCB archive_file_cb;
57
- ArchiveShutdownCB shutdown_cb;
58
- } ArchiveModuleCallbacks;
59
-
60
- /*
61
- * Type of the shared library symbol _PG_archive_module_init that is looked
62
- * up when loading an archive library.
63
- */
64
- typedef void (*ArchiveModuleInit) (ArchiveModuleCallbacks *cb);
65
-
66
- /*
67
- * Since the logic for archiving via a shell command is in the core server
68
- * and does not need to be loaded via a shared library, it has a special
69
- * initialization function.
70
- */
71
- extern void shell_archive_init(ArchiveModuleCallbacks *cb);
72
-
73
- #endif /* _PGARCH_H */
@@ -1,19 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * logicalworker.h
4
- * Exports for logical replication workers.
5
- *
6
- * Portions Copyright (c) 2016-2022, PostgreSQL Global Development Group
7
- *
8
- * src/include/replication/logicalworker.h
9
- *
10
- *-------------------------------------------------------------------------
11
- */
12
- #ifndef LOGICALWORKER_H
13
- #define LOGICALWORKER_H
14
-
15
- extern void ApplyWorkerMain(Datum main_arg);
16
-
17
- extern bool IsLogicalWorker(void);
18
-
19
- #endif /* LOGICALWORKER_H */
@@ -1,99 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * relfilenode.h
4
- * Physical access information for relations.
5
- *
6
- *
7
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
8
- * Portions Copyright (c) 1994, Regents of the University of California
9
- *
10
- * src/include/storage/relfilenode.h
11
- *
12
- *-------------------------------------------------------------------------
13
- */
14
- #ifndef RELFILENODE_H
15
- #define RELFILENODE_H
16
-
17
- #include "common/relpath.h"
18
- #include "storage/backendid.h"
19
-
20
- /*
21
- * RelFileNode must provide all that we need to know to physically access
22
- * a relation, with the exception of the backend ID, which can be provided
23
- * separately. Note, however, that a "physical" relation is comprised of
24
- * multiple files on the filesystem, as each fork is stored as a separate
25
- * file, and each fork can be divided into multiple segments. See md.c.
26
- *
27
- * spcNode identifies the tablespace of the relation. It corresponds to
28
- * pg_tablespace.oid.
29
- *
30
- * dbNode identifies the database of the relation. It is zero for
31
- * "shared" relations (those common to all databases of a cluster).
32
- * Nonzero dbNode values correspond to pg_database.oid.
33
- *
34
- * relNode identifies the specific relation. relNode corresponds to
35
- * pg_class.relfilenode (NOT pg_class.oid, because we need to be able
36
- * to assign new physical files to relations in some situations).
37
- * Notice that relNode is only unique within a database in a particular
38
- * tablespace.
39
- *
40
- * Note: spcNode must be GLOBALTABLESPACE_OID if and only if dbNode is
41
- * zero. We support shared relations only in the "global" tablespace.
42
- *
43
- * Note: in pg_class we allow reltablespace == 0 to denote that the
44
- * relation is stored in its database's "default" tablespace (as
45
- * identified by pg_database.dattablespace). However this shorthand
46
- * is NOT allowed in RelFileNode structs --- the real tablespace ID
47
- * must be supplied when setting spcNode.
48
- *
49
- * Note: in pg_class, relfilenode can be zero to denote that the relation
50
- * is a "mapped" relation, whose current true filenode number is available
51
- * from relmapper.c. Again, this case is NOT allowed in RelFileNodes.
52
- *
53
- * Note: various places use RelFileNode in hashtable keys. Therefore,
54
- * there *must not* be any unused padding bytes in this struct. That
55
- * should be safe as long as all the fields are of type Oid.
56
- */
57
- typedef struct RelFileNode
58
- {
59
- Oid spcNode; /* tablespace */
60
- Oid dbNode; /* database */
61
- Oid relNode; /* relation */
62
- } RelFileNode;
63
-
64
- /*
65
- * Augmenting a relfilenode with the backend ID provides all the information
66
- * we need to locate the physical storage. The backend ID is InvalidBackendId
67
- * for regular relations (those accessible to more than one backend), or the
68
- * owning backend's ID for backend-local relations. Backend-local relations
69
- * are always transient and removed in case of a database crash; they are
70
- * never WAL-logged or fsync'd.
71
- */
72
- typedef struct RelFileNodeBackend
73
- {
74
- RelFileNode node;
75
- BackendId backend;
76
- } RelFileNodeBackend;
77
-
78
- #define RelFileNodeBackendIsTemp(rnode) \
79
- ((rnode).backend != InvalidBackendId)
80
-
81
- /*
82
- * Note: RelFileNodeEquals and RelFileNodeBackendEquals compare relNode first
83
- * since that is most likely to be different in two unequal RelFileNodes. It
84
- * is probably redundant to compare spcNode if the other fields are found equal,
85
- * but do it anyway to be sure. Likewise for checking the backend ID in
86
- * RelFileNodeBackendEquals.
87
- */
88
- #define RelFileNodeEquals(node1, node2) \
89
- ((node1).relNode == (node2).relNode && \
90
- (node1).dbNode == (node2).dbNode && \
91
- (node1).spcNode == (node2).spcNode)
92
-
93
- #define RelFileNodeBackendEquals(node1, node2) \
94
- ((node1).node.relNode == (node2).node.relNode && \
95
- (node1).node.dbNode == (node2).node.dbNode && \
96
- (node1).backend == (node2).backend && \
97
- (node1).node.spcNode == (node2).node.spcNode)
98
-
99
- #endif /* RELFILENODE_H */
@@ -1,20 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * dynahash.h
4
- * POSTGRES dynahash.h file definitions
5
- *
6
- *
7
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
8
- * Portions Copyright (c) 1994, Regents of the University of California
9
- *
10
- * IDENTIFICATION
11
- * src/include/utils/dynahash.h
12
- *
13
- *-------------------------------------------------------------------------
14
- */
15
- #ifndef DYNAHASH_H
16
- #define DYNAHASH_H
17
-
18
- extern int my_log2(long num);
19
-
20
- #endif /* DYNAHASH_H */
@@ -1,29 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * pg_lsn.h
4
- * Declarations for operations on log sequence numbers (LSNs) of
5
- * PostgreSQL.
6
- *
7
- *
8
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
9
- * Portions Copyright (c) 1994, Regents of the University of California
10
- *
11
- * src/include/utils/pg_lsn.h
12
- *
13
- *-------------------------------------------------------------------------
14
- */
15
- #ifndef PG_LSN_H
16
- #define PG_LSN_H
17
-
18
- #include "access/xlogdefs.h"
19
- #include "fmgr.h"
20
-
21
- #define DatumGetLSN(X) ((XLogRecPtr) DatumGetInt64(X))
22
- #define LSNGetDatum(X) (Int64GetDatum((int64) (X)))
23
-
24
- #define PG_GETARG_LSN(n) DatumGetLSN(PG_GETARG_DATUM(n))
25
- #define PG_RETURN_LSN(x) return LSNGetDatum(x)
26
-
27
- extern XLogRecPtr pg_lsn_in_internal(const char *str, bool *have_error);
28
-
29
- #endif /* PG_LSN_H */
@@ -1,56 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * pidfile.h
4
- * Declarations describing the data directory lock file (postmaster.pid)
5
- *
6
- * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7
- * Portions Copyright (c) 1994, Regents of the University of California
8
- *
9
- * src/include/utils/pidfile.h
10
- *
11
- *-------------------------------------------------------------------------
12
- */
13
- #ifndef UTILS_PIDFILE_H
14
- #define UTILS_PIDFILE_H
15
-
16
- /*
17
- * As of Postgres 10, the contents of the data-directory lock file are:
18
- *
19
- * line #
20
- * 1 postmaster PID (or negative of a standalone backend's PID)
21
- * 2 data directory path
22
- * 3 postmaster start timestamp (time_t representation)
23
- * 4 port number
24
- * 5 first Unix socket directory path (empty if none)
25
- * 6 first listen_address (IP address or "*"; empty if no TCP port)
26
- * 7 shared memory key (empty on Windows)
27
- * 8 postmaster status (see values below)
28
- *
29
- * Lines 6 and up are added via AddToDataDirLockFile() after initial file
30
- * creation; also, line 5 is initially empty and is changed after the first
31
- * Unix socket is opened. Onlookers should not assume that lines 4 and up
32
- * are filled in any particular order.
33
- *
34
- * Socket lock file(s), if used, have the same contents as lines 1-5, with
35
- * line 5 being their own directory.
36
- */
37
- #define LOCK_FILE_LINE_PID 1
38
- #define LOCK_FILE_LINE_DATA_DIR 2
39
- #define LOCK_FILE_LINE_START_TIME 3
40
- #define LOCK_FILE_LINE_PORT 4
41
- #define LOCK_FILE_LINE_SOCKET_DIR 5
42
- #define LOCK_FILE_LINE_LISTEN_ADDR 6
43
- #define LOCK_FILE_LINE_SHMEM_KEY 7
44
- #define LOCK_FILE_LINE_PM_STATUS 8
45
-
46
- /*
47
- * The PM_STATUS line may contain one of these values. All these strings
48
- * must be the same length, per comments for AddToDataDirLockFile().
49
- * We pad with spaces as needed to make that true.
50
- */
51
- #define PM_STATUS_STARTING "starting" /* still starting up */
52
- #define PM_STATUS_STOPPING "stopping" /* in shutdown sequence */
53
- #define PM_STATUS_READY "ready " /* ready for connections */
54
- #define PM_STATUS_STANDBY "standby " /* up, won't accept connections */
55
-
56
- #endif /* UTILS_PIDFILE_H */
@@ -1,25 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * ps_status.h
4
- *
5
- * Declarations for backend/utils/misc/ps_status.c
6
- *
7
- * src/include/utils/ps_status.h
8
- *
9
- *-------------------------------------------------------------------------
10
- */
11
-
12
- #ifndef PS_STATUS_H
13
- #define PS_STATUS_H
14
-
15
- extern PGDLLIMPORT bool update_process_title;
16
-
17
- extern char **save_ps_display_args(int argc, char **argv);
18
-
19
- extern void init_ps_display(const char *fixed_part);
20
-
21
- extern void set_ps_display(const char *activity);
22
-
23
- extern const char *get_ps_display(int *displen);
24
-
25
- #endif /* PS_STATUS_H */
@@ -1,50 +0,0 @@
1
- /*-------------------------------------------------------------------------
2
- *
3
- * rls.h
4
- * Header file for Row Level Security (RLS) utility commands to be used
5
- * with the rowsecurity feature.
6
- *
7
- * Copyright (c) 2007-2022, PostgreSQL Global Development Group
8
- *
9
- * src/include/utils/rls.h
10
- *
11
- *-------------------------------------------------------------------------
12
- */
13
- #ifndef RLS_H
14
- #define RLS_H
15
-
16
- /* GUC variable */
17
- extern PGDLLIMPORT bool row_security;
18
-
19
- /*
20
- * Used by callers of check_enable_rls.
21
- *
22
- * RLS could be completely disabled on the tables involved in the query,
23
- * which is the simple case, or it may depend on the current environment
24
- * (the role which is running the query or the value of the row_security
25
- * GUC), or it might be simply enabled as usual.
26
- *
27
- * If RLS isn't on the table involved then RLS_NONE is returned to indicate
28
- * that we don't need to worry about invalidating the query plan for RLS
29
- * reasons. If RLS is on the table, but we are bypassing it for now, then
30
- * we return RLS_NONE_ENV to indicate that, if the environment changes,
31
- * we need to invalidate and replan. Finally, if RLS should be turned on
32
- * for the query, then we return RLS_ENABLED, which means we also need to
33
- * invalidate if the environment changes.
34
- *
35
- * Note that RLS_ENABLED will also be returned if noError is true
36
- * (indicating that the caller simply want to know if RLS should be applied
37
- * for this user but doesn't want an error thrown if it is; this is used
38
- * by other error cases where we're just trying to decide if data from the
39
- * table should be passed back to the user or not).
40
- */
41
- enum CheckEnableRlsResult
42
- {
43
- RLS_NONE,
44
- RLS_NONE_ENV,
45
- RLS_ENABLED
46
- };
47
-
48
- extern int check_enable_rls(Oid relid, Oid checkAsUser, bool noError);
49
-
50
- #endif /* RLS_H */