pgsql: Propagate CTE property flags when copying a CTE list into a rule

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Propagate CTE property flags when copying a CTE list into a rule
Дата
Msg-id E1l8Xwh-00035z-Iw@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Propagate CTE property flags when copying a CTE list into a rule.

rewriteRuleAction() neglected this step, although it was careful to
propagate other similar flags such as hasSubLinks or hasRowSecurity.
Omitting to transfer hasRecursive is just cosmetic at the moment,
but omitting hasModifyingCTE is a live bug, since the executor
certainly looks at that.

The proposed test case only fails back to v10, but since the executor
examines hasModifyingCTE in 9.x as well, I suspect that a test case
could be devised that fails in older branches.  Given the nearness
of the release deadline, though, I'm not going to spend time looking
for a better test.

Report and patch by Greg Nancarrow, cosmetic changes by me

Discussion: https://postgr.es/m/CAJcOf-fAdj=nDKMsRhQzndm-O13NY4dL6xGcEvdX5Xvbbi0V7g@mail.gmail.com

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/2a7664a79c1668f83a658209c10bad6ebdc34a6b

Modified Files
--------------
src/backend/rewrite/rewriteHandler.c |  6 ++++++
src/test/regress/expected/with.out   | 27 +++++++++++++++++++++++++++
src/test/regress/sql/with.sql        | 16 ++++++++++++++++
3 files changed, 49 insertions(+)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Disallow converting an inheritance child table to a view.
Следующее
От: Tatsuo Ishii
Дата:
Сообщение: pgsql: Docs: fix pg_wal_lsn_diff manual.