]> granicus.if.org Git - postgresql/commit
Fix an oversight I made in a cleanup patch over a year ago:
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 1 Apr 2008 00:48:33 +0000 (00:48 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 1 Apr 2008 00:48:33 +0000 (00:48 +0000)
commit6b73d7e5676298fe7891014adc56a0a32c807117
tree698fa8db400ab8082d35826c9861fa6b711feb57
parentd344115519a5c88bfa8bf8551258f4eaaa1185be
Fix an oversight I made in a cleanup patch over a year ago:
eval_const_expressions needs to be passed the PlannerInfo ("root") structure,
because in some cases we want it to substitute values for Param nodes.
(So "constant" is not so constant as all that ...)  This mistake partially
disabled optimization of unnamed extended-Query statements in 8.3: in
particular the LIKE-to-indexscan optimization would never be applied if the
LIKE pattern was passed as a parameter, and constraint exclusion depending
on a parameter value didn't work either.
src/backend/optimizer/path/allpaths.c
src/backend/optimizer/plan/initsplan.c
src/backend/optimizer/plan/planner.c
src/backend/optimizer/util/clauses.c
src/backend/optimizer/util/plancat.c
src/backend/utils/cache/relcache.c
src/include/optimizer/clauses.h
src/include/optimizer/plancat.h