]> granicus.if.org Git - postgresql/commit
Fix up LIMIT/OFFSET planning so that we cope with non-constant LIMIT
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 18 Aug 2005 17:51:12 +0000 (17:51 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 18 Aug 2005 17:51:12 +0000 (17:51 +0000)
commitdfdf07aab109fd883877fd11819ac2e2981093d8
treeedc7e57401a1a947a159f2c5b6f5b3dd7b86c203
parent96f63aebc8af9237ee6ea1764c4efba1ea6c4571
Fix up LIMIT/OFFSET planning so that we cope with non-constant LIMIT
or OFFSET clauses by using estimate_expression_value().  The main advantage
of this is that if the expression is a Param and we have a value for the
Param, we'll use that value rather than defaulting.  Also, fix some
thinkos in the logic for combining LIMIT/OFFSET with an externally
supplied tuple fraction (this covers cases like EXISTS(...LIMIT...)).
And make sure the results of all this are shown by EXPLAIN.  Per a
gripe from Merlin Moncure.
src/backend/optimizer/plan/createplan.c
src/backend/optimizer/plan/planagg.c
src/backend/optimizer/plan/planner.c
src/include/optimizer/planmain.h