pgsql: Adjust constant-folding of CASE expressions so that the simple - Mailing list pgsql-committers

From tgl@svr1.postgresql.org (Tom Lane)
Subject pgsql: Adjust constant-folding of CASE expressions so that the simple
Date
Msg-id 20050202214952.929B38B9D70@svr1.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Adjust constant-folding of CASE expressions so that the simple comparison
form of CASE (eg, CASE 0 WHEN 1 THEN ...) can be constant-folded as it
was in 7.4.  Also, avoid constant-folding result expressions that are
certainly unreachable --- the former coding was a bit cavalier about this
and could generate unexpected results for all-constant CASE expressions.
Add regression test cases.  Per report from Vlad Marchenko.

Tags:
----
REL8_0_STABLE

Modified Files:
--------------
    pgsql/src/backend/optimizer/util:
        clauses.c (r1.186.4.1 -> r1.186.4.2)

(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/clauses.c.diff?r1=1.186.4.1&r2=1.186.4.2)
    pgsql/src/test/regress/expected:
        case.out (r1.8 -> r1.8.4.1)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/case.out.diff?r1=1.8&r2=1.8.4.1)
    pgsql/src/test/regress/sql:
        case.sql (r1.5 -> r1.5.4.1)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/case.sql.diff?r1=1.5&r2=1.5.4.1)

pgsql-committers by date:

Previous
From: tgl@svr1.postgresql.org (Tom Lane)
Date:
Subject: pgsql: Adjust constant-folding of CASE expressions so that the simple
Next
From: tgl@svr1.postgresql.org (Tom Lane)
Date:
Subject: pgsql: Improve performance of fmgr.c calling routines for cases with