Added to backend/optimizer/plan/README.
>
> This is some implementation notes and opened issues...
>
> First, implementation uses new type of parameters - PARAM_EXEC - to deal
> with correlation Vars. When query_planner() is called, it first tries to
> replace all upper queries Var referenced in current query with Param of
> this type. Some global variables are used to keep mapping of Vars to
> Params and Params to Vars.
>
> After this, all current query' SubLinks are processed: for each SubLink
> found in query' qual union_planner() (old planner() function) will be
> called to plan corresponding subselect (union_planner() calls
> query_planner() for "simple" query and supports UNIONs). After subselect
> are planned, optimizer knows about is this correlated, un-correlated or
> _undirect_ correlated (references some grand-parent Vars but no parent
> ones: uncorrelated from the parent' point of view) query.
>
> For uncorrelated and undirect correlated subqueries of EXPRession or
--
Bruce Momjian | 830 Blythe Avenue
maillist@candle.pha.pa.us | Drexel Hill, Pennsylvania 19026
+ If your life is a hard drive, | (610) 353-9879(w)
+ Christ can be your backup. | (610) 853-3000(h)