diff options
author | Michael Paquier <michael@paquier.xyz> | 2023-02-07 09:03:54 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2023-02-07 09:03:54 +0900 |
commit | 9ba37b2cb6a174b37fc51d0649ef73e56eae27fc (patch) | |
tree | 8da54ff6c6e95f26dd029be745308a3625c310c3 /src/include/nodes/parsenodes.h | |
parent | 209f0f0e8516dfb382afdd2375c8b84c912dc420 (diff) | |
download | postgresql-9ba37b2cb6a174b37fc51d0649ef73e56eae27fc.tar.gz postgresql-9ba37b2cb6a174b37fc51d0649ef73e56eae27fc.zip |
Include values of A_Const nodes in query jumbling
Like the implementation for node copy, write and read, this node
requires a custom implementation so as the query jumbling is able to
consider the correct value assigned to it, depending on its type (int,
float, bool, string, bitstring).
Based on a dump of pg_stat_statements from the regression database, this
would confuse the query jumbling of the following queries:
- SET.
- COPY TO with SELECT queries.
- START TRANSACTION with different isolation levels.
- ALTER TABLE with default expressions.
- CREATE TABLE with partition bounds.
Note that there may be a long-term argument in tracking the location of
such nodes so as query strings holding such nodes could be normalized,
but this is left as a separate discussion.
Oversight in 3db72eb.
Discussion: https://postgr.es/m/Y9+HuYslMAP6yyPb@paquier.xyz
Diffstat (limited to 'src/include/nodes/parsenodes.h')
-rw-r--r-- | src/include/nodes/parsenodes.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h index 3d67787e7af..855da99ec02 100644 --- a/src/include/nodes/parsenodes.h +++ b/src/include/nodes/parsenodes.h @@ -355,7 +355,7 @@ union ValUnion typedef struct A_Const { - pg_node_attr(custom_copy_equal, custom_read_write) + pg_node_attr(custom_copy_equal, custom_read_write, custom_query_jumble) NodeTag type; union ValUnion val; |