Skip site navigation (1) Skip section navigation (2)

pgsql: Rework join-removal logic as per recent discussion.

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Rework join-removal logic as per recent discussion.
Date: 2010-03-28 22:59:34
Message-ID: 20100328225934.820667541D0@cvs.postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
Log Message:
-----------
Rework join-removal logic as per recent discussion.  In particular this
fixes things so that it works for cases where nested removals are possible.
The overhead of the optimization should be significantly less, as well.

Modified Files:
--------------
    pgsql/src/backend/nodes:
        outfuncs.c (r1.383 -> r1.384)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.383&r2=1.384)
    pgsql/src/backend/optimizer:
        README (r1.52 -> r1.53)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/README?r1=1.52&r2=1.53)
    pgsql/src/backend/optimizer/path:
        allpaths.c (r1.193 -> r1.194)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/allpaths.c?r1=1.193&r2=1.194)
        joinpath.c (r1.131 -> r1.132)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/joinpath.c?r1=1.131&r2=1.132)
    pgsql/src/backend/optimizer/plan:
        Makefile (r1.15 -> r1.16)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/Makefile?r1=1.15&r2=1.16)
        createplan.c (r1.273 -> r1.274)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/createplan.c?r1=1.273&r2=1.274)
        planmain.c (r1.117 -> r1.118)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/planmain.c?r1=1.117&r2=1.118)
    pgsql/src/backend/optimizer/util:
        pathnode.c (r1.157 -> r1.158)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/pathnode.c?r1=1.157&r2=1.158)
        placeholder.c (r1.6 -> r1.7)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/placeholder.c?r1=1.6&r2=1.7)
    pgsql/src/include/nodes:
        nodes.h (r1.233 -> r1.234)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/nodes.h?r1=1.233&r2=1.234)
        relation.h (r1.184 -> r1.185)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/relation.h?r1=1.184&r2=1.185)
    pgsql/src/include/optimizer:
        pathnode.h (r1.83 -> r1.84)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/pathnode.h?r1=1.83&r2=1.84)
        placeholder.h (r1.4 -> r1.5)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/placeholder.h?r1=1.4&r2=1.5)
        planmain.h (r1.126 -> r1.127)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/planmain.h?r1=1.126&r2=1.127)
    pgsql/src/test/regress/expected:
        join.out (r1.44 -> r1.45)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/join.out?r1=1.44&r2=1.45)
    pgsql/src/test/regress/sql:
        join.sql (r1.33 -> r1.34)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/join.sql?r1=1.33&r2=1.34)

Added Files:
-----------
    pgsql/src/backend/optimizer/plan:
        analyzejoins.c (r1.1)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/analyzejoins.c?rev=1.1&content-type=text/x-cvsweb-markup)

pgsql-committers by date

Next:From: User ItagakiDate: 2010-03-29 03:51:56
Subject: pgstatsinfo - pg_statsinfo: Bugfixes.
Previous:From: Simon RiggsDate: 2010-03-28 09:27:02
Subject: pgsql: Derive latestRemovedXid for btree deletes by reading heap pages.

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group