Include values of A_Const nodes in query jumbling

Michael Paquier <michael@paquier.xyz>

Commit: 9ba37b2cb6a174b37fc51d0649ef73e56eae27fc
Author: Michael Paquier <michael@paquier.xyz>
Date: 2023-02-07T00:03:54Z
Releases: 16.0
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

Files

Discussion