Remove prohibition against SubLinks in the WHERE clause of an EXISTS subquery
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 17 Aug 2008 02:19:19 +0000 (02:19 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 17 Aug 2008 02:19:19 +0000 (02:19 +0000)
that we're considering pulling up.  I hadn't wanted to think through whether
that could work during the first pass at this stuff.  However, on closer
inspection it seems to be safe enough.

src/backend/optimizer/plan/subselect.c

index e1f58100e3b57ba8c6db32ce4c5fe063b10c6c12..b861728502bf9f456cd4fb3a13f213db71d088db 100644 (file)
@@ -969,14 +969,6 @@ convert_EXISTS_sublink_to_join(PlannerInfo *root, SubLink *sublink,
        if (contain_volatile_functions(whereClause))
                return false;
 
-       /*
-        * Also disallow SubLinks within the WHERE clause.  (XXX this could
-        * probably be supported, but it would complicate the transformation
-        * below, and it doesn't seem worth worrying about in a first pass.)
-        */
-       if (contain_subplans(whereClause))
-               return false;
-
        /*
         * Prepare to pull up the sub-select into top range table.
         *