OSDN Git Service

Extend CTE patch to support recursive UNION (ie, without ALL). The
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 7 Oct 2008 19:27:04 +0000 (19:27 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 7 Oct 2008 19:27:04 +0000 (19:27 +0000)
commit0d115dde82bf368ae0f9755113bd8fd53ac0b64b
treea6a1b7b4cfcf1b8ecd49ec280898fc678efdd67d
parent059349be0c7fb2bfc1076d70c8307f5e31d8ff59
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.
13 files changed:
doc/src/sgml/queries.sgml
doc/src/sgml/ref/select.sgml
src/backend/executor/nodeRecursiveunion.c
src/backend/nodes/copyfuncs.c
src/backend/nodes/outfuncs.c
src/backend/optimizer/plan/createplan.c
src/backend/optimizer/prep/prepunion.c
src/backend/parser/parse_cte.c
src/include/nodes/execnodes.h
src/include/nodes/plannodes.h
src/include/optimizer/planmain.h
src/test/regress/expected/with.out
src/test/regress/sql/with.sql