pgsql: Fix inability to reference CYCLE column from inside its CTE.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix inability to reference CYCLE column from inside its CTE.
Дата
Msg-id E1p6F7h-003vcZ-KL@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix inability to reference CYCLE column from inside its CTE.

Such references failed with "cache lookup failed for type 0"
because we didn't resolve the type of the CYCLE column until after
analyzing the CTE's query.  We can just move that processing
to before the recursive parse_sub_analyze call, though.

While here, invent a couple of local variables to make this
code less egregiously wider-than-80-columns.

Per bug #17723 from Vik Fearing.  Back-patch to v14 where
the CYCLE feature was added.

Discussion: https://postgr.es/m/17723-2c4985ff111e7bba@postgresql.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/935277b24172979e8244a5399906c358e4176b49

Modified Files
--------------
src/backend/parser/parse_cte.c     | 170 +++++++++++++++++++++----------------
src/test/regress/expected/with.out |  23 +++++
src/test/regress/sql/with.sql      |   9 ++
3 files changed, 129 insertions(+), 73 deletions(-)


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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: pg_upgrade: Make testing different transfer modes easier
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Doc: update pg_list.h header comments to include XidLists.