pgsql: Improve planning of Materialize nodes inserted atop the inner

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Improve planning of Materialize nodes inserted atop the inner
Date: 2009-11-15 02:45:35
Message-ID: 20091115024535.ADFFF753FB7@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Improve planning of Materialize nodes inserted atop the inner input of a
mergejoin to shield it from doing mark/restore and refetches. Put an explicit
flag in MergePath so we can centralize the logic that knows about this,
and add costing logic that considers using Materialize even when it's not
forced by the previously-existing considerations. This is in response to
a discussion back in August that suggested that materializing an inner
indexscan can be helpful when the refetch percentage is high enough.

Modified Files:
--------------
pgsql/src/backend/nodes:
outfuncs.c (r1.371 -> r1.372)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.371&r2=1.372)
pgsql/src/backend/optimizer/path:
allpaths.c (r1.188 -> r1.189)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/allpaths.c?r1=1.188&r2=1.189)
costsize.c (r1.211 -> r1.212)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/costsize.c?r1=1.211&r2=1.212)
pgsql/src/backend/optimizer/plan:
createplan.c (r1.266 -> r1.267)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/createplan.c?r1=1.266&r2=1.267)
pgsql/src/backend/optimizer/util:
pathnode.c (r1.154 -> r1.155)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/pathnode.c?r1=1.154&r2=1.155)
pgsql/src/include/nodes:
relation.h (r1.178 -> r1.179)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/relation.h?r1=1.178&r2=1.179)
pgsql/src/include/optimizer:
cost.h (r1.98 -> r1.99)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/cost.h?r1=1.98&r2=1.99)

Browse pgsql-committers by date

  From Date Subject
Next Message User Hinoue 2009-11-15 05:29:03 psqlodbc - psqlodbc: 1) Added --with(out)-libpq[=DIR} option to
Previous Message Tom Lane 2009-11-14 18:24:32 pgsql: Make unaccent's install/uninstall scripts look more like all the