pgsql: Extend CTE patch to support recursive UNION (ie, without ALL). - Mailing list pgsql-committers

From tgl@postgresql.org (Tom Lane)
Subject pgsql: Extend CTE patch to support recursive UNION (ie, without ALL).
Date
Msg-id 20081007192704.DD4ED7545A4@cvs.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Extend CTE patch to support recursive UNION (ie, without ALL).  The
implementation uses an in-memory hash table, so it will poop out for very
large recursive results ... but the performance characteristics of a
sort-based implementation would be pretty unpleasant too.

Modified Files:
--------------
    pgsql/doc/src/sgml:
        queries.sgml (r1.46 -> r1.47)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/queries.sgml?r1=1.46&r2=1.47)
    pgsql/doc/src/sgml/ref:
        select.sgml (r1.105 -> r1.106)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/select.sgml?r1=1.105&r2=1.106)
    pgsql/src/backend/executor:
        nodeRecursiveunion.c (r1.1 -> r1.2)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeRecursiveunion.c?r1=1.1&r2=1.2)
    pgsql/src/backend/nodes:
        copyfuncs.c (r1.407 -> r1.408)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c?r1=1.407&r2=1.408)
        outfuncs.c (r1.341 -> r1.342)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.341&r2=1.342)
    pgsql/src/backend/optimizer/plan:
        createplan.c (r1.249 -> r1.250)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/createplan.c?r1=1.249&r2=1.250)
    pgsql/src/backend/optimizer/prep:
        prepunion.c (r1.157 -> r1.158)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/prep/prepunion.c?r1=1.157&r2=1.158)
    pgsql/src/backend/parser:
        parse_cte.c (r2.2 -> r2.3)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_cte.c?r1=2.2&r2=2.3)
    pgsql/src/include/nodes:
        execnodes.h (r1.189 -> r1.190)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/execnodes.h?r1=1.189&r2=1.190)
        plannodes.h (r1.104 -> r1.105)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/plannodes.h?r1=1.104&r2=1.105)
    pgsql/src/include/optimizer:
        planmain.h (r1.113 -> r1.114)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/planmain.h?r1=1.113&r2=1.114)
    pgsql/src/test/regress/expected:
        with.out (r1.3 -> r1.4)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/with.out?r1=1.3&r2=1.4)
    pgsql/src/test/regress/sql:
        with.sql (r1.3 -> r1.4)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/with.sql?r1=1.3&r2=1.4)

pgsql-committers by date:

Previous
From: meskes@postgresql.org (Michael Meskes)
Date:
Subject: pgsql: Synced parser.
Next
From: tgl@postgresql.org (Tom Lane)
Date:
Subject: pgsql: Improve some of the comments in fsmpage.c.