pgsql: SQL/JSON: Improve some error messages

2024-04-17 Thread Amit Langote
SQL/JSON: Improve some error messages This improves some error messages emitted by SQL/JSON query functions by mentioning column name when available, such as when they are invoked as part of evaluating JSON_TABLE() columns. To do so, a new field column_name is added to both JsonFuncExpr and JsonE

pgsql: SQL/JSON: Miscellaneous fixes and improvements

2024-04-17 Thread Amit Langote
SQL/JSON: Miscellaneous fixes and improvements This addresses some post-commit review comments for commits 6185c973, de3600452, and 9425c596a0, with the following changes: * Fix JSON_TABLE() syntax documentation to use the term "path_expression" for JSON path expressions instead of "json_path

pgsql: SQL/JSON: Fix issues with DEFAULT .. ON ERROR / EMPTY

2024-04-17 Thread Amit Langote
SQL/JSON: Fix issues with DEFAULT .. ON ERROR / EMPTY SQL/JSON query functions allow specifying an expression to return when either of ON ERROR or ON EMPTY condition occurs when evaluating the JSON path expression. The parser (transformJsonBehavior()) checks that the specified expression is one o

pgsql: Refactoring for CommitTransactionCommand()/AbortCurrentTransacti

2024-04-17 Thread Alexander Korotkov
Refactoring for CommitTransactionCommand()/AbortCurrentTransaction() fefd9a3fed turned tail recursion of CommitTransactionCommand() and AbortCurrentTransaction() into iteration. However, it splits the handling of cases between different functions. This commit puts the handling of all the cases i

pgsql: Remove GlobalVisTestNonRemovable[Full]Horizon, not used anymore

2024-04-17 Thread Andres Freund
Remove GlobalVisTestNonRemovable[Full]Horizon, not used anymore GlobalVisTestNonRemovableHorizon() was only used for the implementation of snapshot_too_old, which was removed in f691f5b80a8. As using GlobalVisTestNonRemovableHorizon() is not particularly efficient, no new uses for it should be add

pgsql: Cleanup parallel BRIN index build code

2024-04-17 Thread Tomas Vondra
Cleanup parallel BRIN index build code Commit b43757171470 added support for parallel builds of BRIN indexes, using code similar to BTREE. But there were to be a couple unnecessary differences, particularly in how the leader waits for the workers, and merges the results. So remove these, to make t

pgsql: Stabilize test of BRIN parallel create

2024-04-17 Thread Tomas Vondra
Stabilize test of BRIN parallel create As explained in 4d916dd876, the test instability is caused by delayed cleanup of deleted rows. This commit removes the DELETE, stabilizing the test without accidentally disabling parallel builds. The intent of the delete however was to produce empty ranges,

pgsql: Revert "Stabilize test of BRIN parallel create"

2024-04-17 Thread Tomas Vondra
Revert "Stabilize test of BRIN parallel create" This reverts commit 4d916dd876c3. The goal of that commit was to stabilize a test of parallel BRIN build, but using a TEMPORARY table disables parallel index builds on that table, making the test useless. Discussion: https://postgr.es/m/95d9cd43-5a

pgsql: meson: Add some missing LLVM function checks

2024-04-17 Thread Peter Eisentraut
meson: Add some missing LLVM function checks The checks for HAVE_DECL_LLVMCREATEGDBREGISTRATIONLISTENER and HAVE_DECL_LLVMCREATEPERFJITEVENTLISTENER are in configure but are missing on the meson side. This adds those. Reported-by: Heikki Linnakangas Discussion: https://www.postgresql.org/mes

pgsql: Remove dead code

2024-04-17 Thread Peter Eisentraut
Remove dead code The configure check for HAVE_DECL_LLVMORCREGISTERPERF was removed by e9a9843e138, but some code guarded by it was left. (That commit removed the "register" calls but left the "unregister" calls.) That code cannot be reached anymore, so remove it. Reported-by: Heikki Linnakangas

pgsql: Add missing source file to libpq/nls.mk

2024-04-17 Thread Peter Eisentraut
Add missing source file to libpq/nls.mk Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/2e75492b3c33beaf226981b796d81b6127544fea Modified Files -- src/interfaces/libpq/nls.mk | 1 + 1 file changed, 1 insertion(+)

pgsql: doc: Fix COPY ON_ERROR option syntax synopsis.

2024-04-17 Thread Masahiko Sawada
doc: Fix COPY ON_ERROR option syntax synopsis. ON_ERROR option values don't require quotations, which was inconsistent with the syntax synopsis in the documentation. Oversight in b725b7eec43. Author: Atsushi Torikoshi Reviewed-by: Masahiko Sawada Discussion: https://postgr.es/m/CAD21AoC%3Dn4xR3