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

pgsql: Make some adjustments to reduce platform dependencies in plan

From: tgl(at)svr1(dot)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Make some adjustments to reduce platform dependencies in plan
Date: 2004-12-02 01:34:18
Message-ID: 20041202013418.4D84F3A5623@svr1.postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
Log Message:
-----------
Make some adjustments to reduce platform dependencies in plan selection.
In particular, there was a mathematical tie between the two possible
nestloop-with-materialized-inner-scan plans for a join (ie, we computed
the same cost with either input on the inside), resulting in a roundoff
error driven choice, if the relations were both small enough to fit in
sort_mem.  Add a small cost factor to ensure we prefer materializing the
smaller input.  This changes several regression test plans, but with any
luck we will now have more stability across platforms.

Modified Files:
--------------
    pgsql/src/backend/optimizer/path:
        costsize.c (r1.135 -> r1.136)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/costsize.c.diff?r1=1.135&r2=1.136)
    pgsql/src/backend/optimizer/util:
        plancat.c (r1.98 -> r1.99)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/plancat.c.diff?r1=1.98&r2=1.99)
    pgsql/src/test/regress/expected:
        geometry.out (r1.19 -> r1.20)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/geometry.out.diff?r1=1.19&r2=1.20)
        geometry_1.out (r1.4 -> r1.5)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/geometry_1.out.diff?r1=1.4&r2=1.5)
        geometry_2.out (r1.1 -> r1.2)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/geometry_2.out.diff?r1=1.1&r2=1.2)
        inherit.out (r1.17 -> r1.18)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/inherit.out.diff?r1=1.17&r2=1.18)
        join.out (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/join.out.diff?r1=1.20&r2=1.21)
    pgsql/src/test/regress/sql:
        inherit.sql (r1.7 -> r1.8)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/inherit.sql.diff?r1=1.7&r2=1.8)
        join.sql (r1.13 -> r1.14)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/join.sql.diff?r1=1.13&r2=1.14)

pgsql-committers by date

Next:From: Bruce MomjianDate: 2004-12-02 02:19:34
Subject: Re: pgsql: Remove replicaiton FAQ item.
Previous:From: Marc G. FournierDate: 2004-12-01 23:44:21
Subject: Re: pgsql: Remove replicaiton FAQ item.

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