Обсуждение: pgsql: Fix an old problem in decompilation of CASE constructs: the

Поиск
Список
Период
Сортировка

pgsql: Fix an old problem in decompilation of CASE constructs: the

От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
Fix an old problem in decompilation of CASE constructs: the ruleutils.c code
looks for a CaseTestExpr to figure out what the parser did, but it failed to
consider the possibility that an implicit coercion might be inserted above
the CaseTestExpr.  This could result in an Assert failure in some cases
(but correct results if Asserts weren't enabled), or an "unexpected CASE WHEN
clause" error in other cases.  Per report from Alan Li.

Back-patch to 8.1; problem doesn't exist before that because CASE was
implemented differently.

Tags:
----
REL8_3_STABLE

Modified Files:
--------------
    pgsql/src/backend/utils/adt:
        ruleutils.c (r1.269.2.2 -> r1.269.2.3)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c?r1=1.269.2.2&r2=1.269.2.3)