Arrange to "inline" SQL functions that appear in a query's FROM clause,
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 18 Mar 2008 22:04:14 +0000 (22:04 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 18 Mar 2008 22:04:14 +0000 (22:04 +0000)
commit8bf2ec794b0d9179e307458f86db774c98990d47
tree90d7f86819803bc9cd2df0658b03a785600d1ef8
parent987ecb2c4cbc29f49046380b36b4846b2b70e51f
Arrange to "inline" SQL functions that appear in a query's FROM clause,
are declared to return set, and consist of just a single SELECT.  We
can replace the FROM-item with a sub-SELECT and then optimize much as
if we were dealing with a view.  Patch from Richard Rowell, cleaned up
by me.
src/backend/catalog/pg_proc.c
src/backend/executor/functions.c
src/backend/optimizer/plan/planner.c
src/backend/optimizer/prep/prepjointree.c
src/backend/optimizer/util/clauses.c
src/include/executor/functions.h
src/include/optimizer/clauses.h
src/include/optimizer/prep.h