pgsql: Ignore IntoClause.viewQuery in query jumbling

Поиск
Список
Период
Сортировка
От Michael Paquier
Тема pgsql: Ignore IntoClause.viewQuery in query jumbling
Дата
Msg-id E1pZjkz-002RAx-97@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Ignore IntoClause.viewQuery in query jumbling

IntoClause.viewQuery is a copy of the parsed-but-not-rewritten SELECT
clause copied to IntoClause when transforming CreateTableAsStmt for a
materialized view.  Including a second copy of the SELECT Query into the
query jumbling was leading to an incorrect numbering of the Const node
locations, as these would be counted twice instead of once.

This becomes visible once the query normalization is applied to CREATE
MATERIALIZED VIEW in pg_stat_statements in the shape of a query string
using only odd numbers for the normalized constants, (regression tests
added in pg_stat_statements as of de2aca2 would show the difference).
Including the original Query from CreateTableAsStmt is enough for the
query jumbling.

Reviewed-by: Bertrand Drouvot
Discussion: https://postgr.es/m/Y+MRdEq9W9XVa2AB@paquier.xyz

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/d69cd3a2e29c68a3fdfd4e97167f9a7c6ad29e80

Modified Files
--------------
src/include/nodes/primnodes.h | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Michael Paquier
Дата:
Сообщение: pgsql: Improve readability of code PROCESS_MAIN in vacuum_rel()
Следующее
От: Andres Freund
Дата:
Сообщение: pgsql: meson: don't require 'touch' binary, make use of 'cp' optional